From a81db8a100d24a8cb949f37e4341299edb6f0f81 Mon Sep 17 00:00:00 2001 From: Kelven Yang Date: Tue, 31 Jan 2012 16:46:56 -0800 Subject: [PATCH] rootDiskController option should only be applied to root volumes --- .../vmware/resource/VmwareResource.java | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java b/core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java index cc4a09458f9..d4f8a6b33cf 100755 --- a/core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java +++ b/core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java @@ -1400,15 +1400,20 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa if (vol.getType() == Volume.Type.ISO) { controllerKey = ideControllerKey; } else { - if(vmSpec.getDetails() != null && vmSpec.getDetails().get(VmDetailConstants.ROOK_DISK_CONTROLLER) != null) - { - if(vmSpec.getDetails().get(VmDetailConstants.ROOK_DISK_CONTROLLER).equalsIgnoreCase("scsi")) - controllerKey = scsiControllerKey; - else - controllerKey = ideControllerKey; - } else { - controllerKey = scsiControllerKey; - } + if(vol.getType() == Volume.Type.ROOT) { + if(vmSpec.getDetails() != null && vmSpec.getDetails().get(VmDetailConstants.ROOK_DISK_CONTROLLER) != null) + { + if(vmSpec.getDetails().get(VmDetailConstants.ROOK_DISK_CONTROLLER).equalsIgnoreCase("scsi")) + controllerKey = scsiControllerKey; + else + controllerKey = ideControllerKey; + } else { + controllerKey = scsiControllerKey; + } + } else { + // DATA volume always use SCSI device + controllerKey = scsiControllerKey; + } } if (vol.getType() != Volume.Type.ISO) {