diff --git a/tools/python/xen/xend/XendDomainInfo.py b/tools/python/xen/xend/XendDomainInfo.py index 4e01041342..029021f13e 100644 --- a/tools/python/xen/xend/XendDomainInfo.py +++ b/tools/python/xen/xend/XendDomainInfo.py @@ -138,7 +138,7 @@ def dom_get(dom): if domlist and dom == domlist[0]['dom']: return domlist[0] return None - + class XendDomainInfo: """Virtual machine object.""" @@ -754,7 +754,7 @@ class XendDomainInfo: @param dev_config: device configuration """ dev_type = sxp.name(dev_config) - dev = self.createDevice(self, dev_config, change=True) + dev = self.createDevice(dev_type, dev_config, change=True) self.config.append(['device', dev.getConfig()]) return dev.sxpr() diff --git a/tools/python/xen/xend/server/controller.py b/tools/python/xen/xend/server/controller.py index f399503d7f..a1446c3093 100755 --- a/tools/python/xen/xend/server/controller.py +++ b/tools/python/xen/xend/server/controller.py @@ -142,7 +142,7 @@ class DevControllerTable: def createDevController(self, type, vm, recreate=False): cls = self.getDevControllerClass(type) if not cls: - raise XendError("unknown device type: " + type) + raise XendError("unknown device type: " + str(type)) return cls.createDevController(vm, recreate=recreate) def getDevControllerTable(): @@ -283,6 +283,8 @@ class DevController: dev.attach(recreate=recreate, change=change) dev.exportToDB() + return dev + def configureDevice(self, id, config, change=False): """Reconfigure an existing device. May be defined in subclass.""" @@ -325,7 +327,7 @@ class DevController: def getDevice(self, id, error=False): dev = self.devices.get(id) if error and not dev: - raise XendError("invalid device id: " + id) + raise XendError("invalid device id: " + str(id)) return dev def getDeviceIds(self):