WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH 1/5] change the name of the qemu save file at res

To: Stefano Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 1/5] change the name of the qemu save file at restore time
From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Date: Fri, 21 Jan 2011 11:04:36 +0000
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
Delivery-date: Fri, 21 Jan 2011 03:04:21 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <alpine.DEB.2.00.1101201531510.7277@kaball-desktop>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <alpine.DEB.2.00.1101191245140.7277@kaball-desktop> <19768.20725.82343.716610@xxxxxxxxxxxxxxxxxxxxxxxx> <alpine.DEB.2.00.1101201531510.7277@kaball-desktop>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Alpine 2.00 (DEB 1167 2008-08-23)
On Thu, 20 Jan 2011, Stefano Stabellini wrote:
> On Thu, 20 Jan 2011, Ian Jackson wrote:
> > Stefano Stabellini writes ("[Xen-devel] [PATCH 1/5] 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.
> > ...
> > > -    sprintf(path, "/var/lib/xen/qemu-save.%u", dom);
> > > +    sprintf(path, "/var/lib/xen/qemu-resume.%u", dom);
> > ...
> > > -                       "/var/lib/xen/qemu-save.%d", domid);
> > > +                       RESTOREFILE".%d", domid);
> > ...
> > > +#define SAVEFILE "/var/lib/xen/qemu-save"
> > > +#define RESTOREFILE "/var/lib/xen/qemu-resume"
> > 
> > Uh, why is the latter not in libxc so that libxc can use it too ?
> 
> It should probably be in xenguest.h, close to xc_domain_restore.
> 

I am appending the updated version of this patch.

---

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>


diff -r 59396addc940 tools/libxc/xc_domain_restore.c
--- a/tools/libxc/xc_domain_restore.c   Fri Jan 14 14:26:11 2011 +0000
+++ b/tools/libxc/xc_domain_restore.c   Fri Jan 21 11:03:40 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 59396addc940 tools/libxc/xenguest.h
--- a/tools/libxc/xenguest.h    Fri Jan 14 14:26:11 2011 +0000
+++ b/tools/libxc/xenguest.h    Fri Jan 21 11:03:40 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 59396addc940 tools/libxl/libxl_create.c
--- a/tools/libxl/libxl_create.c        Fri Jan 14 14:26:11 2011 +0000
+++ b/tools/libxl/libxl_create.c        Fri Jan 21 11:03:40 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"
@@ -251,7 +254,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 59396addc940 tools/libxl/libxl_internal.h
--- a/tools/libxl/libxl_internal.h      Fri Jan 14 14:26:11 2011 +0000
+++ b/tools/libxl/libxl_internal.h      Fri Jan 21 11:03:40 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 59396addc940 tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py    Fri Jan 14 14:26:11 2011 +0000
+++ b/tools/python/xen/xend/image.py    Fri Jan 21 11:03:40 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-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel