touch_nmi_watchdog is attempting to tickle _all_ CPUs softlockup watchdogs.
It is supposed to only touch the current CPU, just like it only touches
the NMI watchdog on the current CPU.
Andi,
(sorry for the cut-and-paste).
touch_nmi_watchdogs sets EACH CPUs alert_counter to 0.
void touch_nmi_watchdog (void)
{
if (nmi_watchdog > 0) {
unsigned cpu;
/*
* Just reset the alert counters, (other CPUs might be
* spinning on locks we hold):
*/
for_each_present_cpu (cpu)
alert_counter[cpu] = 0;
}
/*
* Tickle the softlockup detector too:
*/
touch_softlockup_watchdog();
}
The call to touch_softlockup_watchdog here is incorrect -- it is only
touching the current CPU's softlockup.
P.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/