From: Rafael J. Wysocki Prevent the WARN_ON() in arch/x86_64/kernel/acpi/sleep.c:init_low_mapping() from triggering by disabling nonboot CPUs before we finally enter the platform suspend. Signed-off-by: Rafael J. Wysocki Cc: Pavel Machek Signed-off-by: Andrew Morton --- kernel/power/disk.c | 1 + kernel/power/user.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff -puN kernel/power/disk.c~swsusp-disable-nonboot-cpus-before-entering-platform-suspend kernel/power/disk.c --- a/kernel/power/disk.c~swsusp-disable-nonboot-cpus-before-entering-platform-suspend +++ a/kernel/power/disk.c @@ -61,6 +61,7 @@ static void power_down(suspend_disk_meth switch(mode) { case PM_DISK_PLATFORM: if (pm_ops && pm_ops->enter) { + disable_nonboot_cpus(); kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK); pm_ops->enter(PM_SUSPEND_DISK); break; diff -puN kernel/power/user.c~swsusp-disable-nonboot-cpus-before-entering-platform-suspend kernel/power/user.c --- a/kernel/power/user.c~swsusp-disable-nonboot-cpus-before-entering-platform-suspend +++ a/kernel/power/user.c @@ -398,9 +398,9 @@ static int snapshot_ioctl(struct inode * case PMOPS_ENTER: if (data->platform_suspend) { + disable_nonboot_cpus(); kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK); error = pm_ops->enter(PM_SUSPEND_DISK); - error = 0; } break; _