Re: IO_APIC NMI Watchdog not handled by suspend/resume.

From: Zwane Mwaikambo
Date: Fri Nov 05 2004 - 11:42:47 EST


Hi Nigel

On Fri, 5 Nov 2004, Nigel Cunningham wrote:

> Tracking down SMP problems, I've found that if you boot with
> nmi_watchdog=1 (IO_APIC), the watchdog continues to run while suspend is
> doing sensitive things like restoring the original kernel. I don't know
> enough to provide a patch to disable it so thought I'd ask if someone
> could volunteer to fix this?

Use enable/disable_lapic_nmi_watchdog but first check to see whether
nmi_watchdog == NMI_IO_APIC in which case you'd then call
disable/enable_timer_nmi_watchdog. Something like;

void swsuspend_disable_nmi_watchdog(void)
{
if ((nmi_watchdog == NMI_IO_APIC) && (smp_processor_id() == 0)) {
disable_timer_nmi_watchdog();
return;
}

disable_lapic_nmi_watchdog();
}

void swsuspend_enable_nmi_watchdog(void)
{
if ((nmi_watchdog == NMI_IO_APIC) && (smp_processor_id() == 0)) {
enable_timer_nmi_watchdog();
return;
}

enable_lapic_nmi_watchdog();
}

Do note that this has to be run on all processors, holla if there is
anything else.

Thanks,
Zwane

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/