From nobody Wed May 14 20:04:12 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1520511709733953.6763630261588; Thu, 8 Mar 2018 04:21:49 -0800 (PST) Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5A806734; Thu, 8 Mar 2018 12:21:48 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 0DBF918EC2; Thu, 8 Mar 2018 12:21:48 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 7EBE4181B9FD; Thu, 8 Mar 2018 12:21:47 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id w28CLkD8017221 for ; Thu, 8 Mar 2018 07:21:46 -0500 Received: by smtp.corp.redhat.com (Postfix) id 20E535C578; Thu, 8 Mar 2018 12:21:46 +0000 (UTC) Received: from mx1.redhat.com (ext-mx08.extmail.prod.ext.phx2.redhat.com [10.5.110.32]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 17C695C259 for ; Thu, 8 Mar 2018 12:21:41 +0000 (UTC) Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 7D741C0587F4 for ; Thu, 8 Mar 2018 12:21:38 +0000 (UTC) Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w28CLTu0102792 for ; Thu, 8 Mar 2018 07:21:38 -0500 Received: from e06smtp10.uk.ibm.com (e06smtp10.uk.ibm.com [195.75.94.106]) by mx0a-001b2d01.pphosted.com with ESMTP id 2gk4apt2br-1 (version=TLSv1.2 cipher=AES256-SHA256 bits=256 verify=NOT) for ; Thu, 08 Mar 2018 07:21:33 -0500 Received: from localhost by e06smtp10.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 8 Mar 2018 12:21:03 -0000 Received: from b06cxnps4075.portsmouth.uk.ibm.com (9.149.109.197) by e06smtp10.uk.ibm.com (192.168.101.140) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Thu, 8 Mar 2018 12:21:01 -0000 Received: from d06av23.portsmouth.uk.ibm.com (d06av23.portsmouth.uk.ibm.com [9.149.105.59]) by b06cxnps4075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w28CL1ci53412042 for ; Thu, 8 Mar 2018 12:21:01 GMT Received: from d06av23.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B65A8A4053 for ; Thu, 8 Mar 2018 12:13:56 +0000 (GMT) Received: from d06av23.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 93436A4051 for ; Thu, 8 Mar 2018 12:13:56 +0000 (GMT) Received: from marc-ibm.boeblingen.de.ibm.com (unknown [9.152.224.51]) by d06av23.portsmouth.uk.ibm.com (Postfix) with ESMTP for ; Thu, 8 Mar 2018 12:13:56 +0000 (GMT) From: Marc Hartmayer To: Date: Thu, 8 Mar 2018 13:20:36 +0100 In-Reply-To: <20180308122043.15608-1-mhartmay@linux.vnet.ibm.com> References: <20180308122043.15608-1-mhartmay@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18030812-0040-0000-0000-0000041C61D0 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18030812-0041-0000-0000-0000261F7CA0 Message-Id: <20180308122043.15608-14-mhartmay@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2018-03-08_07:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=3 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1803080146 X-Greylist: Sender passed SPF test, Sender IP whitelisted by DNSRBL, ACL 207 matched, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Thu, 08 Mar 2018 12:21:38 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Thu, 08 Mar 2018 12:21:38 +0000 (UTC) for IP:'148.163.156.1' DOMAIN:'mx0a-001b2d01.pphosted.com' HELO:'mx0a-001b2d01.pphosted.com' FROM:'mhartmay@linux.vnet.ibm.com' RCPT:'' X-RedHat-Spam-Score: -0.701 (RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2) 148.163.156.1 mx0a-001b2d01.pphosted.com 148.163.156.1 mx0a-001b2d01.pphosted.com X-Scanned-By: MIMEDefang 2.78 on 10.5.110.32 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 13/20] test: Convert testDriver to virObjectLockable X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Thu, 08 Mar 2018 12:21:48 +0000 (UTC) X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" The test driver state (@testDriver) uses it's own reference counting and locking implementation. Instead of doing that, convert @testDriver into a virObjectLockable and use the provided functionalities. Signed-off-by: Marc Hartmayer Reviewed-by: Boris Fiuczynski Reviewed-by: John Ferlan --- src/test/test_driver.c | 207 ++++++++++++++++++++++-----------------------= ---- 1 file changed, 94 insertions(+), 113 deletions(-) diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 3b55453efe00..f1dd11867143 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -94,7 +94,7 @@ typedef struct _testAuth testAuth; typedef struct _testAuth *testAuthPtr; =20 struct _testDriver { - virMutex lock; + virObjectLockable parent; =20 virNodeInfo nodeInfo; virInterfaceObjListPtr ifaces; @@ -127,9 +127,22 @@ typedef struct _testDriver testDriver; typedef testDriver *testDriverPtr; =20 static testDriverPtr defaultPrivconn; -static int defaultConnections; static virMutex defaultLock =3D VIR_MUTEX_INITIALIZER; =20 +static virClassPtr testDriverClass; +static void testDriverDispose(void *obj); +static int testDriverOnceInit(void) +{ + if (!(testDriverClass =3D virClassNew(virClassForObjectLockable(), + "testDriver", + sizeof(testDriver), + testDriverDispose))) + return -1; + + return 0; +} +VIR_ONCE_GLOBAL_INIT(testDriver) + #define TEST_MODEL "i686" #define TEST_EMULATOR "/usr/bin/test-hv" =20 @@ -145,10 +158,9 @@ static const virNodeInfo defaultNodeInfo =3D { }; =20 static void -testDriverFree(testDriverPtr driver) +testDriverDispose(void *obj) { - if (!driver) - return; + testDriverPtr driver =3D obj; =20 virObjectUnref(driver->caps); virObjectUnref(driver->xmlopt); @@ -159,23 +171,9 @@ testDriverFree(testDriverPtr driver) virObjectUnref(driver->pools); virObjectUnref(driver->eventState); virObjectUnref(driver->closeCallback); - virMutexUnlock(&driver->lock); - virMutexDestroy(&driver->lock); - - VIR_FREE(driver); } =20 =20 -static void testDriverLock(testDriverPtr driver) -{ - virMutexLock(&driver->lock); -} - -static void testDriverUnlock(testDriverPtr driver) -{ - virMutexUnlock(&driver->lock); -} - static void testObjectEventQueue(testDriverPtr driver, virObjectEventPtr event) { @@ -408,14 +406,11 @@ testDriverNew(void) testDriverPtr ret; virConnectCloseCallbackDataPtr closeCallback; =20 - if (VIR_ALLOC(ret) < 0) + if (testDriverInitialize() < 0) return NULL; =20 - if (virMutexInit(&ret->lock) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, - "%s", _("cannot initialize mutex")); - goto error; - } + if (!(ret =3D virObjectLockableNew(testDriverClass))) + return NULL; =20 if (!(ret->xmlopt =3D virDomainXMLOptionNew(NULL, NULL, &ns, NULL, NUL= L)) || !(ret->eventState =3D virObjectEventStateNew()) || @@ -437,7 +432,7 @@ testDriverNew(void) return ret; =20 error: - testDriverFree(ret); + virObjectUnref(ret); return NULL; } =20 @@ -1271,7 +1266,7 @@ testOpenFromFile(virConnectPtr conn, const char *file) if (!(privconn =3D testDriverNew())) return VIR_DRV_OPEN_ERROR; =20 - testDriverLock(privconn); + virObjectLock(privconn); conn->privateData =3D privconn; =20 if (!(privconn->caps =3D testBuildCapabilities(conn))) @@ -1288,14 +1283,14 @@ testOpenFromFile(virConnectPtr conn, const char *fi= le) =20 xmlXPathFreeContext(ctxt); xmlFreeDoc(doc); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return VIR_DRV_OPEN_SUCCESS; =20 error: xmlXPathFreeContext(ctxt); xmlFreeDoc(doc); - testDriverFree(privconn); + virObjectUnref(privconn); conn->privateData =3D NULL; return VIR_DRV_OPEN_ERROR; } @@ -1313,8 +1308,8 @@ testOpenDefault(virConnectPtr conn) size_t i; =20 virMutexLock(&defaultLock); - if (defaultConnections++) { - conn->privateData =3D defaultPrivconn; + if (defaultPrivconn) { + conn->privateData =3D virObjectRef(defaultPrivconn); virMutexUnlock(&defaultLock); return VIR_DRV_OPEN_SUCCESS; } @@ -1363,9 +1358,8 @@ testOpenDefault(virConnectPtr conn) return ret; =20 error: - testDriverFree(privconn); + virObjectUnref(privconn); conn->privateData =3D NULL; - defaultConnections--; ret =3D VIR_DRV_OPEN_ERROR; goto cleanup; } @@ -1379,9 +1373,9 @@ testConnectAuthenticate(virConnectPtr conn, ssize_t i; char *username =3D NULL, *password =3D NULL; =20 - testDriverLock(privconn); + virObjectLock(privconn); if (privconn->numAuths =3D=3D 0) { - testDriverUnlock(privconn); + virObjectUnlock(privconn); return 0; } =20 @@ -1423,7 +1417,7 @@ testConnectAuthenticate(virConnectPtr conn, =20 ret =3D 0; cleanup: - testDriverUnlock(privconn); + virObjectUnlock(privconn); VIR_FREE(username); VIR_FREE(password); return ret; @@ -1433,24 +1427,11 @@ testConnectAuthenticate(virConnectPtr conn, static void testDriverCloseInternal(testDriverPtr driver) { - bool dflt =3D false; - - if (driver =3D=3D defaultPrivconn) { - dflt =3D true; - virMutexLock(&defaultLock); - if (--defaultConnections) { - virMutexUnlock(&defaultLock); - return; - } - } - - testDriverLock(driver); - testDriverFree(driver); - - if (dflt) { + virMutexLock(&defaultLock); + bool disposed =3D !virObjectUnref(driver); + if (disposed && driver =3D=3D defaultPrivconn) defaultPrivconn =3D NULL; - virMutexUnlock(&defaultLock); - } + virMutexUnlock(&defaultLock); } =20 =20 @@ -1581,9 +1562,9 @@ static int testNodeGetInfo(virConnectPtr conn, virNodeInfoPtr info) { testDriverPtr privconn =3D conn->privateData; - testDriverLock(privconn); + virObjectLock(privconn); memcpy(info, &privconn->nodeInfo, sizeof(virNodeInfo)); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return 0; } =20 @@ -1591,9 +1572,9 @@ static char *testConnectGetCapabilities(virConnectPtr= conn) { testDriverPtr privconn =3D conn->privateData; char *xml; - testDriverLock(privconn); + virObjectLock(privconn); xml =3D virCapabilitiesFormatXML(privconn->caps); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return xml; } =20 @@ -1628,9 +1609,9 @@ static int testConnectNumOfDomains(virConnectPtr conn) testDriverPtr privconn =3D conn->privateData; int count; =20 - testDriverLock(privconn); + virObjectLock(privconn); count =3D virDomainObjListNumOfDomains(privconn->domains, true, NULL, = NULL); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return count; } @@ -1683,7 +1664,7 @@ testDomainCreateXML(virConnectPtr conn, const char *x= ml, if (flags & VIR_DOMAIN_START_VALIDATE) parse_flags |=3D VIR_DOMAIN_DEF_PARSE_VALIDATE_SCHEMA; =20 - testDriverLock(privconn); + virObjectLock(privconn); if ((def =3D virDomainDefParseString(xml, privconn->caps, privconn->xm= lopt, NULL, parse_flags)) =3D=3D NULL) goto cleanup; @@ -1718,7 +1699,7 @@ testDomainCreateXML(virConnectPtr conn, const char *x= ml, virObjectUnlock(dom); testObjectEventQueue(privconn, event); virDomainDefFree(def); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -2887,7 +2868,7 @@ static int testNodeGetCellsFreeMemory(virConnectPtr c= onn, size_t i; int ret =3D -1; =20 - testDriverLock(privconn); + virObjectLock(privconn); if (startCell >=3D privconn->numCells) { virReportError(VIR_ERR_INVALID_ARG, "%s", _("Range exceeds available cells")); @@ -2902,7 +2883,7 @@ static int testNodeGetCellsFreeMemory(virConnectPtr c= onn, ret =3D i; =20 cleanup: - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -2960,12 +2941,12 @@ testNodeGetFreeMemory(virConnectPtr conn) unsigned int freeMem =3D 0; size_t i; =20 - testDriverLock(privconn); + virObjectLock(privconn); =20 for (i =3D 0; i < privconn->numCells; i++) freeMem +=3D privconn->cells[i].freeMem; =20 - testDriverUnlock(privconn); + virObjectUnlock(privconn); return freeMem; } =20 @@ -3002,7 +2983,7 @@ static int testDomainCreateWithFlags(virDomainPtr dom= ain, unsigned int flags) =20 virCheckFlags(0, -1); =20 - testDriverLock(privconn); + virObjectLock(privconn); =20 if (!(privdom =3D testDomObjFromDomain(domain))) goto cleanup; @@ -3026,7 +3007,7 @@ static int testDomainCreateWithFlags(virDomainPtr dom= ain, unsigned int flags) cleanup: virDomainObjEndAPI(&privdom); testObjectEventQueue(privconn, event); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -3797,9 +3778,9 @@ testInterfaceObjFindByName(testDriverPtr privconn, { virInterfaceObjPtr obj; =20 - testDriverLock(privconn); + virObjectLock(privconn); obj =3D virInterfaceObjListFindByName(privconn->ifaces, name); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (!obj) virReportError(VIR_ERR_NO_INTERFACE, @@ -3816,9 +3797,9 @@ testConnectNumOfInterfaces(virConnectPtr conn) testDriverPtr privconn =3D conn->privateData; int ninterfaces; =20 - testDriverLock(privconn); + virObjectLock(privconn); ninterfaces =3D virInterfaceObjListNumOfInterfaces(privconn->ifaces, t= rue); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ninterfaces; } =20 @@ -3831,10 +3812,10 @@ testConnectListInterfaces(virConnectPtr conn, testDriverPtr privconn =3D conn->privateData; int nnames; =20 - testDriverLock(privconn); + virObjectLock(privconn); nnames =3D virInterfaceObjListGetNames(privconn->ifaces, true, names, maxnames); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return nnames; } @@ -3846,9 +3827,9 @@ testConnectNumOfDefinedInterfaces(virConnectPtr conn) testDriverPtr privconn =3D conn->privateData; int ninterfaces; =20 - testDriverLock(privconn); + virObjectLock(privconn); ninterfaces =3D virInterfaceObjListNumOfInterfaces(privconn->ifaces, f= alse); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ninterfaces; } =20 @@ -3861,10 +3842,10 @@ testConnectListDefinedInterfaces(virConnectPtr conn, testDriverPtr privconn =3D conn->privateData; int nnames; =20 - testDriverLock(privconn); + virObjectLock(privconn); nnames =3D virInterfaceObjListGetNames(privconn->ifaces, false, names, maxnames); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return nnames; } @@ -3899,10 +3880,10 @@ testInterfaceLookupByMACString(virConnectPtr conn, char *ifacenames[] =3D { NULL, NULL }; virInterfacePtr ret =3D NULL; =20 - testDriverLock(privconn); + virObjectLock(privconn); ifacect =3D virInterfaceObjListFindByMACString(privconn->ifaces, mac, ifacenames, 2); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (ifacect =3D=3D 0) { virReportError(VIR_ERR_NO_INTERFACE, @@ -3950,7 +3931,7 @@ testInterfaceChangeBegin(virConnectPtr conn, =20 virCheckFlags(0, -1); =20 - testDriverLock(privconn); + virObjectLock(privconn); if (privconn->transaction_running) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("there is another transaction running.")); @@ -3964,7 +3945,7 @@ testInterfaceChangeBegin(virConnectPtr conn, =20 ret =3D 0; cleanup: - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -3978,7 +3959,7 @@ testInterfaceChangeCommit(virConnectPtr conn, =20 virCheckFlags(0, -1); =20 - testDriverLock(privconn); + virObjectLock(privconn); =20 if (!privconn->transaction_running) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", @@ -3993,7 +3974,7 @@ testInterfaceChangeCommit(virConnectPtr conn, ret =3D 0; =20 cleanup: - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return ret; } @@ -4008,7 +3989,7 @@ testInterfaceChangeRollback(virConnectPtr conn, =20 virCheckFlags(0, -1); =20 - testDriverLock(privconn); + virObjectLock(privconn); =20 if (!privconn->transaction_running) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", @@ -4026,7 +4007,7 @@ testInterfaceChangeRollback(virConnectPtr conn, ret =3D 0; =20 cleanup: - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -4066,7 +4047,7 @@ testInterfaceDefineXML(virConnectPtr conn, =20 virCheckFlags(0, NULL); =20 - testDriverLock(privconn); + virObjectLock(privconn); if ((def =3D virInterfaceDefParseString(xmlStr)) =3D=3D NULL) goto cleanup; =20 @@ -4080,7 +4061,7 @@ testInterfaceDefineXML(virConnectPtr conn, cleanup: virInterfaceDefFree(def); virInterfaceObjEndAPI(&obj); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return ret; } =20 @@ -4184,9 +4165,9 @@ testStoragePoolObjFindByName(testDriverPtr privconn, { virStoragePoolObjPtr obj; =20 - testDriverLock(privconn); + virObjectLock(privconn); obj =3D virStoragePoolObjFindByName(privconn->pools, name); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (!obj) virReportError(VIR_ERR_NO_STORAGE_POOL, @@ -4244,9 +4225,9 @@ testStoragePoolObjFindByUUID(testDriverPtr privconn, virStoragePoolObjPtr obj; char uuidstr[VIR_UUID_STRING_BUFLEN]; =20 - testDriverLock(privconn); + virObjectLock(privconn); obj =3D virStoragePoolObjFindByUUID(privconn->pools, uuid); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (!obj) { virUUIDFormat(uuid, uuidstr); @@ -4312,10 +4293,10 @@ testConnectNumOfStoragePools(virConnectPtr conn) testDriverPtr privconn =3D conn->privateData; int numActive =3D 0; =20 - testDriverLock(privconn); + virObjectLock(privconn); numActive =3D virStoragePoolObjNumOfStoragePools(privconn->pools, conn, true, NULL); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return numActive; } @@ -4329,10 +4310,10 @@ testConnectListStoragePools(virConnectPtr conn, testDriverPtr privconn =3D conn->privateData; int n =3D 0; =20 - testDriverLock(privconn); + virObjectLock(privconn); n =3D virStoragePoolObjGetNames(privconn->pools, conn, true, NULL, names, maxnames); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return n; } @@ -4344,10 +4325,10 @@ testConnectNumOfDefinedStoragePools(virConnectPtr c= onn) testDriverPtr privconn =3D conn->privateData; int numInactive =3D 0; =20 - testDriverLock(privconn); + virObjectLock(privconn); numInactive =3D virStoragePoolObjNumOfStoragePools(privconn->pools, co= nn, false, NULL); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return numInactive; } @@ -4361,10 +4342,10 @@ testConnectListDefinedStoragePools(virConnectPtr co= nn, testDriverPtr privconn =3D conn->privateData; int n =3D 0; =20 - testDriverLock(privconn); + virObjectLock(privconn); n =3D virStoragePoolObjGetNames(privconn->pools, conn, false, NULL, names, maxnames); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return n; } @@ -4380,10 +4361,10 @@ testConnectListAllStoragePools(virConnectPtr conn, =20 virCheckFlags(VIR_CONNECT_LIST_STORAGE_POOLS_FILTERS_ALL, -1); =20 - testDriverLock(privconn); + virObjectLock(privconn); ret =3D virStoragePoolObjListExport(conn, privconn->pools, pools, NULL, flags); - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 return ret; } @@ -4545,7 +4526,7 @@ testStoragePoolCreateXML(virConnectPtr conn, =20 virCheckFlags(0, NULL); =20 - testDriverLock(privconn); + virObjectLock(privconn); if (!(newDef =3D virStoragePoolDefParseString(xml))) goto cleanup; =20 @@ -4596,7 +4577,7 @@ testStoragePoolCreateXML(virConnectPtr conn, virStoragePoolDefFree(newDef); testObjectEventQueue(privconn, event); virStoragePoolObjEndAPI(&obj); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return pool; } =20 @@ -4615,7 +4596,7 @@ testStoragePoolDefineXML(virConnectPtr conn, =20 virCheckFlags(0, NULL); =20 - testDriverLock(privconn); + virObjectLock(privconn); if (!(newDef =3D virStoragePoolDefParseString(xml))) goto cleanup; =20 @@ -4648,7 +4629,7 @@ testStoragePoolDefineXML(virConnectPtr conn, virStoragePoolDefFree(newDef); testObjectEventQueue(privconn, event); virStoragePoolObjEndAPI(&obj); - testDriverUnlock(privconn); + virObjectUnlock(privconn); return pool; } =20 @@ -5050,7 +5031,7 @@ testStorageVolLookupByKey(virConnectPtr conn, .conn =3D conn, .key =3D key, .voldef =3D NULL }; virStorageVolPtr vol =3D NULL; =20 - testDriverLock(privconn); + virObjectLock(privconn); if ((obj =3D virStoragePoolObjListSearch(privconn->pools, testStorageVolLookupByKeyCallba= ck, &data)) && data.voldef) { @@ -5060,7 +5041,7 @@ testStorageVolLookupByKey(virConnectPtr conn, NULL, NULL); virStoragePoolObjEndAPI(&obj); } - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (!vol) virReportError(VIR_ERR_NO_STORAGE_VOL, @@ -5094,7 +5075,7 @@ testStorageVolLookupByPath(virConnectPtr conn, .conn =3D conn, .path =3D path, .voldef =3D NULL }; virStorageVolPtr vol =3D NULL; =20 - testDriverLock(privconn); + virObjectLock(privconn); if ((obj =3D virStoragePoolObjListSearch(privconn->pools, testStorageVolLookupByPathCallb= ack, &data)) && data.voldef) { @@ -5104,7 +5085,7 @@ testStorageVolLookupByPath(virConnectPtr conn, NULL, NULL); virStoragePoolObjEndAPI(&obj); } - testDriverUnlock(privconn); + virObjectUnlock(privconn); =20 if (!vol) virReportError(VIR_ERR_NO_STORAGE_VOL, @@ -6889,7 +6870,7 @@ testConnectRegisterCloseCallback(virConnectPtr conn, testDriverPtr priv =3D conn->privateData; int ret =3D -1; =20 - testDriverLock(priv); + virObjectLock(priv); =20 if (virConnectCloseCallbackDataGetCallback(priv->closeCallback) !=3D N= ULL) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", @@ -6902,7 +6883,7 @@ testConnectRegisterCloseCallback(virConnectPtr conn, ret =3D 0; =20 cleanup: - testDriverUnlock(priv); + virObjectUnlock(priv); return ret; } =20 @@ -6914,7 +6895,7 @@ testConnectUnregisterCloseCallback(virConnectPtr conn, testDriverPtr priv =3D conn->privateData; int ret =3D -1; =20 - testDriverLock(priv); + virObjectLock(priv); =20 if (virConnectCloseCallbackDataGetCallback(priv->closeCallback) !=3D c= b) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", @@ -6926,7 +6907,7 @@ testConnectUnregisterCloseCallback(virConnectPtr conn, ret =3D 0; =20 cleanup: - testDriverUnlock(priv); + virObjectUnlock(priv); return ret; } =20 --=20 2.13.4 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list