This is an automated email from the ASF dual-hosted git repository.
nvazquez pushed a commit to branch 4.15
in repository https://gitbox.apache.org/repos/asf/cloudstack.git
The following commit(s) were added to refs/heads/4.15 by this push:
new 0a2a524 vmware: get recommended disk controller only when root or
data disk controller is osdefault (#5258)
0a2a524 is described below
commit 0a2a524e261a373ee9df1f2c7cfd4ba2580ea677
Author: Wei Zhou <[email protected]>
AuthorDate: Sun Aug 15 23:36:01 2021 +0200
vmware: get recommended disk controller only when root or data disk
controller is osdefault (#5258)
* vmware: get recommended disk controller only when root or data disk
controller is osdefault
* #5258: fix NPE when template OS is 'Other SUSE Linux(64-bit)'
* server: skip zone check for PERHOST iso during attachIso
Hypervisor tools ISO - vmware-toools.iso, xs-tools.iso are marked as
PERHOST in DB. They are active but not downloaded to the secondary storages and
hence no template-zone entry.
Skips the template-zone check for such templates.
Fixes #5265
Signed-off-by: Abhishek Kumar <[email protected]>
* inverted check
Co-authored-by: Abhishek Kumar <[email protected]>
---
.../com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java | 9 +++------
.../java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java | 2 +-
2 files changed, 4 insertions(+), 7 deletions(-)
diff --git
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
index c5e2fe5..e35c37d 100644
---
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
+++
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/HypervisorHostHelper.java
@@ -1527,14 +1527,11 @@ public class HypervisorHostHelper {
VmwareHelper.setBasicVmConfig(vmConfig, cpuCount, cpuSpeedMHz,
cpuReservedMHz, memoryMB, memoryReserveMB, guestOsIdentifier, limitCpuUse,
false);
- String recommendedController =
host.getRecommendedDiskController(guestOsIdentifier);
String newRootDiskController = controllerInfo.first();
String newDataDiskController = controllerInfo.second();
- if (DiskControllerType.getType(controllerInfo.first()) ==
DiskControllerType.osdefault) {
- newRootDiskController = recommendedController;
- }
- if (DiskControllerType.getType(controllerInfo.second()) ==
DiskControllerType.osdefault) {
- newDataDiskController = recommendedController;
+ String recommendedController = null;
+ if (VmwareHelper.isControllerOsRecommended(newRootDiskController) ||
VmwareHelper.isControllerOsRecommended(newDataDiskController)) {
+ recommendedController =
host.getRecommendedDiskController(guestOsIdentifier);
}
Pair<String, String> updatedControllerInfo = new Pair<String,
String>(newRootDiskController, newDataDiskController);
diff --git
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java
index 0d01931..0fdaa7d 100644
---
a/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java
+++
b/vmware-base/src/main/java/com/cloud/hypervisor/vmware/mo/VirtualMachineMO.java
@@ -3341,7 +3341,7 @@ public class VirtualMachineMO extends BaseMO {
virtualHardwareVersion = getVirtualHardwareVersion();
// Check if guest operating system supports cpu hotadd
- if (guestOsDescriptor.isSupportsCpuHotAdd()) {
+ if (guestOsDescriptor != null &&
guestOsDescriptor.isSupportsCpuHotAdd()) {
guestOsSupportsCpuHotAdd = true;
}