]> xenbits.xensource.com Git - xen.git/commitdiff
stubdom: support save/restore by passing the -loadvm parameter,
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 18 Mar 2008 11:27:36 +0000 (11:27 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 18 Mar 2008 11:27:36 +0000 (11:27 +0000)
letting the stubdomain access the save area, and having it watch the
correct xenstore node.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
stubdom/README
stubdom/stubdom-dm
tools/ioemu/xenstore.c

index d4e1664b4f1a6ef7f39bf5d520103bedc8e609ad..ee4ec700d8eb4794feb6baaddb2ad00e8071fe79 100644 (file)
@@ -78,6 +78,8 @@ To run
 
 mkdir -p /exports/usr/share/qemu
 ln -s /usr/share/qemu/keymaps /exports/usr/share/qemu
+mkdir -p /exports/var/lib
+ln -s /var/lib/xen /exports/var/lib
 /usr/sbin/fs-backend &
 
 xm create hvmconfig
index 256501bf0bc95bd4160c4055d3c34b7de6ba8b7c..03fbd3ba0dfab447a292bb2a69b1b89ceca58b66 100644 (file)
@@ -14,18 +14,30 @@ domid=
 domname=
 vncviewer=0
 vncpid=
+extra=
 while [ "$#" -gt 0 ];
 do
     if [ "$#" -ge 2 ];
     then
        case "$1" in
-           -d) domid=$2; shift ;;
-           -domain-name) domname=$2; shift ;;
+           -d)
+                domid=$2;
+                extra="$extra -d $domid";
+                shift
+                ;;
+           -domain-name)
+                domname=$2;
+                shift
+                ;;
            -vnc)
                ip=${2%:*};
                vnc_port=${2#*:};
                shift
                ;;
+            -loadvm)
+                extra="$extra -loadvm $2";
+                shift
+                ;;
        esac
     fi
     case "$1" in
@@ -60,7 +72,7 @@ do
        sleep 1
 done
 
-creation="xm create -c stubdom-$domname target=$domid memory=32"
+creation="xm create -c stubdom-$domname target=$domid memory=32 extra=\"$extra\""
 
 (while true ; do sleep 60 ; done) | $creation &
 #xterm -geometry +0+0 -e /bin/sh -c "$creation ; echo ; echo press ENTER to shut down ; read" &
index e1c253221b227e4cd7777cdd872d88798c6ff463..8ff396b09fe1d675b8d156140699051b98b17784 100644 (file)
@@ -81,7 +81,7 @@ static void waitForDevice(char *fn)
 
 #define DIRECT_PCI_STR_LEN 160
 char direct_pci_str[DIRECT_PCI_STR_LEN];
-void xenstore_parse_domain_config(int domid)
+void xenstore_parse_domain_config(int hvm_domid)
 {
     char **e = NULL;
     char *buf = NULL, *path;
@@ -100,7 +100,7 @@ void xenstore_parse_domain_config(int domid)
         return;
     }
 
-    path = xs_get_domain_path(xsh, domid);
+    path = xs_get_domain_path(xsh, hvm_domid);
     if (path == NULL) {
         fprintf(logfile, "xs_get_domain_path() error\n");
         goto out;