|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] allow xm2xl migration for xen-4.3
From: Vasiliy Tolstov <v.tolstov@xxxxxxxxx>
Fixed some python stuff for path detection
Provide right qemu args (videoram size not passed not, but default
works fine - only forward version migration possible)
Signed-off-by: Vasiliy Tolstov <v.tolstov@xxxxxxxxx>
---
tools/python/xen/xend/XendCheckpoint.py | 4 ++--
tools/python/xen/xend/XendConfig.py | 12 ++++++------
tools/python/xen/xend/XendDomainInfo.py | 2 +-
tools/python/xen/xend/image.py | 13 +++----------
tools/python/xen/xm/create.py | 2 +-
5 files changed, 13 insertions(+), 20 deletions(-)
diff --git a/tools/python/xen/xend/XendCheckpoint.py
b/tools/python/xen/xend/XendCheckpoint.py
index a433ffa..940c9bf 100644
--- a/tools/python/xen/xend/XendCheckpoint.py
+++ b/tools/python/xen/xend/XendCheckpoint.py
@@ -118,7 +118,7 @@ def save(fd, dominfo, network, live, dst, checkpoint=False,
node=-1,sock=None):
# enabled. Passing "0" simply uses the defaults compiled into
# libxenguest; see the comments and/or code in xc_linux_save() for
# more information.
- cmd = [xen.util.auxbin.pathTo(XC_SAVE), str(fd),
+ cmd = [xen.util.auxbin.path_bin(XC_SAVE), str(fd),
str(dominfo.getDomid()), "0", "0",
str(int(live) | (int(hvm) << 2)) ]
log.debug("[xc_save]: %s", string.join(cmd))
@@ -299,7 +299,7 @@ def restore(xd, fd, dominfo = None, paused = False,
relocating = False):
superpages = restore_image.superpages
- cmd = map(str, [xen.util.auxbin.pathTo(XC_RESTORE),
+ cmd = map(str, [xen.util.auxbin.path_bin(XC_RESTORE),
fd, dominfo.getDomid(),
store_port, console_port, int(is_hvm), pae, apic,
superpages, 1])
log.debug("[xc_restore]: %s", string.join(cmd))
diff --git a/tools/python/xen/xend/XendConfig.py
b/tools/python/xen/xend/XendConfig.py
index 4a226a7..b205db1 100644
--- a/tools/python/xen/xend/XendConfig.py
+++ b/tools/python/xen/xend/XendConfig.py
@@ -493,11 +493,11 @@ class XendConfig(dict):
if self.is_hvm() or self.has_rfb():
if 'device_model' not in self['platform']:
- self['platform']['device_model'] = auxbin.pathTo("qemu-dm")
+ self['platform']['device_model'] = auxbin.path_bin("qemu-dm")
# device_model may be set to 'qemu-dm' or 'stubdom-dm' w/o a path
if os.path.dirname(self['platform']['device_model']) == "":
self['platform']['device_model'] = \
- auxbin.pathTo(self['platform']['device_model'])
+ auxbin.path_bin(self['platform']['device_model'])
# If the device_model is not set the os.path.exists() would raise
# an exception so we return our error message instead if applicable
if not self['platform']['device_model']:
@@ -528,14 +528,14 @@ class XendConfig(dict):
# Old configs may have hvmloader set as PV_kernel param
if self.has_key('PV_kernel') and self['PV_kernel'] != '':
if self['PV_kernel'] == 'hvmloader':
- self['PV_kernel'] = auxbin.pathTo("hvmloader")
+ self['PV_kernel'] = auxbin.path_bin("hvmloader")
self['platform']['loader'] = self['PV_kernel']
self['PV_kernel'] = ''
else:
- self['platform']['loader'] = auxbin.pathTo("hvmloader")
+ self['platform']['loader'] = auxbin.path_bin("hvmloader")
log.debug("Loader is %s" % str(self['platform']['loader']))
elif self['platform']['loader'] == 'hvmloader':
- self['platform']['loader'] = auxbin.pathTo("hvmloader")
+ self['platform']['loader'] = auxbin.path_bin("hvmloader")
if not os.path.exists(self['platform']['loader']):
raise VmError("kernel '%s' not found" %
str(self['platform']['loader']))
@@ -1653,7 +1653,7 @@ class XendConfig(dict):
# is invoked for pvfb services
if 'device_model' not in target['platform']:
target['platform']['device_model'] = \
- auxbin.pathTo("qemu-dm")
+ auxbin.path_bin("qemu-dm")
# Finally, if we are a pvfb, we need to make a vkbd
# as well that is not really exposed to Xen API
diff --git a/tools/python/xen/xend/XendDomainInfo.py
b/tools/python/xen/xend/XendDomainInfo.py
index e9d3e7e..5b0f8b3 100644
--- a/tools/python/xen/xend/XendDomainInfo.py
+++ b/tools/python/xen/xend/XendDomainInfo.py
@@ -3239,7 +3239,7 @@ class XendDomainInfo:
else:
# Boot using bootloader
if not blexec or blexec == 'pygrub':
- blexec = auxbin.pathTo('pygrub')
+ blexec = auxbin.path_boot('pygrub')
blcfg = None
disks = [x for x in self.info['vbd_refs']
diff --git a/tools/python/xen/xend/image.py b/tools/python/xen/xend/image.py
index 832c168..7acd9aa 100644
--- a/tools/python/xen/xend/image.py
+++ b/tools/python/xen/xend/image.py
@@ -264,7 +264,7 @@ class ImageHandler:
# Return a list of cmd line args to the device models based on the
# xm config file
def parseDeviceModelArgs(self, vmConfig):
- ret = ["-domain-name", str(self.vm.info['name_label'])]
+ ret = ["-xen-domid", "%d" % self.vm.getDomid(), "-xen-attach",
"-name", "%s" % str(self.vm.info['name_label']), "-m", "%d" %
(self.getRequiredInitialReservation() / 1024)]
xen_extended_power_mgmt = int(vmConfig['platform'].get(
'xen_extended_power_mgmt', 0))
@@ -281,10 +281,6 @@ class ImageHandler:
ret.append('-nographic')
return ret
- vram = str(vmConfig['platform'].get('videoram',4))
- ret.append('-videoram')
- ret.append(vram)
-
vnc_config = {}
has_vnc = int(vmConfig['platform'].get('vnc', 0)) != 0
has_sdl = int(vmConfig['platform'].get('sdl', 0)) != 0
@@ -353,13 +349,10 @@ class ImageHandler:
vnclisten = vnc_config.get('vnclisten',
XendOptions.instance().get_vnclisten_address())
- vncdisplay = int(vnc_config.get('vncdisplay', 0))
+ vncdisplay = int(vnc_config.get('vncdisplay', self.vm.getDomid() +
5900))
ret.append('-vnc')
ret.append("%s:%s%s" % (vnclisten, vncdisplay, vncopts))
- if int(vnc_config.get('vncunused', 1)) != 0:
- ret.append('-vncunused')
-
if has_sdl:
ret.append('-sdl')
if int(vmConfig['platform'].get('opengl', opengl)) != 1 :
@@ -381,7 +374,7 @@ class ImageHandler:
def getDeviceModelArgs(self, restore = False):
args = [self.device_model]
- args = args + ([ "-d", "%d" % self.vm.getDomid() ])
+ args = args + ([ "-xen-domid", "%d" % self.vm.getDomid() ])
args = args + self.dmargs
return args
diff --git a/tools/python/xen/xm/create.py b/tools/python/xen/xm/create.py
index 22841aa..592b44f 100644
--- a/tools/python/xen/xm/create.py
+++ b/tools/python/xen/xm/create.py
@@ -1121,7 +1121,7 @@ def make_config(vals):
config_image = configure_image(vals)
if vals.bootloader:
if vals.bootloader == "pygrub":
- vals.bootloader = auxbin.pathTo(vals.bootloader)
+ vals.bootloader = auxbin.path_boot(vals.bootloader)
config.append(['bootloader', vals.bootloader])
if vals.bootargs:
--
1.9.2
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |