perf_events, x86: Remove spurious counter reset from x86_pmu_enable()
Peter Zijlstra [Wed, 27 Jan 2010 22:07:49 +0000 (23:07 +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 3fac0bf..518eb3e 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;
 }