[libvirt] [PATCH] Unlock the storage volume object after looking it up

Introduced by c930410. https://bugzilla.redhat.com/show_bug.cgi?id=980676 --- src/storage/storage_driver.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c index 02f7b69..d15b3d4 100644 --- a/src/storage/storage_driver.c +++ b/src/storage/storage_driver.c @@ -1380,15 +1380,16 @@ storageVolLookupByKey(virConnectPtr conn, virStorageVolDefFindByKey(driver->pools.objs[i], key); if (vol) { - if (virStorageVolLookupByKeyEnsureACL(conn, driver->pools.objs[i]->def, vol) < 0) + if (virStorageVolLookupByKeyEnsureACL(conn, driver->pools.objs[i]->def, vol) < 0) { + virStoragePoolObjUnlock(driver->pools.objs[i]); goto cleanup; + } ret = virGetStorageVol(conn, driver->pools.objs[i]->def->name, vol->name, vol->key, NULL, NULL); - goto cleanup; } } virStoragePoolObjUnlock(driver->pools.objs[i]); @@ -1440,15 +1441,16 @@ storageVolLookupByPath(virConnectPtr conn, VIR_FREE(stable_path); if (vol) { - if (virStorageVolLookupByPathEnsureACL(conn, driver->pools.objs[i]->def, vol) < 0) + if (virStorageVolLookupByPathEnsureACL(conn, driver->pools.objs[i]->def, vol) < 0) { + virStoragePoolObjUnlock(driver->pools.objs[i]); goto cleanup; + } ret = virGetStorageVol(conn, driver->pools.objs[i]->def->name, vol->name, vol->key, NULL, NULL); - goto cleanup; } } virStoragePoolObjUnlock(driver->pools.objs[i]); -- 1.8.1.5

On 07/04/13 14:53, Ján Tomko wrote:
Introduced by c930410.
https://bugzilla.redhat.com/show_bug.cgi?id=980676 --- src/storage/storage_driver.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
The control flow is really tricky in those functions. ACK. PEter

On 07/04/2013 03:05 PM, Peter Krempa wrote:
On 07/04/13 14:53, Ján Tomko wrote:
Introduced by c930410.
https://bugzilla.redhat.com/show_bug.cgi?id=980676 --- src/storage/storage_driver.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
The control flow is really tricky in those functions.
ACK.
Thanks, now pushed. Jan
participants (2)
-
Ján Tomko
-
Peter Krempa