diff options
-rw-r--r-- | arch/x86_64/kernel/acpi/sleep.c | 4 | ||||
-rw-r--r-- | kernel/power/disk.c | 1 | ||||
-rw-r--r-- | kernel/power/user.c | 3 |
3 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86_64/kernel/acpi/sleep.c b/arch/x86_64/kernel/acpi/sleep.c index 23178ce6c783..e1548fbe95ae 100644 --- a/arch/x86_64/kernel/acpi/sleep.c +++ b/arch/x86_64/kernel/acpi/sleep.c | |||
@@ -66,8 +66,10 @@ static void init_low_mapping(void) | |||
66 | { | 66 | { |
67 | pgd_t *slot0 = pgd_offset(current->mm, 0UL); | 67 | pgd_t *slot0 = pgd_offset(current->mm, 0UL); |
68 | low_ptr = *slot0; | 68 | low_ptr = *slot0; |
69 | /* FIXME: We're playing with the current task's page tables here, which | ||
70 | * is potentially dangerous on SMP systems. | ||
71 | */ | ||
69 | set_pgd(slot0, *pgd_offset(current->mm, PAGE_OFFSET)); | 72 | set_pgd(slot0, *pgd_offset(current->mm, PAGE_OFFSET)); |
70 | WARN_ON(num_online_cpus() != 1); | ||
71 | local_flush_tlb(); | 73 | local_flush_tlb(); |
72 | } | 74 | } |
73 | 75 | ||
diff --git a/kernel/power/disk.c b/kernel/power/disk.c index dee0ff40befd..aec19b063e3f 100644 --- a/kernel/power/disk.c +++ b/kernel/power/disk.c | |||
@@ -58,7 +58,6 @@ static inline int platform_prepare(void) | |||
58 | 58 | ||
59 | static void power_down(suspend_disk_method_t mode) | 59 | static void power_down(suspend_disk_method_t mode) |
60 | { | 60 | { |
61 | disable_nonboot_cpus(); | ||
62 | switch(mode) { | 61 | switch(mode) { |
63 | case PM_DISK_PLATFORM: | 62 | case PM_DISK_PLATFORM: |
64 | if (pm_ops && pm_ops->enter) { | 63 | if (pm_ops && pm_ops->enter) { |
diff --git a/kernel/power/user.c b/kernel/power/user.c index bf211fee1222..7cf6713b2325 100644 --- a/kernel/power/user.c +++ b/kernel/power/user.c | |||
@@ -401,10 +401,9 @@ static int snapshot_ioctl(struct inode *inode, struct file *filp, | |||
401 | 401 | ||
402 | case PMOPS_ENTER: | 402 | case PMOPS_ENTER: |
403 | if (data->platform_suspend) { | 403 | if (data->platform_suspend) { |
404 | disable_nonboot_cpus(); | ||
405 | kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK); | 404 | kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK); |
406 | error = pm_ops->enter(PM_SUSPEND_DISK); | 405 | error = pm_ops->enter(PM_SUSPEND_DISK); |
407 | enable_nonboot_cpus(); | 406 | error = 0; |
408 | } | 407 | } |
409 | break; | 408 | break; |
410 | 409 | ||