Skip to content

Commit 1634bde

Browse files
committed
<fix>[kvm]: fix Hygon_Customized CPU mode migration failure
Resolves: ZSTAC-73095 Change-Id: I13353d0358617a789f078bdb27a1516640f09413
1 parent 799a84f commit 1634bde

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

plugin/kvm/src/main/java/org/zstack/kvm/KVMHost.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4469,8 +4469,9 @@ protected void startVm(final VmInstanceSpec spec, final NeedReplyMessage msg, fi
44694469
rootVolume.setCacheMode(rcf.getResourceConfigValue(KVMGlobalConfig.LIBVIRT_CACHE_MODE, spec.getDestRootVolume().getUuid(), String.class));
44704470

44714471
String vmCpuMode = rcf.getResourceConfigValue(KVMGlobalConfig.NESTED_VIRTUALIZATION, spec.getVmInventory().getUuid(), String.class);
4472-
if (vmCpuMode.equals(KVMConstant.CPU_MODE_NONE) || vmCpuMode.equals(KVMConstant.CPU_MODE_HOST_MODEL) || vmCpuMode.equals(KVMConstant.CPU_MODE_HOST_PASSTHROUGH)) {
4473-
cmd.setNestedVirtualization(vmCpuMode);
4472+
if (vmCpuMode.equals(KVMConstant.CPU_MODE_NONE) || vmCpuMode.equals(KVMConstant.CPU_MODE_HOST_MODEL) || vmCpuMode.equals(KVMConstant.CPU_MODE_HOST_PASSTHROUGH) || vmCpuMode.equals(KVMConstant.CPU_MODE_HYGON_CUSTOMIZED)) {
4473+
// For Hygon_Customized, we treat it as host-passthrough during VM start to avoid CPU model mismatch
4474+
cmd.setNestedVirtualization(vmCpuMode.equals(KVMConstant.CPU_MODE_HYGON_CUSTOMIZED) ? KVMConstant.CPU_MODE_HOST_PASSTHROUGH : vmCpuMode);
44744475
} else {
44754476
cmd.setNestedVirtualization(KVMConstant.CPU_MODE_CUSTOM);
44764477
cmd.setVmCpuModel(vmCpuMode);

0 commit comments

Comments
 (0)