WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH 14/15] xen: destroy the VM when shutdown is requested

From: Anthony PERARD <anthony.perard@xxxxxxxxxx>

Handle shutdown and reset requests in helper.c.

Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
 target-xen/helper.c |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/target-xen/helper.c b/target-xen/helper.c
index 4571ac0..16e628c 100644
--- a/target-xen/helper.c
+++ b/target-xen/helper.c
@@ -397,6 +397,23 @@ static void cpu_handle_ioreq(void *opaque)
 
         xen_wmb(); /* Update ioreq contents /then/ update state. */
 
+        /*
+         * We do this before we send the response so that the tools
+         * have the opportunity to pick up on the reset before the
+         * guest resumes and does a hlt with interrupts disabled which
+         * causes Xen to powerdown the domain.
+         */
+        if (vm_running) {
+            if (qemu_shutdown_requested_get()) {
+                fprintf(stderr, "shutdown requested in cpu_handle_ioreq\n");
+                destroy_hvm_domain();
+            }
+            if (qemu_reset_requested_get()) {
+                fprintf(stderr, "reset requested in cpu_handle_ioreq.\n");
+                qemu_system_reset();
+            }
+        }
+
         req->state = STATE_IORESP_READY;
         xc_evtchn_notify(xce_handle, ioreq_local_port[send_vcpu]);
     }
-- 
1.7.0.4


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

<Prev in Thread] Current Thread [Next in Thread>