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

[Xen-changelog] Allow shutdown code SHUTDOWN_HALT, which we handle here in exactly the same



# HG changeset patch
# User emellor@ewan
# Node ID 4ab4f023a6ce08999a4d64937b3206fef163c62c
# Parent  0bc466c255605d0efeb4803626b72415839b9e6c
Allow shutdown code SHUTDOWN_HALT, which we handle here in exactly the same
way as POWEROFF.  The tools use the distinction when the code is returned.

Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx>

diff -r 0bc466c25560 -r 4ab4f023a6ce 
linux-2.6-xen-sparse/arch/xen/kernel/reboot.c
--- a/linux-2.6-xen-sparse/arch/xen/kernel/reboot.c     Thu Oct  6 10:09:14 2005
+++ b/linux-2.6-xen-sparse/arch/xen/kernel/reboot.c     Thu Oct  6 10:11:16 2005
@@ -20,6 +20,12 @@
 #define SHUTDOWN_POWEROFF  0
 #define SHUTDOWN_REBOOT    1
 #define SHUTDOWN_SUSPEND   2
+// Code 3 is SHUTDOWN_CRASH, which we don't use because the domain can only
+// report a crash, not be instructed to crash!
+// HALT is the same as POWEROFF, as far as we're concerned.  The tools use
+// the distinction when we return the reason code to them.
+#define SHUTDOWN_HALT      4
+
 
 void machine_restart(char * __unused)
 {
@@ -213,6 +219,7 @@
 
        switch (shutting_down) {
        case SHUTDOWN_POWEROFF:
+       case SHUTDOWN_HALT:
                if (execve("/sbin/poweroff", poweroff_argv, envp) < 0) {
                        sys_reboot(LINUX_REBOOT_MAGIC1,
                                   LINUX_REBOOT_MAGIC2,
@@ -294,6 +301,8 @@
                shutting_down = SHUTDOWN_REBOOT;
        else if (strcmp(str, "suspend") == 0)
                shutting_down = SHUTDOWN_SUSPEND;
+       else if (strcmp(str, "halt") == 0)
+               shutting_down = SHUTDOWN_HALT;
        else {
                printk("Ignoring shutdown request: %s\n", str);
                shutting_down = SHUTDOWN_INVALID;

_______________________________________________
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®.