[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 02/17] tools/libxl: Simplify callback handling in libxl-save-helper
The {save,restore}_callback helpers can have their scope reduced vastly, and helper_setcallbacks_{save,restore}() doesn't need to use a ternary operator to write 0 (meaning NULL) into an already zeroed structure. No functional change. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- CC: Ian Jackson <Ian.Jackson@xxxxxxxxxx> CC: Wei Liu <wl@xxxxxxx> CC: Anthony PERARD <anthony.perard@xxxxxxxxxx> --- tools/libxl/libxl_save_helper.c | 16 ++++++---------- tools/libxl/libxl_save_msgs_gen.pl | 2 +- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/tools/libxl/libxl_save_helper.c b/tools/libxl/libxl_save_helper.c index 017c7cd988..65dff389bf 100644 --- a/tools/libxl/libxl_save_helper.c +++ b/tools/libxl/libxl_save_helper.c @@ -217,8 +217,6 @@ int helper_getreply(void *user) /*----- other callbacks -----*/ -static struct save_callbacks helper_save_callbacks; - static void startup(const char *op) { xtl_log(&logger,XTL_DEBUG,0,program,"starting %s",op); @@ -234,8 +232,6 @@ static void complete(int retval) { exit(0); } -static struct restore_callbacks helper_restore_callbacks; - int main(int argc, char **argv) { int r; @@ -247,6 +243,7 @@ int main(int argc, char **argv) assert(mode); if (!strcmp(mode,"--save-domain")) { + static struct save_callbacks cb; io_fd = atoi(NEXTARG); recv_fd = atoi(NEXTARG); @@ -256,16 +253,16 @@ int main(int argc, char **argv) xc_stream_type_t stream_type = strtoul(NEXTARG,0,10); assert(!*++argv); - helper_setcallbacks_save(&helper_save_callbacks, cbflags); + helper_setcallbacks_save(&cb, cbflags); startup("save"); setup_signals(save_signal_handler); - r = xc_domain_save(xch, io_fd, dom, flags, &helper_save_callbacks, - stream_type, recv_fd); + r = xc_domain_save(xch, io_fd, dom, flags, &cb, stream_type, recv_fd); complete(r); } else if (!strcmp(mode,"--restore-domain")) { + static struct restore_callbacks cb; io_fd = atoi(NEXTARG); send_back_fd = atoi(NEXTARG); @@ -278,7 +275,7 @@ int main(int argc, char **argv) xc_stream_type_t stream_type = strtoul(NEXTARG,0,10); assert(!*++argv); - helper_setcallbacks_restore(&helper_restore_callbacks, cbflags); + helper_setcallbacks_restore(&cb, cbflags); unsigned long store_mfn = 0; unsigned long console_mfn = 0; @@ -288,8 +285,7 @@ int main(int argc, char **argv) r = xc_domain_restore(xch, io_fd, dom, store_evtchn, &store_mfn, store_domid, console_evtchn, &console_mfn, - console_domid, stream_type, - &helper_restore_callbacks, send_back_fd); + console_domid, stream_type, &cb, send_back_fd); helper_stub_restore_results(store_mfn,console_mfn,0); complete(r); diff --git a/tools/libxl/libxl_save_msgs_gen.pl b/tools/libxl/libxl_save_msgs_gen.pl index 6f1d79f821..831a15e0bb 100755 --- a/tools/libxl/libxl_save_msgs_gen.pl +++ b/tools/libxl/libxl_save_msgs_gen.pl @@ -333,7 +333,7 @@ END_ALWAYS my $c_v = "(1u<<$msgnum)"; my $c_cb = "cbs->$name"; $f_more_sr->(" if ($c_cb) cbflags |= $c_v;\n", $enumcallbacks); - $f_more_sr->(" $c_cb = (cbflags & $c_v) ? ${encode}_${name} : 0;\n", + $f_more_sr->(" if (cbflags & $c_v) $c_cb = ${encode}_${name};\n", $setcallbacks); } $f_more_sr->(" return 1;\n }\n\n"); -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |