qemu: Simplify allowing access to storage file for block copy

One code path open-coded qemuDomainStorageSourceChainAccessAllow badly
and also did not integrate with the locking code.

Replace the separate calls with qemuDomainStorageSourceChainAccessAllow
which does everything internally.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2019-05-14 17:35:45 +02:00
parent 56fe0d6d29
commit 32ec5fee02

View File

@ -17778,9 +17778,7 @@ qemuDomainBlockCopyCommon(virDomainObjPtr vm,
/* note that we don't really know whether a part of the backing chain
* is shared so rolling this back is not as easy. Thus we do it only
* if there's a backing chain */
if (qemuDomainNamespaceSetupDisk(vm, mirror) < 0 ||
qemuSetupImageChainCgroup(vm, mirror) < 0 ||
qemuSecuritySetImageLabel(driver, vm, mirror, true) < 0)
if (qemuDomainStorageSourceChainAccessAllow(driver, vm, mirror) < 0)
goto endjob;
} else {
if (qemuDomainStorageSourceAccessAllow(driver, vm, mirror, false, true) < 0)