diff -r 937c821b2310 tools/python/xen/xend/XendConfig.py --- a/tools/python/xen/xend/XendConfig.py Wed Dec 06 20:03:53 2006 -0500 +++ b/tools/python/xen/xend/XendConfig.py Wed Dec 06 20:03:58 2006 -0500 @@ -708,6 +708,7 @@ class XendConfig(dict): else: self[sxp_arg] = val + _set_cfg_if_exists('bootloader') _set_cfg_if_exists('shadow_memory') _set_cfg_if_exists('security') _set_cfg_if_exists('features') diff -r 937c821b2310 tools/python/xen/xend/XendDomainInfo.py --- a/tools/python/xen/xend/XendDomainInfo.py Wed Dec 06 20:03:53 2006 -0500 +++ b/tools/python/xen/xend/XendDomainInfo.py Wed Dec 06 20:08:24 2006 -0500 @@ -1327,7 +1327,7 @@ class XendDomainInfo: # if we have a boot loader but no image, then we need to set things # up by running the boot loader non-interactively - if self.info.get('bootloader') and self.info.get('image'): + if self.info.get('bootloader'): self._configureBootloader() if not self._infoIsSet('image'): @@ -1533,11 +1533,17 @@ class XendDomainInfo: if not self.info.get('bootloader'): return blcfg = None + # FIXME: this assumes that we want to use the first disk device - for devuuid, (devtype, devinfo) in self.info.all_devices_sxpr(): + for (devtype, devinfo) in self.info.all_devices_sxpr(): if not devtype or not devinfo or devtype not in ('vbd', 'tap'): continue - disk = devinfo.get('uname') + disk = None + for param in devinfo: + if param[0] == 'uname': + disk = param[1] + break + if disk is None: continue fn = blkdev_uname_to_file(disk)