From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yang Hongyang Subject: Re: [PATCH 03/27] tools/libxl: Stash all restore parameters in domain_create_state Date: Thu, 18 Jun 2015 10:32:16 +0800 Message-ID: <55822DB0.50503@cn.fujitsu.com> References: <1434375880-30914-1-git-send-email-andrew.cooper3@citrix.com> <1434375880-30914-4-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1434375880-30914-4-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper , Xen-devel Cc: Wei Liu , Ian Jackson , Ian Campbell List-Id: xen-devel@lists.xenproject.org On 06/15/2015 09:44 PM, Andrew Cooper wrote: > Shortly more parameters will appear, and this saves unboxing each one. > > No functional change. > > Signed-off-by: Andrew Cooper > CC: Ian Campbell > CC: Ian Jackson > CC: Wei Liu Reviewed-by: Yang Hongyang > --- > 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; > cdcs->dcs.callback = domain_create_cb; > - cdcs->dcs.checkpointed_stream = checkpointed_stream; > libxl__ao_progress_gethow(&cdcs->dcs.aop_console_how, aop_console_how); > cdcs->domid_out = domid; > > @@ -1619,7 +1619,7 @@ int libxl_domain_create_new(libxl_ctx *ctx, libxl_domain_config *d_config, > const libxl_asyncop_how *ao_how, > const libxl_asyncprogress_how *aop_console_how) > { > - return do_domain_create(ctx, d_config, domid, -1, 0, > + return do_domain_create(ctx, d_config, domid, -1, NULL, > ao_how, aop_console_how); > } > > @@ -1629,8 +1629,8 @@ int libxl_domain_create_restore(libxl_ctx *ctx, libxl_domain_config *d_config, > const libxl_asyncop_how *ao_how, > const libxl_asyncprogress_how *aop_console_how) > { > - return do_domain_create(ctx, d_config, domid, restore_fd, > - params->checkpointed_stream, ao_how, aop_console_how); > + return do_domain_create(ctx, d_config, domid, restore_fd, params, > + ao_how, aop_console_how); > } > > /* > diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h > index 6226c18..796bd21 100644 > --- a/tools/libxl/libxl_internal.h > +++ b/tools/libxl/libxl_internal.h > @@ -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; > libxl__domain_build_state build_state; > libxl__bootloader_state bl; > libxl__stub_dm_spawn_state dmss; > diff --git a/tools/libxl/libxl_save_callout.c b/tools/libxl/libxl_save_callout.c > index 40b25e4..3585a84 100644 > --- a/tools/libxl/libxl_save_callout.c > +++ b/tools/libxl/libxl_save_callout.c > @@ -59,7 +59,7 @@ void libxl__xc_domain_restore(libxl__egc *egc, libxl__domain_create_state *dcs, > state->store_domid, state->console_port, > state->console_domid, > hvm, pae, superpages, > - cbflags, dcs->checkpointed_stream, > + cbflags, dcs->restore_params.checkpointed_stream, > }; > > dcs->shs.ao = ao; > -- Thanks, Yang.