# HG changeset patch
# User Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
# Date 1295632651 0
# Node ID 8b6e7f43683e2c78ff42e76912ef931f10a64e09
# Parent 17181eaedb78d01a97972dc93634398ac14cd884
tools: Change the name of the qemu save file at restore time
Change the name of the qemu save file to qemu-resume at restore time so
that it doesn't collide with the name of the next save file.
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Committed-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
tools/libxc/xc_domain_restore.c | 2 +-
tools/libxc/xenguest.h | 8 ++++++++
tools/libxl/libxl_create.c | 5 ++++-
tools/libxl/libxl_internal.h | 1 +
tools/python/xen/xend/image.py | 2 +-
5 files changed, 15 insertions(+), 3 deletions(-)
diff -r 17181eaedb78 -r 8b6e7f43683e tools/libxc/xc_domain_restore.c
--- a/tools/libxc/xc_domain_restore.c Fri Jan 21 17:45:56 2011 +0000
+++ b/tools/libxc/xc_domain_restore.c Fri Jan 21 17:57:31 2011 +0000
@@ -436,7 +436,7 @@ static int dump_qemu(xc_interface *xch,
char path[256];
FILE *fp;
- sprintf(path, "/var/lib/xen/qemu-save.%u", dom);
+ sprintf(path, XC_DEVICE_MODEL_RESTORE_FILE".%u", dom);
fp = fopen(path, "wb");
if ( !fp )
return -1;
diff -r 17181eaedb78 -r 8b6e7f43683e tools/libxc/xenguest.h
--- a/tools/libxc/xenguest.h Fri Jan 21 17:45:56 2011 +0000
+++ b/tools/libxc/xenguest.h Fri Jan 21 17:57:31 2011 +0000
@@ -77,6 +77,14 @@ int xc_domain_restore(xc_interface *xch,
unsigned int store_evtchn, unsigned long *store_mfn,
unsigned int console_evtchn, unsigned long *console_mfn,
unsigned int hvm, unsigned int pae, int superpages);
+/**
+ * xc_domain_restore writes a file to disk that contains the device
+ * model saved state.
+ * The pathname of this file is XC_DEVICE_MODEL_RESTORE_FILE; The domid
+ * of the new domain is automatically appended to the filename,
+ * separated by a ".".
+ */
+#define XC_DEVICE_MODEL_RESTORE_FILE "/var/lib/xen/qemu-resume"
/**
* This function will create a domain for a paravirtualized Linux
diff -r 17181eaedb78 -r 8b6e7f43683e tools/libxl/libxl_create.c
--- a/tools/libxl/libxl_create.c Fri Jan 21 17:45:56 2011 +0000
+++ b/tools/libxl/libxl_create.c Fri Jan 21 17:57:31 2011 +0000
@@ -22,6 +22,9 @@
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
+#include <xenctrl.h>
+#include <xc_dom.h>
+#include <xenguest.h>
#include "libxl.h"
#include "libxl_utils.h"
#include "libxl_internal.h"
@@ -252,7 +255,7 @@ static int domain_restore(libxl_ctx *ctx
dm_info->saved_state = NULL;
if (info->hvm) {
ret = asprintf(&dm_info->saved_state,
- "/var/lib/xen/qemu-save.%d", domid);
+ XC_DEVICE_MODEL_RESTORE_FILE".%d", domid);
ret = (ret < 0) ? ERROR_FAIL : 0;
}
diff -r 17181eaedb78 -r 8b6e7f43683e tools/libxl/libxl_internal.h
--- a/tools/libxl/libxl_internal.h Fri Jan 21 17:45:56 2011 +0000
+++ b/tools/libxl/libxl_internal.h Fri Jan 21 17:57:31 2011 +0000
@@ -45,6 +45,7 @@
#define LIBXL_HVM_EXTRA_MEMORY 2048
#define LIBXL_MIN_DOM0_MEM (128*1024)
#define QEMU_SIGNATURE "DeviceModelRecord0002"
+#define SAVEFILE "/var/lib/xen/qemu-save"
#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0]))
diff -r 17181eaedb78 -r 8b6e7f43683e tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py Fri Jan 21 17:45:56 2011 +0000
+++ b/tools/python/xen/xend/image.py Fri Jan 21 17:57:31 2011 +0000
@@ -936,7 +936,7 @@ class HVMImageHandler(ImageHandler):
args = ImageHandler.getDeviceModelArgs(self, restore)
args = args + ([ "-M", "xenfv"])
if restore:
- args = args + ([ "-loadvm", "/var/lib/xen/qemu-save.%d" %
+ args = args + ([ "-loadvm", "/var/lib/xen/qemu-resume.%d" %
self.vm.getDomid() ])
return args
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|