From b1e7807711837a93dfea3bb9ee18eaf2fd80633f Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Thu, 10 Feb 2022 15:50:34 +0100 Subject: [PATCH] ch_driver: Don't lock driver when looking up domains There is no need to lock whole driver when accessing virDomainObjList. Those APIs were specifically tailored to be thread safe (when we were dropping QEMU driver lock). Don't resurrect old history. Signed-off-by: Michal Privoznik Reviewed-by: Tim Wiederhake --- src/ch/ch_driver.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/ch/ch_driver.c b/src/ch/ch_driver.c index 7c3b45ca2f..2ed33c3446 100644 --- a/src/ch/ch_driver.c +++ b/src/ch/ch_driver.c @@ -363,11 +363,9 @@ chDomainUndefine(virDomainPtr dom) static int chDomainIsActive(virDomainPtr dom) { - virCHDriver *driver = dom->conn->privateData; virDomainObj *vm; int ret = -1; - chDriverLock(driver); if (!(vm = virCHDomainObjFromDomain(dom))) goto cleanup; @@ -378,7 +376,6 @@ static int chDomainIsActive(virDomainPtr dom) cleanup: virDomainObjEndAPI(&vm); - chDriverUnlock(driver); return ret; } @@ -636,9 +633,7 @@ static virDomainPtr chDomainLookupByID(virConnectPtr conn, virDomainObj *vm; virDomainPtr dom = NULL; - chDriverLock(driver); vm = virDomainObjListFindByID(driver->domains, id); - chDriverUnlock(driver); if (!vm) { virReportError(VIR_ERR_NO_DOMAIN, @@ -663,9 +658,7 @@ static virDomainPtr chDomainLookupByName(virConnectPtr conn, virDomainObj *vm; virDomainPtr dom = NULL; - chDriverLock(driver); vm = virDomainObjListFindByName(driver->domains, name); - chDriverUnlock(driver); if (!vm) { virReportError(VIR_ERR_NO_DOMAIN, @@ -690,9 +683,7 @@ static virDomainPtr chDomainLookupByUUID(virConnectPtr conn, virDomainObj *vm; virDomainPtr dom = NULL; - chDriverLock(driver); vm = virDomainObjListFindByUUID(driver->domains, uuid); - chDriverUnlock(driver); if (!vm) { char uuidstr[VIR_UUID_STRING_BUFLEN];