# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1310997150 -3600
# Node ID 686d683a3a57f7a1b315c49e10d5e60ec4d11133
# Parent 967b5e7bba040a8d7341cfe81faa57556b8cb5c0
libxl: use libxl_domain_type enum with libxl__domain_suspend_common
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
diff -r 967b5e7bba04 -r 686d683a3a57 tools/libxl/libxl.c
--- a/tools/libxl/libxl.c Mon Jul 18 14:52:30 2011 +0100
+++ b/tools/libxl/libxl.c Mon Jul 18 14:52:30 2011 +0100
@@ -474,13 +474,13 @@ int libxl_domain_suspend(libxl_ctx *ctx,
uint32_t domid, int fd)
{
libxl__gc gc = LIBXL_INIT_GC(ctx);
- int hvm = LIBXL__DOMAIN_IS_TYPE(&gc, domid, HVM);
+ libxl_domain_type type = libxl__domain_type(&gc, domid);
int live = info != NULL && info->flags & XL_SUSPEND_LIVE;
int debug = info != NULL && info->flags & XL_SUSPEND_DEBUG;
int rc = 0;
- rc = libxl__domain_suspend_common(&gc, domid, fd, hvm, live, debug);
- if (!rc && hvm)
+ rc = libxl__domain_suspend_common(&gc, domid, fd, type, live, debug);
+ if (!rc && type == LIBXL_DOMAIN_TYPE_HVM)
rc = libxl__domain_save_device_model(&gc, domid, fd);
libxl__free_all(&gc);
return rc;
diff -r 967b5e7bba04 -r 686d683a3a57 tools/libxl/libxl_dom.c
--- a/tools/libxl/libxl_dom.c Mon Jul 18 14:52:30 2011 +0100
+++ b/tools/libxl/libxl_dom.c Mon Jul 18 14:52:30 2011 +0100
@@ -513,14 +513,26 @@ static int libxl__domain_suspend_common_
}
int libxl__domain_suspend_common(libxl__gc *gc, uint32_t domid, int fd,
- int hvm, int live, int debug)
+ libxl_domain_type type,
+ int live, int debug)
{
libxl_ctx *ctx = libxl__gc_owner(gc);
int flags;
int port;
struct save_callbacks callbacks;
struct suspendinfo si;
- int rc = ERROR_FAIL;
+ int hvm, rc = ERROR_FAIL;
+
+ switch (type) {
+ case LIBXL_DOMAIN_TYPE_HVM:
+ hvm = 1;
+ break;
+ case LIBXL_DOMAIN_TYPE_PV:
+ hvm = 0;
+ break;
+ default:
+ return ERROR_INVAL;
+ }
flags = (live) ? XCFLAGS_LIVE : 0
| (debug) ? XCFLAGS_DEBUG : 0
diff -r 967b5e7bba04 -r 686d683a3a57 tools/libxl/libxl_internal.h
--- a/tools/libxl/libxl_internal.h Mon Jul 18 14:52:30 2011 +0100
+++ b/tools/libxl/libxl_internal.h Mon Jul 18 14:52:30 2011 +0100
@@ -199,7 +199,9 @@ _hidden int libxl__domain_restore_common
libxl_domain_build_info *info,
libxl__domain_build_state *state,
int fd);
-_hidden int libxl__domain_suspend_common(libxl__gc *gc, uint32_t domid, int
fd, int hvm, int live, int debug);
+_hidden int libxl__domain_suspend_common(libxl__gc *gc, uint32_t domid, int fd,
+ libxl_domain_type type,
+ int live, int debug);
_hidden int libxl__domain_save_device_model(libxl__gc *gc, uint32_t domid, int
fd);
_hidden void libxl__userdata_destroyall(libxl__gc *gc, uint32_t domid);
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|