aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/shutdown.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-06-12 16:09:08 +0100
committerKeir Fraser <keir.fraser@citrix.com>2008-06-12 16:09:08 +0100
commitb9d59b7d1748d75b8abdf90d0ab5aeaf614135fc (patch)
tree81d573562de41d44495a8db607202ec9adadfb1e /xen/arch/x86/shutdown.c
parentaa6bc4f3e99e9b04bfe100f69be1c3d7399ea36e (diff)
downloadxen-b9d59b7d1748d75b8abdf90d0ab5aeaf614135fc.tar.gz
xen-b9d59b7d1748d75b8abdf90d0ab5aeaf614135fc.tar.bz2
xen-b9d59b7d1748d75b8abdf90d0ab5aeaf614135fc.zip
x86: machine_halt() forcibly re-enables IRQs as it may be called from
panic() which itself may be called in an IRQ-safe critical section. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/arch/x86/shutdown.c')
-rw-r--r--xen/arch/x86/shutdown.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/xen/arch/x86/shutdown.c b/xen/arch/x86/shutdown.c
index 6b41e739eb..a65771575f 100644
--- a/xen/arch/x86/shutdown.c
+++ b/xen/arch/x86/shutdown.c
@@ -90,6 +90,7 @@ void machine_halt(void)
{
watchdog_disable();
console_start_sync();
+ local_irq_enable();
smp_call_function(__machine_halt, NULL, 1, 0);
__machine_halt(NULL);
}