mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-02 20:02:29 +01:00
vmware: while plugging in nics get existing sorted nic devices (#4336)
In large environments, with VR having multiple nics when plugging in nic, it must get existing nics by sorted device ID otherwise it may cause incorrect nic plugging/order. Fixes #4246 Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
parent
d657ef7d5b
commit
4f8b88baea
@ -1180,7 +1180,7 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa
|
||||
}
|
||||
|
||||
// find a usable device number in VMware environment
|
||||
VirtualDevice[] nicDevices = vmMo.getNicDevices();
|
||||
VirtualDevice[] nicDevices = vmMo.getSortedNicDevices();
|
||||
int deviceNumber = -1;
|
||||
for (VirtualDevice device : nicDevices) {
|
||||
if (device.getUnitNumber() > deviceNumber)
|
||||
@ -1380,7 +1380,7 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa
|
||||
int nicIndex = allocPublicNicIndex(vmMo);
|
||||
|
||||
try {
|
||||
VirtualDevice[] nicDevices = vmMo.getNicDevices();
|
||||
VirtualDevice[] nicDevices = vmMo.getSortedNicDevices();
|
||||
|
||||
VirtualEthernetCard device = (VirtualEthernetCard) nicDevices[nicIndex];
|
||||
|
||||
|
||||
@ -3060,6 +3060,10 @@ public class VirtualMachineMO extends BaseMO {
|
||||
return nics;
|
||||
}
|
||||
|
||||
public VirtualDevice[] getSortedNicDevices() throws Exception {
|
||||
return getNicDevices(true).toArray(new VirtualDevice[0]);
|
||||
}
|
||||
|
||||
public VirtualDevice[] getNicDevices() throws Exception {
|
||||
return getNicDevices(false).toArray(new VirtualDevice[0]);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user