[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] fix the control panel problem for latest tree



Attach is patch to fix the problem when using vnc instead of SDL.
Because new image handling structure move configurtion to image
handle creating, at that time, the domain struct is not created yet,
so vnc code can not get domid.
In this patch, I split the image configuration into two parts.
maybe not so ideal, but just simple.

Christian Limpach wrote:
Thanks!

On 9/16/05, Ling, Xiaofeng <xiaofeng.ling@xxxxxxxxx> wrote:

The new image handling structure break the vmx guest loading, this patch
fix it.

Signed-off-by: Xiaofeng Ling <xiaofeng.ling@xxxxxxxxx>

diff -r fe916b4a7d74 -r 089ec1b6817c tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py    Fri Sep 16 02:53:39 2005
+++ b/tools/python/xen/xend/image.py    Fri Sep 16 06:30:21 2005
@@ -271,9 +271,10 @@
   def configure(self, config):
       ImageHandler.configure(self, config)
       if not config:
-            self.memmap, self.dmargs, self.device_model, self.display = 
self.vm.gatherVm(
+            self.memmap, dmargs, self.device_model, self.display = 
self.vm.gatherVm(
               ("image/memmap"), ("image/dmargs"), ("image/device-model"),
               ("image/display"))
+            self.dmargs = dmargs.split(' ')
           return

       self.memmap = sxp.child_value(config, 'memmap')
@@ -283,10 +284,10 @@
           raise VmError("vmx: missing device model")
       self.display = sxp.child_value(config, 'display')

-        self.storeVm(("image/memmap", self.memmap),
-                     ("image/dmargs", self.dmargs),
-                     ("image/device-model", self.device_model),
-                     ("image/display", self.display))
+        self.vm.storeVm(("image/memmap", self.memmap),
+                        ("image/dmargs", " ".join(self.dmargs)),
+                        ("image/device-model", self.device_model),
+                        ("image/display", self.display))

   def createImage(self):
       """Create a VM for the VMX environment.
@@ -346,7 +347,7 @@
               ret.append("%s" % v)

       # Handle disk/network related options
-        devices = sxp.children(config, 'device')
+        devices = sxp.children(self.vm.config, 'device')
       for device in devices:
           name = sxp.name(sxp.child0(device))
           if name == 'vbd':


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel






_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

# HG changeset patch
# User Xiaofeng Ling <xiaofeng.ling@xxxxxxxxx>
# Node ID e8d938a4dcc90108739635489b01c99a33305045
# Parent  53cbced17c98f009c8cf534358979d9115b8657d
fix vnc configuration issue for creating vmx guest

Signed-off-by: Xiaofeng Ling <xiaofeng.ling@xxxxxxxxx>

diff -r 53cbced17c98 -r e8d938a4dcc9 tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py    Fri Sep 16 06:41:40 2005
+++ b/tools/python/xen/xend/image.py    Mon Sep 19 02:35:32 2005
@@ -294,6 +294,7 @@
         """
         self.parseMemmap()
         self.createDomain()
+        self.dmargs  += self.configVNC(sxp.child_value(self.vm.config, 
'image'))
 
     def buildDomain(self):
         # Create an event channel
@@ -377,10 +378,13 @@
                instance = sxp.child_value(vtpminfo, 'instance')
                ret.append("-instance")
                ret.append("%s" % instance)
-
+        return ret
+
+    def configVNC(self, config):
         # Handle graphics library related options
         vnc = sxp.child_value(config, 'vnc')
         sdl = sxp.child_value(config, 'sdl')
+        ret = []
         nographic = sxp.child_value(config, 'nographic')
         if nographic:
             ret.append('-nographic')
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.