aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xenguest.h
diff options
context:
space:
mode:
authorTim Deegan <Tim.Deegan@xensource.com>2007-01-18 16:48:03 +0000
committerTim Deegan <Tim.Deegan@xensource.com>2007-01-18 16:48:03 +0000
commit4a13cf1b7005cc5022b67f2e96ab597108333704 (patch)
tree422fe75359dbf0f1b06c2028e3644f11c2c3826d /tools/libxc/xenguest.h
parentccace2b70456834cbaff446025d438c480f81bd4 (diff)
downloadxen-4a13cf1b7005cc5022b67f2e96ab597108333704.tar.gz
xen-4a13cf1b7005cc5022b67f2e96ab597108333704.tar.bz2
xen-4a13cf1b7005cc5022b67f2e96ab597108333704.zip
[HVM] save restore: frame work
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com> frame work for HVM save restore in Control Panel
Diffstat (limited to 'tools/libxc/xenguest.h')
-rw-r--r--tools/libxc/xenguest.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/libxc/xenguest.h b/tools/libxc/xenguest.h
index 6d4576026d..7b5a2af0a4 100644
--- a/tools/libxc/xenguest.h
+++ b/tools/libxc/xenguest.h
@@ -11,6 +11,7 @@
#define XCFLAGS_LIVE 1
#define XCFLAGS_DEBUG 2
+#define XCFLAGS_HVM 4
/**
@@ -25,6 +26,13 @@ int xc_linux_save(int xc_handle, int io_fd, uint32_t dom, uint32_t max_iters,
uint32_t max_factor, uint32_t flags /* XCFLAGS_xxx */,
int (*suspend)(int domid));
+/**
+ * This function will save a hvm domain running unmodified guest.
+ * @return 0 on success, -1 on failure
+ */
+int xc_hvm_save(int xc_handle, int io_fd, uint32_t dom, uint32_t max_iters,
+ uint32_t max_factor, uint32_t flags /* XCFLAGS_xxx */,
+ int (*suspend)(int domid));
/**
* This function will restore a saved domain running Linux.
@@ -43,6 +51,18 @@ int xc_linux_restore(int xc_handle, int io_fd, uint32_t dom,
unsigned long *console_mfn);
/**
+ * This function will restore a saved hvm domain running unmodified guest.
+ *
+ * @parm store_mfn pass mem size & returned with the mfn of the store page
+ * @return 0 on success, -1 on failure
+ */
+int xc_hvm_restore(int xc_handle, int io_fd, uint32_t dom,
+ unsigned long nr_pfns, unsigned int store_evtchn,
+ unsigned long *store_mfn, unsigned int console_evtchn,
+ unsigned long *console_mfn,
+ unsigned int pae, unsigned int apic);
+
+/**
* This function will create a domain for a paravirtualized Linux
* using file names pointing to kernel and ramdisk
*