[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v7 2/9] libxl: libxl_uuid_copy now takes a ctx argument
Make it consistent with existing libxl functions like libxl_bitmap_copy etc. Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- tools/libxl/libxl.c | 2 +- tools/libxl/libxl.h | 14 +++++++++++--- tools/libxl/libxl_create.c | 2 +- tools/libxl/libxl_utils.c | 2 +- tools/libxl/libxl_uuid.c | 8 ++++---- tools/libxl/libxl_uuid.h | 7 ++++++- 6 files changed, 24 insertions(+), 11 deletions(-) diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c index 08f1d4d..38d4b2a 100644 --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -2019,7 +2019,7 @@ int libxl_devid_to_device_vtpm(libxl_ctx *ctx, if(devid == vtpms[i].devid) { vtpm->backend_domid = vtpms[i].backend_domid; vtpm->devid = vtpms[i].devid; - libxl_uuid_copy(&vtpm->uuid, &vtpms[i].uuid); + libxl_uuid_copy(ctx, &vtpm->uuid, &vtpms[i].uuid); rc = 0; break; } diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h index 8fbfa2d..69ceac8 100644 --- a/tools/libxl/libxl.h +++ b/tools/libxl/libxl.h @@ -319,13 +319,15 @@ #include <xentoollog.h> +typedef struct libxl__ctx libxl_ctx; + #include <libxl_uuid.h> #include <_libxl_list.h> /* API compatibility. */ #ifdef LIBXL_API_VERSION #if LIBXL_API_VERSION != 0x040200 && LIBXL_API_VERSION != 0x040300 && \ - LIBXL_API_VERSION != 0x040400 + LIBXL_API_VERSION != 0x040400 && LIBXL_API_VERSION != 0x040500 #error Unknown LIBXL_API_VERSION #endif #endif @@ -499,6 +501,14 @@ #endif /* + * LIBXL_HAVE_UUID_COPY_CTX_PARAM + * + * If this is defined, libxl_uuid_copy has changed to take a libxl_ctx + * structure. + */ +#define LIBXL_HAVE_UUID_COPY_CTX_PARAM 1 + +/* * LIBXL_HAVE_SSID_LABEL * * If this is defined, then libxl IDL contains string of XSM security @@ -594,8 +604,6 @@ bool libxl_defbool_val(libxl_defbool db); const char *libxl_defbool_to_string(libxl_defbool b); -typedef struct libxl__ctx libxl_ctx; - #define LIBXL_TIMER_MODE_DEFAULT -1 #define LIBXL_MEMKB_DEFAULT ~0ULL diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c index fe3bdd2..da1517c 100644 --- a/tools/libxl/libxl_create.c +++ b/tools/libxl/libxl_create.c @@ -479,7 +479,7 @@ int libxl__domain_make(libxl__gc *gc, libxl_domain_create_info *info, *domid = -1; /* Ultimately, handle is an array of 16 uint8_t, same as uuid */ - libxl_uuid_copy((libxl_uuid *)handle, &info->uuid); + libxl_uuid_copy(ctx, (libxl_uuid *)handle, &info->uuid); ret = xc_domain_create(ctx->xch, info->ssidref, handle, flags, domid); if (ret < 0) { diff --git a/tools/libxl/libxl_utils.c b/tools/libxl/libxl_utils.c index 476921e..16b734e 100644 --- a/tools/libxl/libxl_utils.c +++ b/tools/libxl/libxl_utils.c @@ -536,7 +536,7 @@ int libxl_uuid_to_device_vtpm(libxl_ctx *ctx, uint32_t domid, if(!libxl_uuid_compare(uuid, &vtpms[i].uuid)) { vtpm->backend_domid = vtpms[i].backend_domid; vtpm->devid = vtpms[i].devid; - libxl_uuid_copy(&vtpm->uuid, &vtpms[i].uuid); + libxl_uuid_copy(ctx, &vtpm->uuid, &vtpms[i].uuid); rc = 0; break; } diff --git a/tools/libxl/libxl_uuid.c b/tools/libxl/libxl_uuid.c index 6591cb7..172b7d1 100644 --- a/tools/libxl/libxl_uuid.c +++ b/tools/libxl/libxl_uuid.c @@ -14,8 +14,6 @@ #include "libxl_osdeps.h" /* must come before any other headers */ -#include <libxl_uuid.h> - #include "libxl_internal.h" #if defined(__linux__) @@ -35,7 +33,8 @@ int libxl_uuid_from_string(libxl_uuid *uuid, const char *in) return uuid_parse(in, uuid->uuid); } -void libxl_uuid_copy(libxl_uuid *dst, const libxl_uuid *src) +void libxl_uuid_copy(libxl_ctx *ctx_opt, libxl_uuid *dst, + const libxl_uuid *src) { uuid_copy(dst->uuid, src->uuid); } @@ -87,7 +86,8 @@ int libxl_uuid_from_string(libxl_uuid *uuid, const char *in) } #undef LIBXL__UUID_PTRS -void libxl_uuid_copy(libxl_uuid *dst, const libxl_uuid *src) +void libxl_uuid_copy(libxl_ctx *ctx_opt, libxl_uuid *dst, + const libxl_uuid *src) { memcpy(dst->uuid, src->uuid, sizeof(dst->uuid)); } diff --git a/tools/libxl/libxl_uuid.h b/tools/libxl/libxl_uuid.h index fbde7b6..0c2a1e7 100644 --- a/tools/libxl/libxl_uuid.h +++ b/tools/libxl/libxl_uuid.h @@ -56,7 +56,12 @@ typedef struct { int libxl_uuid_is_nil(const libxl_uuid *uuid); void libxl_uuid_generate(libxl_uuid *uuid); int libxl_uuid_from_string(libxl_uuid *uuid, const char *in); -void libxl_uuid_copy(libxl_uuid *dst, const libxl_uuid *src); +void libxl_uuid_copy(libxl_ctx *ctx_opt, libxl_uuid *dst, + const libxl_uuid *src); +#if defined(LIBXL_API_VERSION) && LIBXL_API_VERSION < 0x040500 +void libxl_uuid_copy(dst, src) libxl_uuid_copy(NULL, dst, src) +#endif + void libxl_uuid_clear(libxl_uuid *uuid); int libxl_uuid_compare(const libxl_uuid *uuid1, const libxl_uuid *uuid2); const uint8_t *libxl_uuid_bytearray_const(const libxl_uuid *uuid); -- 1.7.10.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |