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

Re: [Xen-devel] [PATCH v4 3/3] libxl: rename checkpointed_stream to stream_type



On Tue, Mar 15, 2016 at 09:58:37AM +0800, Wen Congyang wrote:
> Signed-off-by: Wen Congyang <wency@xxxxxxxxxxxxxx>
> ---
> v3->v4: Remove the new macro, and updte the macro 
> LIBXL_HAVE_CHECKPOINTED_STREAM
>  tools/libxl/libxl.c              |  4 ++--
>  tools/libxl/libxl.h              |  4 +++-
>  tools/libxl/libxl_create.c       |  4 ++--
>  tools/libxl/libxl_dom_save.c     |  6 +++---
>  tools/libxl/libxl_internal.h     |  2 +-
>  tools/libxl/libxl_save_callout.c |  4 ++--
>  tools/libxl/libxl_stream_read.c  |  4 ++--
>  tools/libxl/libxl_stream_write.c |  2 +-
>  tools/libxl/libxl_types.idl      |  2 +-
>  tools/libxl/xl_cmdimpl.c         | 16 ++++++++--------
>  10 files changed, 25 insertions(+), 23 deletions(-)
> 
> diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
> index 93e228d..7579dd2 100644
> --- a/tools/libxl/libxl.c
> +++ b/tools/libxl/libxl.c
> @@ -876,7 +876,7 @@ int libxl_domain_remus_start(libxl_ctx *ctx, 
> libxl_domain_remus_info *info,
>      dss->live = 1;
>      dss->debug = 0;
>      dss->remus = info;
> -    dss->checkpointed_stream = LIBXL_CHECKPOINTED_STREAM_REMUS;
> +    dss->stream_type = LIBXL_CHECKPOINTED_STREAM_REMUS;
>  
>      assert(info);
>  
> @@ -937,7 +937,7 @@ int libxl_domain_suspend(libxl_ctx *ctx, uint32_t domid, 
> int fd, int flags,
>      dss->type = type;
>      dss->live = flags & LIBXL_SUSPEND_LIVE;
>      dss->debug = flags & LIBXL_SUSPEND_DEBUG;
> -    dss->checkpointed_stream = LIBXL_CHECKPOINTED_STREAM_NONE;
> +    dss->stream_type = LIBXL_CHECKPOINTED_STREAM_NONE;
>  
>      rc = libxl__fd_flags_modify_save(gc, dss->fd,
>                                       ~(O_NONBLOCK|O_NDELAY), 0,
> diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
> index f9e3ef5..c55094b 100644
> --- a/tools/libxl/libxl.h
> +++ b/tools/libxl/libxl.h
> @@ -879,7 +879,9 @@ void libxl_mac_copy(libxl_ctx *ctx, libxl_mac *dst, 
> libxl_mac *src);
>  /*
>   * LIBXL_HAVE_CHECKPOINTED_STREAM
>   *
> - * If this is defined, then libxl_checkpointed_stream exists.
> + * If this is defined, then libxl_checkpointed_stream exists, and the
> + * libxl_domain_create_restore() interface's parameter checkpointed_stream
> + * is renamed to stream_type
>   */
>  #define LIBXL_HAVE_CHECKPOINTED_STREAM 1

I just realised this patch have not provided compatibility shim for
older version of LIBXL_API.

It now breaks backward compatibility because it changes existing API.
It's my fault for not observing this earlier, sorry.

On the other hand, I don't think this patch is strictly necessary.
Andrew's original complain was about libxc not exporting XC_MIG_* types.
I think libxl can function just fine as is with the old name.

So if you really wish to change the name of that field, I'm afraid
compatibility shim for all functions that accept
libxl_domain_restore_params is required.

I suggest we drop this patch for now and focus on core COLO
functionality, what do you think?

Wei.

_______________________________________________
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®.