perf_events, x86: Remove spurious counter reset from x86_pmu_enable()
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Wed, 27 Jan 2010 22:07:49 +0000 (23:07 +0100)
committerIngo Molnar <mingo@elte.hu>
Fri, 29 Jan 2010 08:01:49 +0000 (09:01 +0100)
At enable time the counter might still have a ->idx pointing to
a previously occupied location that might now be taken by
another event. Resetting the counter at that location with data
from this event will destroy the other counter's count.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
LKML-Reference: <20100127221122.261477183@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/cpu/perf_event.c

index 3fac0bfc2deee664fdba7e14b65367d6632194ee..518eb3e395778a3d0009f256c0b663a8816e31f0 100644 (file)
@@ -1762,9 +1762,6 @@ static int x86_pmu_enable(struct perf_event *event)
        cpuc->n_events = n;
        cpuc->n_added  = n - n0;
 
-       if (hwc->idx != -1)
-               x86_perf_event_set_period(event, hwc, hwc->idx);
-
        return 0;
 }