aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/kernel/reboot.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2005-07-26 12:14:16 -0600
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-26 14:35:45 -0700
commit0963aba54aa26c89114dca7257acf8c938bfec8a (patch)
treeb56e11022f963134c24f906ba20c8ac4f4f9d185 /arch/x86_64/kernel/reboot.c
parent910de55c6653d76f90380c80f0b7a395f12019e3 (diff)
[PATCH] x86_64 sync machine_power_off with i386
i386 machine_power_off was disabling the local apic and all of it's users wanted to be on the boot cpu. So call machine_shutdown which places us on the boot cpu and disables the apics. This keeps us in sync and reduces the number of cases we need to worry about in the power management code. Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/x86_64/kernel/reboot.c')
-rw-r--r--arch/x86_64/kernel/reboot.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86_64/kernel/reboot.c b/arch/x86_64/kernel/reboot.c
index 3d1cc09406a..47f95687905 100644
--- a/arch/x86_64/kernel/reboot.c
+++ b/arch/x86_64/kernel/reboot.c
@@ -153,6 +153,9 @@ void machine_halt(void)
void machine_power_off(void)
{
+ if (!reboot_force) {
+ machine_shutdown();
+ }
if (pm_power_off)
pm_power_off();
}