[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 03/27] tools/libxl: Stash all restore parameters in domain_create_state
On 16/06/15 14:37, Ian Campbell wrote: > On Mon, 2015-06-15 at 14:44 +0100, Andrew Cooper wrote: >> Shortly more parameters will appear, and this saves unboxing each one. >> >> No functional change. >> >> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> >> CC: Ian Campbell <Ian.Campbell@xxxxxxxxxx> >> CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> >> CC: Wei Liu <wei.liu2@xxxxxxxxxx> >> --- >> tools/libxl/libxl_create.c | 12 ++++++------ >> tools/libxl/libxl_internal.h | 2 +- >> tools/libxl/libxl_save_callout.c | 2 +- >> 3 files changed, 8 insertions(+), 8 deletions(-) >> >> diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c >> index 86384d2..385891c 100644 >> --- a/tools/libxl/libxl_create.c >> +++ b/tools/libxl/libxl_create.c >> @@ -1577,8 +1577,8 @@ static void domain_create_cb(libxl__egc *egc, >> int rc, uint32_t domid); >> >> static int do_domain_create(libxl_ctx *ctx, libxl_domain_config *d_config, >> - uint32_t *domid, >> - int restore_fd, int checkpointed_stream, >> + uint32_t *domid, int restore_fd, >> + const libxl_domain_restore_params *params, >> const libxl_asyncop_how *ao_how, >> const libxl_asyncprogress_how *aop_console_how) >> { >> @@ -1591,8 +1591,8 @@ static int do_domain_create(libxl_ctx *ctx, >> libxl_domain_config *d_config, >> libxl_domain_config_init(&cdcs->dcs.guest_config_saved); >> libxl_domain_config_copy(ctx, &cdcs->dcs.guest_config_saved, d_config); >> cdcs->dcs.restore_fd = restore_fd; >> + if (params) cdcs->dcs.restore_params = *params; > Is this eventually going to become non-optional? I think not and its > validity is entirely intertwined with the validity of restore_fd (as I > suspect it was before, but I've not checked). > > Perhaps an error check to that effect would be useful? It is mandatory for restore, and currently unused for plain create. restore_fd being > -1 does appear to be the canonical switch between a restore and a create, so should be the qualification of validity. > > Anyway, I think what you've done here is correct, so: > Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> > > [...] >> @@ -3122,11 +3122,11 @@ struct libxl__domain_create_state { >> libxl_domain_config *guest_config; >> libxl_domain_config guest_config_saved; /* vanilla config */ >> int restore_fd; >> + libxl_domain_restore_params restore_params; >> libxl__domain_create_cb *callback; >> libxl_asyncprogress_how aop_console_how; >> /* private to domain_create */ >> int guest_domid; >> - int checkpointed_stream; > This has, in effect moved from "private to domain_create" to "filled in > by user", I don't think the change here has actually changed its status, > but I suspect it was wrong before (alternatively restore_fd is in the > wrong place instead). I think it was wrong before. It was always a caller-provided parameter, albeit implicit by virtue of essentially being a "remus" boolean. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |