domain: Only regenerate target if we really need to

Certain different devices like scsi, usb, and sata use the same
target prefix. In those cases, just reuse it.
This commit is contained in:
Cole Robinson 2012-01-29 15:38:33 -05:00
parent 18f68bb581
commit a0dee00678

View File

@ -581,14 +581,18 @@ class vmmDomain(vmmLibvirtObject):
return self._redefine_device(change, devobj)
def define_disk_bus(self, devobj, newval):
def change(editdev):
diffbus = (editdev.bus != newval)
oldprefix = editdev.get_target_prefix()[0]
oldbus = editdev.bus
editdev.bus = newval
if not diffbus:
if oldbus == newval:
return
editdev.address.clear()
if oldprefix == editdev.get_target_prefix()[0]:
return
used = []
disks = (self.get_disk_devices() +
self.get_disk_devices(inactive=True))