• GOTO Masanori's avatar
    [PATCH] x86: Fix i386 nmi_watchdog that does not trigger die_nmi · b884e257
    GOTO Masanori authored
    Fix i386 nmi_watchdog that does not meet watchdog timeout condition.  It
    does not hit die_nmi when it should be triggered, because the current
    nmi_watchdog_tick in arch/i386/kernel/nmi.c never count up alert_counter
    like this:
    
    	void nmi_watchdog_tick (struct pt_regs * regs) {
    	if (last_irq_sums[cpu] == sum) {
    		alert_counter[cpu]++;		<- count up alert_counter, but
    		if (alert_counter[cpu] == 5*nmi_hz)
    			die_nmi(regs, "NMI Watchdog detected LOCKUP");
    		alert_counter[cpu] = 0;		<- reset alert_counter
    
    This patch changes it back to the previous and working version.
    
    This was found and originally written by Kohta NAKASHIMA.
    
    (akpm: also uninline write_watchdog_counter(), saving 184 byets)
    Signed-off-by: default avatarGOTO Masanori <gotom@sanori.org>
    Cc: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    b884e257
nmi.c 15 KB