mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-08 22:15:21 +00:00
qemu: process: Move handling of non-backing files into qemuDomainDetermineDiskChain
Until now we would skip loading of the backing chain for files which don't support backing chains only when starting up the VM. Move the check from qemuProcessPrepareHostStorage with some adaptations so that's always applied.
This commit is contained in:
parent
b19710b9b6
commit
24e47ee2b9
@ -6372,6 +6372,23 @@ qemuDomainDetermineDiskChain(virQEMUDriverPtr driver,
|
||||
if (force_probe)
|
||||
virStorageSourceBackingStoreClear(src);
|
||||
|
||||
/* There is no need to check the backing chain for disks without backing
|
||||
* support */
|
||||
if (virStorageSourceIsLocalStorage(src) &&
|
||||
src->format > VIR_STORAGE_FILE_NONE &&
|
||||
src->format < VIR_STORAGE_FILE_BACKING) {
|
||||
|
||||
if (!virFileExists(src->path)) {
|
||||
if (report_broken)
|
||||
virStorageFileReportBrokenChain(errno, src, disk->src);
|
||||
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* skip to the end of the chain if there is any */
|
||||
while (virStorageSourceHasBacking(src)) {
|
||||
if (report_broken &&
|
||||
|
@ -5555,20 +5555,10 @@ qemuProcessPrepareHostStorage(virQEMUDriverPtr driver,
|
||||
for (i = vm->def->ndisks; i > 0; i--) {
|
||||
size_t idx = i - 1;
|
||||
virDomainDiskDefPtr disk = vm->def->disks[idx];
|
||||
virStorageFileFormat format = virDomainDiskGetFormat(disk);
|
||||
|
||||
if (virStorageSourceIsEmpty(disk->src))
|
||||
continue;
|
||||
|
||||
/* There is no need to check the backing chain for disks
|
||||
* without backing support, the fact that the file exists is
|
||||
* more than enough */
|
||||
if (virStorageSourceIsLocalStorage(disk->src) &&
|
||||
format > VIR_STORAGE_FILE_NONE &&
|
||||
format < VIR_STORAGE_FILE_BACKING &&
|
||||
virFileExists(virDomainDiskGetSource(disk)))
|
||||
continue;
|
||||
|
||||
if (qemuDomainDetermineDiskChain(driver, vm, disk, true, true) >= 0)
|
||||
continue;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user