From: Peter Krempa Date: Wed, 15 Jul 2020 10:51:40 +0000 (+0200) Subject: qemuDomainGetStorageSourceByDevstr: Look also in 'mirror' chain X-Git-Tag: v6.6.0-rc1~41 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5c52c186fdaaae3e47a6516daabf66ef31fc1bf9;p=thirdparty%2Flibvirt.git qemuDomainGetStorageSourceByDevstr: Look also in 'mirror' chain A disk can have a mirror, look also in its backing chain. Signed-off-by: Peter Krempa Reviewed-by: Eric Blake --- diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index dc17fa093d..1a48a9aa5b 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -11669,11 +11669,16 @@ qemuDomainGetStorageSourceByDevstr(const char *devstr, } if (idx == 0) - src = disk->src; - else - src = virStorageFileChainLookup(disk->src, NULL, NULL, idx, NULL); + return disk->src; + + if ((src = virStorageFileChainLookup(disk->src, NULL, NULL, idx, NULL))) + return src; - return src; + if (disk->mirror && + (src = virStorageFileChainLookup(disk->mirror, NULL, NULL, idx, NULL))) + return src; + + return NULL; }