| commit | 96cabf7e4368e4e8778c27f65596a9914f09752a | [log] [tgz] | 
|---|---|---|
| author | Nicolas Vazquez <nicovazquez90@gmail.com> | Tue Sep 16 07:19:20 2025 -0300 | 
| committer | GitHub <noreply@github.com> | Tue Sep 16 15:49:20 2025 +0530 | 
| tree | 6aa75e503b84f46d5b0f9750ead2cf11781e19aa | |
| parent | 23a53e213ebc5d401a0c7a914ad6680a7984524d [diff] | 
[KVM] Allow passing the OS type machine for KVM XML domains through VM setting (#11569) * [KVM] Allow passing OS type machine to XML domains
diff --git a/api/src/main/java/com/cloud/vm/VmDetailConstants.java b/api/src/main/java/com/cloud/vm/VmDetailConstants.java index ea5d209..596c861 100644 --- a/api/src/main/java/com/cloud/vm/VmDetailConstants.java +++ b/api/src/main/java/com/cloud/vm/VmDetailConstants.java
@@ -41,6 +41,7 @@ String KVM_VNC_PORT = "kvm.vnc.port"; String KVM_VNC_ADDRESS = "kvm.vnc.address"; String KVM_VNC_PASSWORD = "kvm.vnc.password"; + String KVM_GUEST_OS_MACHINE_TYPE = "kvm.guest.os.machine.type"; // KVM specific, custom virtual GPU hardware String VIDEO_HARDWARE = "video.hardware";
diff --git a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java index 42aa113..11d7aa3 100644 --- a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java +++ b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java
@@ -3306,6 +3306,9 @@ } } guest.setIothreads(customParams.containsKey(VmDetailConstants.IOTHREADS)); + if (customParams.containsKey(VmDetailConstants.KVM_GUEST_OS_MACHINE_TYPE)) { + guest.setMachineType(customParams.get(VmDetailConstants.KVM_GUEST_OS_MACHINE_TYPE)); + } } guest.setUuid(uuid); if(!isGuestS390x()) {