[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <4DAEF821.4050103@openvz.org>
Date: Wed, 20 Apr 2011 19:13:37 +0400
From: Cyrill Gorcunov <gorcunov@...nvz.org>
To: Lin Ming <ming.m.lin@...el.com>
CC: Ingo Molnar <mingo@...e.hu>, lkml <linux-kernel@...r.kernel.org>,
Don Zickus <dzickus@...hat.com>
Subject: [PATCH -tip] perf, x86: P4 PMU - Don't forget to clear cpuc->active_mask
on overflow
It's not enough to simply disable event on overflow the cpuc->active_mask
should be cleared as well otherwise counter may stall in "active" even
in real being already disabled (which potentially may lead to the situation
that user may not use this counter further).
Signed-off-by: Cyrill Gorcunov <gorcunov@...nvz.org>
---
Ming, iirc you were testing this one, but without unknown nmi fix. So
patch from Don should fix unknown nmi issue, please give this patch a
shot again if you have some time (Don's patch is here
https://lkml.org/lkml/2011/4/18/404 but I think you have it already in mailbox).
arch/x86/kernel/cpu/perf_event_p4.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux-2.6.git/arch/x86/kernel/cpu/perf_event_p4.c
=====================================================================
--- linux-2.6.git.orig/arch/x86/kernel/cpu/perf_event_p4.c
+++ linux-2.6.git/arch/x86/kernel/cpu/perf_event_p4.c
@@ -946,7 +946,7 @@ static int p4_pmu_handle_irq(struct pt_r
if (!x86_perf_event_set_period(event))
continue;
if (perf_event_overflow(event, 1, &data, regs))
- p4_pmu_disable_event(event);
+ x86_pmu_stop(event, 0);
}
if (handled) {
--
Cyrill
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists