File virtman-clone-disk-newpool-fix.patch of Package virt-manager.1480
References: bnc#910929
Call tick_send_signals immediately in the case where a new pool was created
in the act of cloning a disk that didn't previously have one. If not called
immediately, the new pool doesn't get registered in time (via the idle_add)
for the code to notice and so attempts to create another pool for the cloned
disk at the same location as the original. This produces a libvirt error.
Index: virt-manager-1.0.1/virtManager/connection.py
===================================================================
--- virt-manager-1.0.1.orig/virtManager/connection.py
+++ virt-manager-1.0.1/virtManager/connection.py
@@ -1290,7 +1290,11 @@ class vmmConnection(vmmGObject):
for name in newNodedevs:
self.emit("nodedev-added", name)
- self.idle_add(tick_send_signals)
+ if newPools:
+ # Call immediately to update pools before proceeding
+ tick_send_signals()
+ else:
+ self.idle_add(tick_send_signals)
if len(self.vms) < len(vms):
# Allow time for tick_send_signals to run
time.sleep(.1)