aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Zijlstra <a.p.zijlstra@chello.nl>2009-05-01 06:23:17 -0400
committerIngo Molnar <mingo@elte.hu>2009-05-01 07:23:44 -0400
commit63a809a2dc53b91268dd915bbcbd425063893676 (patch)
tree5eafd0e921a7178f9e25695133863dde66f25de3
parentc33a0bc4e41ef169d6e807d8abb9502544b518e5 (diff)
perf_counter: fix nmi-watchdog interaction
When we don't have any perf-counters active, don't act like we know what the NMI is for. [ Impact: fix hard hang with nmi_watchdog=2 ] Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Paul Mackerras <paulus@samba.org> Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com> LKML-Reference: <20090501102533.109867793@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/cpu/perf_counter.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/perf_counter.c b/arch/x86/kernel/cpu/perf_counter.c
index fc06f4d32644..d4c0cc9d3263 100644
--- a/arch/x86/kernel/cpu/perf_counter.c
+++ b/arch/x86/kernel/cpu/perf_counter.c
@@ -871,6 +871,9 @@ perf_counter_nmi_handler(struct notifier_block *self,
871 struct pt_regs *regs; 871 struct pt_regs *regs;
872 int ret; 872 int ret;
873 873
874 if (!atomic_read(&num_counters))
875 return NOTIFY_DONE;
876
874 switch (cmd) { 877 switch (cmd) {
875 case DIE_NMI: 878 case DIE_NMI:
876 case DIE_NMI_IPI: 879 case DIE_NMI_IPI: