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

[Xen-devel] [PATCH v11 01/17] libxl: fix stubdom console destruction



Stubdoms have several consoles attached, and they don't follow the
xenstore protocol for devices, since they are always in state 1. We
have to add an exception to libxl__initiate_device_remove, so libxl
doesn't wait for them to reach state 6 (Closed).

Report: http://markmail.org/message/yqgppcsdip6tnmh6

Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Reported-by: Ian Campbell <ian.campbell@xxxxxxxxxxxxx>
Signed-off-by: Roger Pau Monne <roger.pau@xxxxxxxxxx>
---
 tools/libxl/libxl_device.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c
index a94beab..c4392fa 100644
--- a/tools/libxl/libxl_device.c
+++ b/tools/libxl/libxl_device.c
@@ -592,8 +592,10 @@ void libxl__initiate_device_remove(libxl__egc *egc,
         LOG(ERROR, "unable to get info for domain %d", domid);
         goto out;
     }
-    if (QEMU_BACKEND(aodev->dev) &&
-        (info.paused || info.dying || info.shutdown)) {
+    if ((QEMU_BACKEND(aodev->dev) &&
+        (info.paused || info.dying || info.shutdown)) ||
+        (libxl_is_stubdom(CTX, aodev->dev->domid, NULL) &&
+        (aodev->dev->backend_kind == LIBXL__DEVICE_KIND_CONSOLE))) {
         /*
          * TODO: 4.2 Bodge due to QEMU, see comment on top of
          * libxl__initiate_device_remove in libxl_internal.h
-- 
1.7.7.5 (Apple Git-26)


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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