From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jim Fehlig Subject: [PATCH] xend: don't drop device config on domain start failure Date: Wed, 21 Apr 2010 19:55:37 -0600 Message-ID: <4BCFAC99.8010102@novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------090400060202010609000203" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------090400060202010609000203 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit If domain creation in xend fails before devices are configured, e.g. insufficient memory, device config is dropped from xend's managed domain config. # cat /var/lib/xend/domains/70c7bace-af44-1343-1e8f-a6e149632f4a/config.sxp | grep device (device_model /usr/lib/xen/bin/qemu-dm) (device_model /usr/lib/xen/bin/qemu-dm) (device (device (vkbd (backend 0))) (device (device (device # xm start test1 Error: I need 4194816 KiB, but dom0_min_mem is 524288 and shrinking to 524288 KiB would leave only 3568556 KiB free. # cat /var/lib/xend/domains/70c7bace-af44-1343-1e8f-a6e149632f4a/config.sxp | grep device (device_model /usr/lib/xen/bin/qemu-dm) (device_model /usr/lib/xen/bin/qemu-dm) Once xend is restarted, the domain's devices are lost. The attached patch fixes a bug in XendConfig where only the device controller was consulted for device configuration. Regards, Jim Signed-off-by: Jim Fehlig --------------090400060202010609000203 Content-Type: text/x-patch; name="xend-preserve-devs.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="xend-preserve-devs.patch" Index: xen-4.0.0-testing/tools/python/xen/xend/XendConfig.py =================================================================== --- xen-4.0.0-testing.orig/tools/python/xen/xend/XendConfig.py +++ xen-4.0.0-testing/tools/python/xen/xend/XendConfig.py @@ -1173,8 +1173,8 @@ class XendConfig(dict): config.append(['VDI', dev_cfg.get('VDI', '')]) sxpr.append(['device', config]) + found = True - found = True except: log.exception("dumping sxp from device controllers") pass --------------090400060202010609000203 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------090400060202010609000203--