summaryrefslogtreecommitdiffstats
path: root/nova/virt
diff options
context:
space:
mode:
authorVishvananda Ishaya <vishvananda@gmail.com>2011-03-09 21:43:35 +0000
committerVishvananda Ishaya <vishvananda@gmail.com>2011-03-09 21:43:35 +0000
commit3e61bf9963d7e98e8152d2eacfc4461d8cda309c (patch)
tree015bf22d5e66d16233d142702222b438d978b22e /nova/virt
parentddeab2da30bb2f74109854d982c6681e78e7a4ce (diff)
remove the semaphore when there is no one waiting on it
Diffstat (limited to 'nova/virt')
-rw-r--r--nova/virt/libvirt_conn.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/nova/virt/libvirt_conn.py b/nova/virt/libvirt_conn.py
index ecef7950a..69249ed57 100644
--- a/nova/virt/libvirt_conn.py
+++ b/nova/virt/libvirt_conn.py
@@ -539,6 +539,8 @@ class LibvirtConnection(object):
with LibvirtConnection._image_sems[fname]:
if not os.path.exists(base):
fn(target=base, *args, **kwargs)
+ if not LibvirtConnection._image_sems[fname].locked():
+ del LibvirtConnection._image_sems[fname]
if cow:
utils.execute('qemu-img create -f qcow2 -o '