aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/libxl.c
diff options
context:
space:
mode:
authorIan Jackson <ian.jackson@eu.citrix.com>2011-01-20 16:32:33 +0000
committerIan Jackson <ian.jackson@eu.citrix.com>2011-01-20 16:32:33 +0000
commit1da4ffed6fc715d2593f96925ecb98773b1de8df (patch)
tree937381b2d9d1f34c6e8b0870577c627ebe483f0f /tools/libxl/libxl.c
parent18bb4ab9daa52b4c99906c4c35e18695a1f3c14d (diff)
downloadxen-1da4ffed6fc715d2593f96925ecb98773b1de8df.tar.gz
xen-1da4ffed6fc715d2593f96925ecb98773b1de8df.tar.bz2
xen-1da4ffed6fc715d2593f96925ecb98773b1de8df.zip
libxl: do not attempt to write "shutdown" dm-command
libxl_domain_destroy writes the command "shutdown" to the xenstore node with which it communicates with qemu. However: - qemu does not understand this command and ignores it (printing a message) - libxl doesn't wait for the answer and immediately pauses the domain anyway - destroy is the ungraceful (force) operation and should not negotiate with qemu anyway - even in the graceful shutdown case, there would actually be nothing that qemu needs to do. Under some circumstances, this entry in xenstore will survive the domain's death, ie be leaked. So remove the erroneous code. Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/libxl/libxl.c')
-rw-r--r--tools/libxl/libxl.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index 7ffb985b86..a8f71951a9 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -682,11 +682,6 @@ int libxl_domain_destroy(libxl_ctx *ctx, uint32_t domid, int force)
if (libxl_device_pci_shutdown(ctx, domid) < 0)
LIBXL__LOG(ctx, LIBXL__LOG_ERROR, "pci shutdown failed for domid %d", domid);
- if (dm_present) {
- xs_write(ctx->xsh, XBT_NULL,
- libxl__sprintf(&gc, "/local/domain/0/device-model/%d/command", domid),
- "shutdown", strlen("shutdown"));
- }
rc = xc_domain_pause(ctx->xch, domid);
if (rc < 0) {
LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, "xc_domain_pause failed for %d", domid);