aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLin Ming <[email protected]>2010-08-25 21:06:32 +0000
committerIngo Molnar <[email protected]>2010-08-25 15:15:33 +0200
commit8d330919927ea31fa083b5a80084dc991da813a0 (patch)
tree5c4ccce4ee5e660abfa497e842a7d356d18a674e
parent151772dbfad4dbe81721e40f9b3d588ea77bb7aa (diff)
perf, x86, Pentium4: Clear the P4_CCCR_FORCE_OVF flag
If on Pentium4 CPUs the FORCE_OVF flag is set then an NMI happens on every event, which can generate a flood of NMIs. Clear it. Reported-by: Vince Weaver <[email protected]> Signed-off-by: Lin Ming <[email protected]> Signed-off-by: Cyrill Gorcunov <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: <[email protected]> Signed-off-by: Ingo Molnar <[email protected]>
-rw-r--r--arch/x86/kernel/cpu/perf_event_p4.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/perf_event_p4.c b/arch/x86/kernel/cpu/perf_event_p4.c
index febb12cea795..7e578e9cc58b 100644
--- a/arch/x86/kernel/cpu/perf_event_p4.c
+++ b/arch/x86/kernel/cpu/perf_event_p4.c
@@ -497,6 +497,8 @@ static int p4_hw_config(struct perf_event *event)
event->hw.config |= event->attr.config &
(p4_config_pack_escr(P4_ESCR_MASK_HT) |
p4_config_pack_cccr(P4_CCCR_MASK_HT | P4_CCCR_RESERVED));
+
+ event->hw.config &= ~P4_CCCR_FORCE_OVF;
}
rc = x86_setup_perfctr(event);