All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -tip] perf, x86: P4 PMU - Don't forget to clear cpuc->active_mask on overflow
@ 2011-04-20 15:13 Cyrill Gorcunov
  2011-04-21  6:34 ` Lin Ming
  2011-04-21 12:53 ` Don Zickus
  0 siblings, 2 replies; 8+ messages in thread
From: Cyrill Gorcunov @ 2011-04-20 15:13 UTC (permalink / raw)
  To: Lin Ming; +Cc: Ingo Molnar, lkml, Don Zickus

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@openvz.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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-04-21 14:22 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-20 15:13 [PATCH -tip] perf, x86: P4 PMU - Don't forget to clear cpuc->active_mask on overflow Cyrill Gorcunov
2011-04-21  6:34 ` Lin Ming
2011-04-21 12:53 ` Don Zickus
2011-04-21 13:17   ` Ingo Molnar
2011-04-21 13:57     ` Don Zickus
2011-04-21 14:00       ` Cyrill Gorcunov
2011-04-21 14:22         ` Don Zickus
2011-04-21 13:58     ` Cyrill Gorcunov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.