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

[Xen-devel] [PATCH] tools/libxc: fix errno handling for HVM in xc_domain_save



The previous patch ("tools/libxc: pass errno to callers of
xc_domain_save") did not jump to the proper label if the domU is HVM.

Also make it clearer what "out" and "out_rc" are supposed to mean:
label "out" is for failure case, it expects errno to be set.
label "out_rc" is for success case, it preserves the initial errno for
the caller.

Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>
---
 tools/libxc/xc_domain_save.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/libxc/xc_domain_save.c b/tools/libxc/xc_domain_save.c
index 9f96bb7..5a50c5c 100644
--- a/tools/libxc/xc_domain_save.c
+++ b/tools/libxc/xc_domain_save.c
@@ -1837,7 +1837,7 @@ int xc_domain_save(xc_interface *xch, int io_fd, uint32_t 
dom, uint32_t max_iter
         
         /* HVM guests are done now */
         errno = 0;
-        goto out;
+        goto out_rc;
     }
 
     /* PV guests only from now on */
@@ -2037,13 +2037,13 @@ int xc_domain_save(xc_interface *xch, int io_fd, 
uint32_t dom, uint32_t max_iter
     }
 
     /* Success! */
-    rc = errno = 0;
+    errno = 0;
     goto out_rc;
 
  out:
-    rc = errno;
-    assert(rc);
+    assert(errno);
  out_rc:
+    rc = errno;
     completed = 1;
 
     if ( !rc && callbacks->postcopy )

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