[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] Use machine_halt() where it makes sense, to halt all processors



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID be0a1f376223f23ee3e6cea3a63576ef3822f62c
# Parent  8970d080f719e81092a0ec6a50394ff34c4681b1
Use machine_halt() where it makes sense, to halt all processors
rather than just the current one.

Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>

diff -r 8970d080f719 -r be0a1f376223 xen/arch/x86/shutdown.c
--- a/xen/arch/x86/shutdown.c   Thu Apr  6 15:15:28 2006
+++ b/xen/arch/x86/shutdown.c   Thu Apr  6 15:41:53 2006
@@ -44,7 +44,7 @@
 void __attribute__((noreturn)) __machine_halt(void *unused)
 {
     for ( ; ; )
-        safe_halt();
+        __asm__ __volatile__ ( "hlt" );
 }
 
 void machine_halt(void)
diff -r 8970d080f719 -r be0a1f376223 xen/arch/x86/traps.c
--- a/xen/arch/x86/traps.c      Thu Apr  6 15:15:28 2006
+++ b/xen/arch/x86/traps.c      Thu Apr  6 15:41:53 2006
@@ -32,6 +32,7 @@
 #include <xen/errno.h>
 #include <xen/mm.h>
 #include <xen/console.h>
+#include <xen/reboot.h>
 #include <asm/regs.h>
 #include <xen/delay.h>
 #include <xen/event.h>
@@ -318,8 +319,7 @@
     console_force_lock();
 
     /* Wait for manual reset. */
-    for ( ; ; )
-        __asm__ __volatile__ ( "hlt" );
+    machine_halt();
 }
 
 static inline int do_trap(int trapnr, char *str,
diff -r 8970d080f719 -r be0a1f376223 xen/arch/x86/x86_32/traps.c
--- a/xen/arch/x86/x86_32/traps.c       Thu Apr  6 15:15:28 2006
+++ b/xen/arch/x86/x86_32/traps.c       Thu Apr  6 15:41:53 2006
@@ -9,6 +9,7 @@
 #include <xen/mm.h>
 #include <xen/irq.h>
 #include <xen/symbols.h>
+#include <xen/reboot.h>
 #include <asm/current.h>
 #include <asm/flushtlb.h>
 #include <asm/hvm/hvm.h>
@@ -180,8 +181,7 @@
     console_force_lock();
 
     /* Wait for manual reset. */
-    for ( ; ; )
-        __asm__ __volatile__ ( "hlt" );
+    machine_halt();
 }
 
 unsigned long do_iret(void)
diff -r 8970d080f719 -r be0a1f376223 xen/arch/x86/x86_64/traps.c
--- a/xen/arch/x86/x86_64/traps.c       Thu Apr  6 15:15:28 2006
+++ b/xen/arch/x86/x86_64/traps.c       Thu Apr  6 15:41:53 2006
@@ -10,6 +10,7 @@
 #include <xen/symbols.h>
 #include <xen/console.h>
 #include <xen/sched.h>
+#include <xen/reboot.h>
 #include <asm/current.h>
 #include <asm/flushtlb.h>
 #include <asm/msr.h>
@@ -166,8 +167,7 @@
     console_force_lock();
 
     /* Wait for manual reset. */
-    for ( ; ; )
-        __asm__ __volatile__ ( "hlt" );
+    machine_halt();
 }
 
 void toggle_guest_mode(struct vcpu *v)
diff -r 8970d080f719 -r be0a1f376223 xen/drivers/char/console.c
--- a/xen/drivers/char/console.c        Thu Apr  6 15:15:28 2006
+++ b/xen/drivers/char/console.c        Thu Apr  6 15:41:53 2006
@@ -520,6 +520,7 @@
 {
     console_lock = SPIN_LOCK_UNLOCKED;
     serial_force_unlock(sercon_handle);
+    console_start_sync();
 }
 
 void console_force_lock(void)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.