54 lines
2.1 KiB
Diff
54 lines
2.1 KiB
Diff
|
# HG changeset patch
|
||
|
# User Ewan Mellor <ewan@xensource.com>
|
||
|
# Date 1167743041 0
|
||
|
# Node ID 7cd6c032689eca5509a1b8cffaaa50b3f45f5765
|
||
|
# Parent 711c31232d71608fe4ea9f4f22ca2620d3faf8ff
|
||
|
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>
|
||
|
|
||
|
diff -r 711c31232d71 -r 7cd6c032689e tools/python/xen/xend/XendConfig.py
|
||
|
--- a/tools/python/xen/xend/XendConfig.py Tue Jan 02 10:57:50 2007 +0000
|
||
|
+++ b/tools/python/xen/xend/XendConfig.py Tue Jan 02 13:04:01 2007 +0000
|
||
|
@@ -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):
|