Commit c6db67cda735d8ace5f19c3831240e1408679790

Authored by Peter Zijlstra
Committed by Ingo Molnar
1 parent ede1b42907

watchdog: Don't throttle the watchdog

Stephane reported that when the machine locks up, the regular ticks,
which are responsible to resetting the throttle count, stop too.

Hence the NMI watchdog can end up being throttled before it reports on
the locked up state, and we end up being sad..

Cure this by having the watchdog overflow reset its own throttle count.

Reported-by: Stephane Eranian <eranian@google.com>
Tested-by: Stephane Eranian <eranian@google.com>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1282215916.1926.4696.camel@laptop>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

Showing 1 changed file with 3 additions and 0 deletions Side-by-side Diff

... ... @@ -206,6 +206,9 @@
206 206 struct perf_sample_data *data,
207 207 struct pt_regs *regs)
208 208 {
  209 + /* Ensure the watchdog never gets throttled */
  210 + event->hw.interrupts = 0;
  211 +
209 212 if (__get_cpu_var(watchdog_nmi_touch) == true) {
210 213 __get_cpu_var(watchdog_nmi_touch) = false;
211 214 return;