]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
powerpc/watchdog: don't update the watchdog timestamp if a lockup is detected
authorNicholas Piggin <npiggin@gmail.com>
Sat, 5 May 2018 07:25:59 +0000 (17:25 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 10 May 2018 13:25:11 +0000 (23:25 +1000)
The watchdog heartbeat timestamp is updated when the local heartbeat
timer fires (or touch_nmi_watchdog() is called).

This is an interesting data point, so don't overwrite it when the
soft-NMI interrupt detects a hard lockup. That code came from a pre-
merge version to prevent hard lockup messages flood, but that's taken
care of with the stuck CPU logic now, so there is no reason to
update the heartbeat timestamp here.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/kernel/watchdog.c

index 591f7c3af4ffcdae9bb180e6ed127071d0047acc..b2d3bdff03aa5396d328de0689af2e0b5aafbb3b 100644 (file)
@@ -245,8 +245,6 @@ void soft_nmi_interrupt(struct pt_regs *regs)
 
        tb = get_tb();
        if (tb - per_cpu(wd_timer_tb, cpu) >= wd_panic_timeout_tb) {
-               per_cpu(wd_timer_tb, cpu) = tb;
-
                wd_smp_lock(&flags);
                if (cpumask_test_cpu(cpu, &wd_smp_cpus_stuck)) {
                        wd_smp_unlock(&flags);