mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
uml: s/virDomainObjListFindByID/virDomainObjListFindByUUID/
ListFindByID() still requires to step through items in the hash table (in the worst case scenario through all of them), lock each one and compare whether we've found what we're looking for. This is suboptimal as locking a domain object means we need to wait for the current API running over the object to finish. Unfortunately, we can't drop the function completely because we have this public API virDomainLookupByID which we can't drop. Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
8728a56563
commit
152896ca7d
@ -1659,7 +1659,7 @@ static int umlDomainShutdownFlags(virDomainPtr dom,
|
||||
virCheckFlags(0, -1);
|
||||
|
||||
umlDriverLock(driver);
|
||||
vm = virDomainObjListFindByID(driver->domains, dom->id);
|
||||
vm = virDomainObjListFindByUUID(driver->domains, dom->uuid);
|
||||
umlDriverUnlock(driver);
|
||||
if (!vm) {
|
||||
virReportError(VIR_ERR_NO_DOMAIN,
|
||||
@ -1704,7 +1704,7 @@ umlDomainDestroyFlags(virDomainPtr dom,
|
||||
virCheckFlags(0, -1);
|
||||
|
||||
umlDriverLock(driver);
|
||||
vm = virDomainObjListFindByID(driver->domains, dom->id);
|
||||
vm = virDomainObjListFindByUUID(driver->domains, dom->uuid);
|
||||
if (!vm) {
|
||||
virReportError(VIR_ERR_NO_DOMAIN,
|
||||
_("no domain with matching id %d"), dom->id);
|
||||
|
Loading…
x
Reference in New Issue
Block a user