mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
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@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
This commit is contained in:
1 parent
83b3873822
commit
fedd1f6f41
2 files changed
+7
-11
No files matched your search
@@ -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);
|
||||
|
||||
|
||||
@@ -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");
|
||||
|
||||