Alona Kaplan has uploaded a new change for review. Change subject: engine: Dual mode shouldn't be sent to vdsm on hotplug nic ......................................................................
engine: Dual mode shouldn't be sent to vdsm on hotplug nic Since 3.0 vdsm doesn't support Dual mode on vm interface. When running a vm, VmInfoBuilder takes care of replacing the interface type in case it is Dual mode. This patch adds the same treatment to hot plug nic. Bug-Url: https://bugzilla.redhat.com/1079992 Bug-Url: https://bugzilla.redhat.com/1083959 Change-Id: Ifdc878a5f8391659a58cf25f2f9137c944689ce4 Signed-off-by: Alona Kaplan <[email protected]> --- M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/HotPlugNicVDSCommand.java M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilder.java 2 files changed, 15 insertions(+), 22 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/51/26451/1 diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/HotPlugNicVDSCommand.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/HotPlugNicVDSCommand.java index 81297cc..35f53a0 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/HotPlugNicVDSCommand.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/HotPlugNicVDSCommand.java @@ -47,7 +47,9 @@ addAddress(map, vmDevice.getAddress()); map.put(VdsProperties.SpecParams, vmDevice.getSpecParams()); - map.put(VdsProperties.NIC_TYPE, VmInterfaceType.forValue(nic.getType()).getInternalName()); + map.put(VdsProperties.NIC_TYPE, + VmInfoBuilder.evaluateInterfaceType(VmInterfaceType.forValue(nic.getType()), getParameters().getVm() + .getHasAgent())); map.put(VdsProperties.DeviceId, vmDevice.getId().getDeviceId().toString()); if (vmDevice.getBootOrder() > 0) { diff --git a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilder.java b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilder.java index fceeccc..affae71 100644 --- a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilder.java +++ b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VmInfoBuilder.java @@ -368,33 +368,24 @@ if (vmInterface.getType() != null) { ifaceType = VmInterfaceType.forValue(vmInterface.getType()); } - if (ifaceType == VmInterfaceType.rtl8139_pv) { - if (vm.getHasAgent()) { - addNetworkInterfaceProperties(struct, - vmInterface, - vmDevice, - VmInterfaceType.pv.name(), - vm.getVdsGroupCompatibilityVersion()); - } else { - addNetworkInterfaceProperties(struct, - vmInterface, - vmDevice, - VmInterfaceType.rtl8139.name(), - vm.getVdsGroupCompatibilityVersion()); - } - } else { - addNetworkInterfaceProperties(struct, - vmInterface, - vmDevice, - ifaceType.getInternalName(), - vm.getVdsGroupCompatibilityVersion()); - } + + addNetworkInterfaceProperties(struct, + vmInterface, + vmDevice, + VmInfoBuilder.evaluateInterfaceType(ifaceType, vm.getHasAgent()), + vm.getVdsGroupCompatibilityVersion()); devices.add(struct); addToManagedDevices(vmDevice); } } } + public static String evaluateInterfaceType(VmInterfaceType ifaceType, boolean vmHasAgent) { + return ifaceType == VmInterfaceType.rtl8139_pv + ? (vmHasAgent ? VmInterfaceType.pv.name() : VmInterfaceType.rtl8139.name()) + : ifaceType.getInternalName(); + } + @Override protected void buildVmSoundDevices() { buildVmDevicesFromDb(VmDeviceGeneralType.SOUND, true); -- To view, visit http://gerrit.ovirt.org/26451 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifdc878a5f8391659a58cf25f2f9137c944689ce4 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.4 Gerrit-Owner: Alona Kaplan <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
