From 6a0e9455da0adef2f7c971d86c54f5768a621297 Mon Sep 17 00:00:00 2001 From: Andrew Morton Date: Thu, 3 May 2012 15:44:14 +1000 Subject: [PATCH] nmi-watchdog-fix-for-lockup-detector-breakage-on-resume-fix fiddle with code comment Cc: "Rafael J. Wysocki" Cc: Don Zickus Cc: Ingo Molnar Cc: Mandeep Singh Baines Cc: Peter Zijlstra Cc: Sameer Nanda Signed-off-by: Andrew Morton --- kernel/watchdog.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/kernel/watchdog.c b/kernel/watchdog.c index 85b8f3233f30..de8c56c8b763 100644 --- a/kernel/watchdog.c +++ b/kernel/watchdog.c @@ -597,20 +597,17 @@ static struct notifier_block __cpuinitdata cpu_nfb = { .notifier_call = cpu_callback }; +/* + * On entry to suspend we force an offline->online transition on the boot CPU so + * that PMU state is available to that CPU when it comes back online after + * resume. This information is required for restarting the NMI watchdog. + */ void lockup_detector_bootcpu_resume(void) { void *cpu = (void *)(long)smp_processor_id(); - /* - * On the suspend/resume path the boot CPU does not go though the - * offline->online transition. This breaks the NMI detector post - * resume. Force an offline->online transition for the boot CPU on - * resume. - */ cpu_callback(&cpu_nfb, CPU_DEAD, cpu); cpu_callback(&cpu_nfb, CPU_ONLINE, cpu); - - return; } void __init lockup_detector_init(void) -- 2.39.5