|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 35/35] libxl: When save/restore helper dies, do not overwrite rc
If we already have an rc (eg from ao abort), keep it.
Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
---
v4: New patch in this version of the series.
---
tools/libxl/libxl_save_callout.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/tools/libxl/libxl_save_callout.c b/tools/libxl/libxl_save_callout.c
index 93a884b..087c2d5 100644
--- a/tools/libxl/libxl_save_callout.c
+++ b/tools/libxl/libxl_save_callout.c
@@ -332,19 +332,22 @@ static void helper_exited(libxl__egc *egc,
libxl__ev_child *ch,
if (status) {
libxl_report_child_exitstatus(CTX, XTL_ERROR, what, pid, status);
- shs->rc = ERROR_FAIL;
+ if (!shs->rc)
+ shs->rc = ERROR_FAIL;
}
if (shs->need_results) {
- if (!shs->rc)
+ if (!shs->rc) {
LOG(ERROR,"%s exited without providing results",what);
- shs->rc = ERROR_FAIL;
+ shs->rc = ERROR_FAIL;
+ }
}
if (!shs->completed) {
- if (!shs->rc)
+ if (!shs->rc) {
LOG(ERROR,"%s exited without signaling completion",what);
- shs->rc = ERROR_FAIL;
+ shs->rc = ERROR_FAIL;
+ }
}
helper_done(egc, shs);
--
1.7.10.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |