# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
#   2004/03/13 00:02:05-05:00 len.brown@intel.com 
#   [ACPI] SMP poweroff (David Shaohua Li)
#   http://bugzilla.kernel.org/show_bug.cgi?id=1141
# 
# drivers/acpi/system.c
#   2004/03/12 23:59:21-05:00 len.brown@intel.com +3 -0
#   poweroff from CPU0 -- David Shaohua Li
# 
diff -Nru a/drivers/acpi/system.c b/drivers/acpi/system.c
--- a/drivers/acpi/system.c	Sat Mar 13 00:02:07 2004
+++ b/drivers/acpi/system.c	Sat Mar 13 00:02:07 2004
@@ -40,6 +40,7 @@
 #include <asm/acpi.h>
 #include <acpi/acpi_bus.h>
 #include <acpi/acpi_drivers.h>
+#include <linux/sched.h>
 
 #ifdef CONFIG_X86
 #ifdef CONFIG_ACPI_SLEEP
@@ -95,6 +96,8 @@
 {
 	if (unlikely(in_interrupt())) 
 		BUG();
+	/* Some SMP machines only can poweroff in boot CPU */
+	set_cpus_allowed(current, 1UL << cpu_logical_map(0));
 	acpi_enter_sleep_state_prep(ACPI_STATE_S5);
 	ACPI_DISABLE_IRQS();
 	acpi_enter_sleep_state(ACPI_STATE_S5);
