mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
xend: Better support for legacy HVM config with hvmloader configured
via the 'kernel' config option: 1. Look for any string containing 'hvmloader'. 2. The 'kernel' option must be scrubbed to avoid taking PV-kernel-loading paths during later guest setup. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
1 parent
25c2136e0d
commit
81375c4b06
2 files changed
+5
-7
No files matched your search
@@ -406,15 +406,13 @@ class XendConfig(dict):
|
||||
|
||||
if self.is_hvm():
|
||||
if 'loader' not in self['platform']:
|
||||
log.debug("No loader present")
|
||||
# Old configs may have hvmloder set as PV_kernel param,
|
||||
# so lets migrate them....
|
||||
if self['PV_kernel'] == "/usr/lib/xen/boot/hvmloader":
|
||||
# Old configs may have hvmloader set as PV_kernel param
|
||||
if self.has_key('PV_kernel') and re.search('hvmloader', self['PV_kernel']):
|
||||
self['platform']['loader'] = self['PV_kernel']
|
||||
log.debug("Loader copied from kernel %s" % str(self['platform']['loader']))
|
||||
self['PV_kernel'] = ''
|
||||
else:
|
||||
self['platform']['loader'] = "/usr/lib/xen/boot/hvmloader"
|
||||
log.debug("Loader %s" % str(self['platform']['loader']))
|
||||
log.debug("Loader is %s" % str(self['platform']['loader']))
|
||||
|
||||
# Compatibility hack, can go away soon.
|
||||
if 'soundhw' not in self['platform'] and \
|
||||
|
||||
@@ -455,7 +455,7 @@ class HVMImageHandler(ImageHandler):
|
||||
ret = ImageHandler.parseDeviceModelArgs(self, vmConfig)
|
||||
ret = ret + ['-vcpus', str(self.vm.getVCpuCount())]
|
||||
|
||||
if self.kernel and self.kernel != "/usr/lib/xen/boot/hvmloader":
|
||||
if self.kernel:
|
||||
log.debug("kernel = %s", self.kernel)
|
||||
ret = ret + ['-kernel', self.kernel]
|
||||
if self.ramdisk:
|
||||
|
||||