[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v3 26/28] tools/libxl: Handle checkpoint records in a libxl migration v2 stream



On 14/07/15 11:33, Yang Hongyang wrote:
> On 07/13/2015 08:01 PM, Andrew Cooper wrote:
> [...]
>>           domcreate_rebuild_done(egc, dcs, rc);
>> @@ -966,6 +989,7 @@ static void domcreate_bootloader_done(libxl__egc
>> *egc,
>>       }
>>
>>       /* Restore */
>> +    callbacks->checkpoint = libxl__remus_domain_checkpoint_callback;
>
> This should be moved after read_stream_init()
>
> diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
> index e42de47..86f7f13 100644
> --- a/tools/libxl/libxl_create.c
> +++ b/tools/libxl/libxl_create.c
> @@ -989,8 +989,6 @@ static void domcreate_bootloader_done(libxl__egc
> *egc,
>      }
>
>      /* Restore */
> -    callbacks->checkpoint = libxl__remus_domain_checkpoint_callback;
> -
>      rc = libxl__build_pre(gc, domid, d_config, state);
>      if (rc)
>          goto out;
> @@ -1003,6 +1001,7 @@ static void domcreate_bootloader_done(libxl__egc
> *egc,
>      dcs->srs.legacy = (dcs->restore_params.stream_version == 1);
>      dcs->srs.completion_callback = domcreate_stream_done;
>      dcs->srs.checkpoint_callback = remus_checkpoint_stream_done;
> +    callbacks->checkpoint = libxl__remus_domain_checkpoint_callback;
>
>      libxl__stream_read_start(egc, &dcs->srs);
>      return;

Thanks.  I have already fixed this a different way, given IanJ's review
of the _init() methods.

The new init methods don't clobber the callbacks.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.