All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tools/libxc: fix errno handling for HVM in xc_domain_save
@ 2014-03-13 17:34 Olaf Hering
  2014-03-13 17:44 ` Ian Campbell
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Olaf Hering @ 2014-03-13 17:34 UTC (permalink / raw)
  To: xen-devel; +Cc: Olaf Hering, Ian.Jackson, Ian.Campbell

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@aepfle.de>
---
 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 )

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-03-13 18:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-13 17:34 [PATCH] tools/libxc: fix errno handling for HVM in xc_domain_save Olaf Hering
2014-03-13 17:44 ` Ian Campbell
2014-03-13 17:46 ` Andrew Cooper
2014-03-13 17:53 ` Ian Jackson
2014-03-13 17:57   ` Olaf Hering
2014-03-13 18:01     ` Ian Jackson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.