Skip to content

Commit 952b242

Browse files
authored
kvm: Do not set backing file format of DATADISK in vm start/migration (#4800)
* kvm: Do not rebase DATADISK in vm start/migration * #4800: add comment and use isBlank
1 parent 9b1d1e6 commit 952b242

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4266,7 +4266,11 @@ public void setBackingFileFormat(String volPath) {
42664266
Map<String, String> info = qemu.info(file);
42674267
String backingFilePath = info.get(new String("backing_file"));
42684268
String backingFileFormat = info.get(new String("backing_file_format"));
4269-
if (org.apache.commons.lang.StringUtils.isEmpty(backingFileFormat)) {
4269+
if (org.apache.commons.lang.StringUtils.isNotBlank(backingFilePath)
4270+
&& org.apache.commons.lang.StringUtils.isBlank(backingFileFormat)) {
4271+
// VMs which are created in CloudStack 4.14 and before cannot be started or migrated
4272+
// in latest Linux distributions due to missing backing file format
4273+
// Please refer to https://libvirt.org/kbase/backing_chains.html#vm-refuses-to-start-due-to-misconfigured-backing-store-format
42704274
s_logger.info("Setting backing file format of " + volPath);
42714275
QemuImgFile backingFile = new QemuImgFile(backingFilePath);
42724276
Map<String, String> backingFileinfo = qemu.info(backingFile);

0 commit comments

Comments
 (0)