From: "Siddha, Suresh B" Don't modify the cpus_allowed of the task initiating the suspend. _cpu_down() already makes sure that the task doing the suspend doesn't run on dying cpu. Signed-off-by: Suresh Siddha Cc: Venkatesh Pallipadi Cc: Pavel Machek Cc: "Rafael J. Wysocki" Cc: Nigel Cunningham Signed-off-by: Andrew Morton --- kernel/cpu.c | 6 +----- 1 files changed, 1 insertion(+), 5 deletions(-) diff -puN kernel/cpu.c~suspend-dont-change-cpus_allowed-for-task-initiating-the-suspend kernel/cpu.c --- a/kernel/cpu.c~suspend-dont-change-cpus_allowed-for-task-initiating-the-suspend +++ a/kernel/cpu.c @@ -270,11 +270,7 @@ int disable_nonboot_cpus(void) goto out; } } - error = set_cpus_allowed(current, cpumask_of_cpu(first_cpu)); - if (error) { - printk(KERN_ERR "Could not run on CPU%d\n", first_cpu); - goto out; - } + /* We take down all of the non-boot CPUs in one shot to avoid races * with the userspace trying to use the CPU hotplug at the same time */ _