Skip to content

Commit c6db67c

Browse files
Peter ZijlstraIngo Molnar
authored andcommitted
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>
1 parent ede1b42 commit c6db67c

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

kernel/watchdog.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,9 @@ void watchdog_overflow_callback(struct perf_event *event, int nmi,
206206
struct perf_sample_data *data,
207207
struct pt_regs *regs)
208208
{
209+
/* Ensure the watchdog never gets throttled */
210+
event->hw.interrupts = 0;
211+
209212
if (__get_cpu_var(watchdog_nmi_touch) == true) {
210213
__get_cpu_var(watchdog_nmi_touch) = false;
211214
return;

0 commit comments

Comments
 (0)