xend: Fix handling of pci creation failure in device_create().
authorKeir Fraser <keir.fraser@citrix.com>
Mon, 4 Aug 2008 10:11:24 +0000 (11:11 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Mon, 4 Aug 2008 10:11:24 +0000 (11:11 +0100)
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
tools/python/xen/xend/XendDomainInfo.py

index 336dae0afaf0ec1312093e7e1868dc6eef41190a..485b5035dcf12ff256b4d86e0738cff40b16b9b4 100644 (file)
@@ -638,7 +638,10 @@ class XendDomainInfo:
                 self._waitForDevice(dev_type, devid)
             except VmError, ex:
                 del self.info['devices'][dev_uuid]
-                if dev_type == 'tap':
+                if dev_type == 'pci':
+                    for dev in dev_config_dict['devs']:
+                        XendAPIStore.deregister(dev['uuid'], 'DPCI')
+                elif dev_type == 'tap':
                     self.info['vbd_refs'].remove(dev_uuid)
                 else:
                     self.info['%s_refs' % dev_type].remove(dev_uuid)