]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
Use virDomainObjEndAPI() more
authorMichal Privoznik <mprivozn@redhat.com>
Wed, 10 Nov 2021 08:52:23 +0000 (09:52 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 11 Nov 2021 10:27:16 +0000 (11:27 +0100)
Instead of explicit virObjectUnlock(obj) + virObjectUnref(obj)
combo the virDomainObjEndAPI() can be used.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
src/conf/virdomainobjlist.c
src/libxl/libxl_driver.c

index 5c40d697dc37e9408963d008c758e4b6c2f1c3f1..ff6c4c1b4f5c8770d768a3f7916f75bc569e401d 100644 (file)
@@ -119,11 +119,8 @@ virDomainObjListFindByID(virDomainObjList *doms,
     virObjectRWUnlock(doms);
     if (obj) {
         virObjectLock(obj);
-        if (obj->removing) {
-            virObjectUnlock(obj);
-            virObjectUnref(obj);
-            obj = NULL;
-        }
+        if (obj->removing)
+            virDomainObjEndAPI(&obj);
     }
 
     return obj;
@@ -165,11 +162,8 @@ virDomainObjListFindByUUID(virDomainObjList *doms,
     obj = virDomainObjListFindByUUIDLocked(doms, uuid);
     virObjectRWUnlock(doms);
 
-    if (obj && obj->removing) {
-        virObjectUnlock(obj);
-        virObjectUnref(obj);
-        obj = NULL;
-    }
+    if (obj && obj->removing)
+        virDomainObjEndAPI(&obj);
 
     return obj;
 }
@@ -208,11 +202,8 @@ virDomainObjListFindByName(virDomainObjList *doms,
     obj = virDomainObjListFindByNameLocked(doms, name);
     virObjectRWUnlock(doms);
 
-    if (obj && obj->removing) {
-        virObjectUnlock(obj);
-        virObjectUnref(obj);
-        obj = NULL;
-    }
+    if (obj && obj->removing)
+        virDomainObjEndAPI(&obj);
 
     return obj;
 }
@@ -953,8 +944,7 @@ virDomainObjListFilter(virDomainObj ***list,
         if (vm->removing ||
             (filter && !filter(conn, vm->def)) ||
             !virDomainObjMatchFilter(vm, flags)) {
-            virObjectUnlock(vm);
-            virObjectUnref(vm);
+            virDomainObjEndAPI(&vm);
             VIR_DELETE_ELEMENT(*list, i, *nvms);
             continue;
         }
index 3f67cda9e93e565461d927bc33875b825a4fd758..39da10983e2035b080cc5de26156746245ae05a7 100644 (file)
@@ -461,8 +461,7 @@ libxlReconnectDomain(virDomainObj *vm,
 
  cleanup:
     libxl_dominfo_dispose(&d_info);
-    virObjectUnlock(vm);
-    virObjectUnref(vm);
+    virDomainObjEndAPI(&vm);
     virObjectUnref(cfg);
     return ret;