mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
Don't lose the image settings when rebooting domains. This fixes recent HVM
reboot problems -- we were passing 0 to shadow_mem_control, because Xend was treating the domain as PV. Signed-off-by: Ewan Mellor <ewan@xensource.com>
This commit is contained in:
1 parent
66e92e7a48
commit
04c280baf7
1 file changed
+11
-8
@@ -299,7 +299,7 @@ class XendConfig(dict):
|
||||
self._sxp_to_xapi_unsupported(sxp_obj)
|
||||
elif xapi:
|
||||
self.update_with_xenapi_config(xapi)
|
||||
self._add_xapi_unsupported()
|
||||
self._add_xapi_unsupported(xapi)
|
||||
elif dominfo:
|
||||
# output from xc.domain_getinfo
|
||||
self._dominfo_to_xapi(dominfo)
|
||||
@@ -728,19 +728,22 @@ class XendConfig(dict):
|
||||
_set_cfg_if_exists('up_time')
|
||||
_set_cfg_if_exists('status') # TODO, deprecated
|
||||
|
||||
def _add_xapi_unsupported(self):
|
||||
def _add_xapi_unsupported(self, xapi_dict):
|
||||
"""Updates the configuration object with entries that are not
|
||||
officially supported by the Xen API but is required for
|
||||
the rest of Xend to function.
|
||||
"""
|
||||
|
||||
# populate image
|
||||
hvm = self['HVM_boot'] != ''
|
||||
self['image']['type'] = hvm and 'hvm' or 'linux'
|
||||
if hvm:
|
||||
self['image']['hvm'] = {}
|
||||
for xapi, cfgapi in XENAPI_HVM_CFG.items():
|
||||
self['image']['hvm'][cfgapi] = self[xapi]
|
||||
if 'image' in xapi_dict:
|
||||
self['image'].update(xapi_dict['image'])
|
||||
else:
|
||||
hvm = self['HVM_boot'] != ''
|
||||
self['image']['type'] = hvm and 'hvm' or 'linux'
|
||||
if hvm:
|
||||
self['image']['hvm'] = {}
|
||||
for xapi, cfgapi in XENAPI_HVM_CFG.items():
|
||||
self['image']['hvm'][cfgapi] = self[xapi]
|
||||
|
||||
|
||||
def _get_old_state_string(self):
|
||||
|
||||