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

[Xen-changelog] [xen-unstable] libxenlight: remove vss and xapi patch on domain destroy



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1259675238 0
# Node ID 4260d8edf2603f08a367e8335978efdfc174aab2
# Parent  6263a2efe684b6546e6fd76485dd003d8f951599
libxenlight: remove vss and xapi patch on domain destroy

Signed-off-by: Andres Lagar-Cavilla <andres@xxxxxxxxxxxxxxxx>
---
 tools/libxl/libxl.c |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff -r 6263a2efe684 -r 4260d8edf260 tools/libxl/libxl.c
--- a/tools/libxl/libxl.c       Tue Dec 01 13:46:31 2009 +0000
+++ b/tools/libxl/libxl.c       Tue Dec 01 13:47:18 2009 +0000
@@ -480,7 +480,8 @@ static int libxl_destroy_device_model(st
 
 int libxl_domain_destroy(struct libxl_ctx *ctx, uint32_t domid, int force)
 {
-    char *dom_path, vm_path[UUID_LEN_STR + 5];
+    char *dom_path, *uuid_str;
+    char vm_path[UUID_LEN_STR + 5], vss_path[UUID_LEN_STR + 6], xapi_path[20];
     xen_uuid_t *uuid;
     int rc;
 
@@ -508,9 +509,17 @@ int libxl_domain_destroy(struct libxl_ct
         XL_LOG(ctx, XL_LOG_ERROR, "libxl_destroy_devices failed for %d", 
domid);
     if (!xs_rm(ctx->xsh, XBT_NULL, dom_path))
         XL_LOG_ERRNO(ctx, XL_LOG_ERROR, "xs_rm failed for %s", dom_path);
-    snprintf(vm_path, sizeof(vm_path), "/vm/%s", libxl_uuid_to_string(ctx, 
uuid));
+    uuid_str = libxl_uuid_to_string(ctx, uuid);
+    snprintf(vm_path, sizeof(vm_path), "/vm/%s", uuid_str);
     if (!xs_rm(ctx->xsh, XBT_NULL, vm_path))
         XL_LOG_ERRNO(ctx, XL_LOG_ERROR, "xs_rm failed for %s", vm_path);
+    snprintf(vss_path, sizeof(vss_path), "/vss/%s", uuid_str);
+    if (!xs_rm(ctx->xsh, XBT_NULL, vss_path))
+        XL_LOG_ERRNO(ctx, XL_LOG_ERROR, "xs_rm failed for %s", vss_path);
+    libxl_free(ctx, uuid_str);
+    snprintf(xapi_path, sizeof(xapi_path), "/xapi/%u", domid);
+    if (!xs_rm(ctx->xsh, XBT_NULL, xapi_path))
+        XL_LOG_ERRNO(ctx, XL_LOG_ERROR, "xs_rm failed for %s", xapi_path);
     rc = xc_domain_destroy(ctx->xch, domid);
     if (rc < 0) {
         XL_LOG_ERRNOVAL(ctx, XL_LOG_ERROR, rc, "xc_domain_destroy failed for 
%d", domid);

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