Merge remote-tracking branch 'origin/4.17'

This commit is contained in:
Rohit Yadav 2022-12-22 22:55:15 +05:30
commit fab4fc2a14
2 changed files with 10 additions and 9 deletions

View File

@ -2629,7 +2629,8 @@ public class LibvirtComputingResource extends ServerResourceBase implements Serv
if (VirtualMachine.Type.User.equals(vmTO.getType())) {
cmd.setFeatures(_cpuFeatures);
}
setCpuTopology(cmd, vcpus, vmTO.getDetails());
int vCpusInDef = vmTO.getVcpuMaxLimit() == null ? vcpus : vmTO.getVcpuMaxLimit();
setCpuTopology(cmd, vCpusInDef, vmTO.getDetails());
return cmd;
}
@ -4749,7 +4750,7 @@ public class LibvirtComputingResource extends ServerResourceBase implements Serv
return false;
}
private void setCpuTopology(CpuModeDef cmd, int vcpus, Map<String, String> details) {
private void setCpuTopology(CpuModeDef cmd, int vCpusInDef, Map<String, String> details) {
if (!enableManuallySettingCpuTopologyOnKvmVm) {
s_logger.debug(String.format("Skipping manually setting CPU topology on VM's XML due to it is disabled in agent.properties {\"property\": \"%s\", \"value\": %s}.",
AgentProperties.ENABLE_MANUALLY_SETTING_CPU_TOPOLOGY_ON_KVM_VM.getName(), enableManuallySettingCpuTopologyOnKvmVm));
@ -4760,19 +4761,19 @@ public class LibvirtComputingResource extends ServerResourceBase implements Serv
if (details != null) {
final String coresPerSocket = details.get(VmDetailConstants.CPU_CORE_PER_SOCKET);
final int intCoresPerSocket = NumbersUtil.parseInt(coresPerSocket, numCoresPerSocket);
if (intCoresPerSocket > 0 && vcpus % intCoresPerSocket == 0) {
if (intCoresPerSocket > 0 && vCpusInDef % intCoresPerSocket == 0) {
numCoresPerSocket = intCoresPerSocket;
}
}
if (numCoresPerSocket <= 0) {
if (vcpus % 6 == 0) {
if (vCpusInDef % 6 == 0) {
numCoresPerSocket = 6;
} else if (vcpus % 4 == 0) {
} else if (vCpusInDef % 4 == 0) {
numCoresPerSocket = 4;
}
}
if (numCoresPerSocket > 0) {
cmd.setTopology(numCoresPerSocket, vcpus / numCoresPerSocket);
cmd.setTopology(numCoresPerSocket, vCpusInDef / numCoresPerSocket);
}
}

View File

@ -78,7 +78,7 @@ class TestCreateTemplateWithChecksum(cloudstackTestCase):
if "vmware" in self.hypervisor.lower():
self.test_template = registerTemplate.registerTemplateCmd()
self.test_template = registerTemplate.registerTemplateCmd()
self.test_template.checksum = "{SHA-1}" + "3c00872599c6e1e46a358aac51080db88266cf5c"
self.test_template.checksum = "{SHA-1}" + "8b82224fd3c6429b6914f32d8339e650770c7526"
self.test_template.hypervisor = self.hypervisor
self.test_template.zoneid = self.zone.id
self.test_template.name = 'test sha-2333'
@ -86,8 +86,8 @@ class TestCreateTemplateWithChecksum(cloudstackTestCase):
self.test_template.url = "http://dl.openvm.eu/cloudstack/macchinina/x86_64/macchinina-vmware.ova"
self.test_template.format = "OVA"
self.test_template.ostypeid = self.getOsType("Other Linux (64-bit)")
self.md5 = "27f3c56a8c7ec7b2f3ff2199f7078006"
self.sha256 = "a7b04c1eb507f3f5de844bda352df1ea5e20335b465409493ca6ae07dfd0a158"
self.md5 = "b4e8bff3882b23175974e692533b4381"
self.sha256 = "e1dffca3c3ab545a753cb42d838a341624cf25841d1bcf3d1e45556c9fce7cf3"
if "xen" in self.hypervisor.lower():
self.test_template = registerTemplate.registerTemplateCmd()