On 30/12/2015 01:39, Wen Congyang wrote:
If what fails?
Given the content of this patch in the context of the previous one, I
presume you are wishing to avoid re-sending the emulator state after
libxl__xc_domain_save_done() completes, but under what circumstances
will this occur?
Signed-off-by: Wen Congyang <we...@cn.fujitsu.com>
---
tools/libxl/libxl_stream_write.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tools/libxl/libxl_stream_write.c b/tools/libxl/libxl_stream_write.c
index 80d9208..ee9c53a 100644
--- a/tools/libxl/libxl_stream_write.c
+++ b/tools/libxl/libxl_stream_write.c
@@ -354,8 +354,12 @@ void libxl__xc_domain_save_done(libxl__egc *egc, void
*dss_void,
* alive, and check_all_finished() may have torn it down around us.
* If the stream is not still alive, we must not continue any work.
*/
- if (libxl__stream_write_inuse(stream))
- write_emulator_xenstore_record(egc, stream);
+ if (libxl__stream_write_inuse(stream)) {
+ if (dss->remus)
+ stream_complete(egc, stream, 0);
+ else
+ write_emulator_xenstore_record(egc, stream);
+ }
}
static void write_emulator_xenstore_record(libxl__egc *egc,
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel