|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] tools/libxl: Simplify callback handling in libxl-save-helper
commit fedd1f6f4115bc5f1695ad0be1719532f31d74de
Author: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
AuthorDate: Thu Jan 2 19:06:54 2020 +0000
Commit: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
CommitDate: Thu Feb 27 18:56:24 2020 +0000
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>
Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
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");
--
generated by git-patchbot for /home/xen/git/xen.git#staging
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |