[virt-tools-list] [virt-manager PATCH 1/7] details: Disallow removing the scsi controller if disks attached to it

Lin Ma lma at suse.com
Mon Nov 6 12:52:03 UTC 2017


Through virt-manager, After we removed a virtio-scsi controller which
virtual disks still attach to it, Libvirt will add a LSI scsi controller
for this guest automatically and trigger a lifecycle event, virt-manager
updates and shows this new scsi controller in details panel once it got
the lifecycle event.

It may confuse user that a LSI scsi controller occurs while one removes
the virtio-scsi controller.

This patch prevents removing a scsi controller if any disks attaching to
it.

Signed-off-by: Lin Ma <lma at suse.com>
---
 virtManager/details.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/virtManager/details.py b/virtManager/details.py
index a51f5623..0923f4b0 100644
--- a/virtManager/details.py
+++ b/virtManager/details.py
@@ -3000,6 +3000,12 @@ class vmmDetails(vmmGObjectUI):
             can_remove = False
         if dev.type == "pci":
             can_remove = False
+        if dev.type == "scsi":
+            for disk in self.vm.get_disk_devices(inactive=True):
+                if (dev.type == disk.bus and
+                    dev.index == disk.address.controller):
+                    can_remove = False
+                    break
         self.widget("config-remove").set_sensitive(can_remove)
 
         type_label = dev.pretty_desc()
-- 
2.14.0




More information about the virt-tools-list mailing list