|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 10 of 29 RFC] libxl: destroy devices before device model
# HG changeset patch
# User Roger Pau Monne <roger.pau@xxxxxxxxxxxxx>
# Date 1328177046 -3600
# Node ID 80835b6fed80331703a525a3b6ac98153d9868f6
# Parent 8a5a82c9819558015ac75afdef28ee3d88d4f334
libxl: destroy devices before device model
Destroying the device model before unplugging the devices prevented
from doing a clean unplug, since libxl was waiting for dm devices
to shutdown when the userspace process was already killed.
Signed-off-by: Roger Pau Monne <roger.pau@xxxxxxxxxxxxx>
diff -r 8a5a82c98195 -r 80835b6fed80 tools/libxl/libxl.c
--- a/tools/libxl/libxl.c Thu Feb 02 11:01:05 2012 +0100
+++ b/tools/libxl/libxl.c Thu Feb 02 11:04:06 2012 +0100
@@ -791,15 +791,15 @@ int libxl_domain_destroy(libxl_ctx *ctx,
if (rc < 0) {
LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_domain_pause failed
for %d", domid);
}
+ if (libxl__devices_destroy(gc, domid) < 0)
+ LIBXL__LOG(ctx, LIBXL__LOG_ERROR,
+ "libxl__devices_destroy failed for %d", domid);
if (dm_present) {
if (libxl__destroy_device_model(gc, domid) < 0)
LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "libxl__destroy_device_model
failed for %d", domid);
libxl__qmp_cleanup(gc, domid);
}
- if (libxl__devices_destroy(gc, domid) < 0)
- LIBXL__LOG(ctx, LIBXL__LOG_ERROR,
- "libxl__devices_destroy failed for %d", domid);
vm_path = libxl__xs_read(gc, XBT_NULL, libxl__sprintf(gc, "%s/vm",
dom_path));
if (vm_path)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |