[1] The NDIS port state should always reflect the port state maintained by NDIS so it should never be directly updated. [2] Remove the "port name" field as we use the "friendly name" instead.
Signed-off-by: Eitan Eliahu <elia...@vmware.com> --- datapath-windows/ovsext/Vport.c | 17 ++++++++--------- datapath-windows/ovsext/Vport.h | 1 - 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/datapath-windows/ovsext/Vport.c b/datapath-windows/ovsext/Vport.c index a46d49f..85b6dac 100644 --- a/datapath-windows/ovsext/Vport.c +++ b/datapath-windows/ovsext/Vport.c @@ -115,10 +115,14 @@ HvTeardownPort(POVS_SWITCH_CONTEXT switchContext, vport = OvsFindVportByPortIdAndNicIndex(switchContext, portParam->PortId, 0); if (vport) { - /* add assertion here - */ - vport->portState = NdisSwitchPortStateTeardown; - vport->ovsState = OVS_STATE_PORT_TEAR_DOWN; + vport->portState = portParam->PortState; + if (portParam->PortState == NdisSwitchPortStateTeardown) { + vport->ovsState = OVS_STATE_PORT_TEAR_DOWN; + } + else { + /* Expect Teardown state to be set */ + ASSERT(portParam->PortState == NdisSwitchPortStateTeardown); + } } else { OVS_LOG_WARN("Vport not present."); } @@ -620,8 +624,6 @@ OvsInitVportWithPortParam(POVS_VPORT_ENTRY vport, vport->ovsType = OVS_VPORT_TYPE_NETDEV; break; } - RtlCopyMemory(&vport->hvPortName, &portParam->PortName, - sizeof (NDIS_SWITCH_PORT_NAME)); /* For external and internal ports, 'portFriendlyName' is overwritten * later. */ RtlCopyMemory(&vport->portFriendlyName, &portParam->PortFriendlyName, @@ -709,9 +711,6 @@ OvsInitPhysNicVport(POVS_VPORT_ENTRY physExtVport, physExtVport->isBridgeInternal = FALSE; physExtVport->nicIndex = (NDIS_SWITCH_NIC_INDEX)physNicIndex; - RtlCopyMemory(&physExtVport->hvPortName, &virtExtVport->hvPortName, - sizeof (NDIS_SWITCH_PORT_NAME)); - /* 'portFriendlyName' is overwritten later. */ RtlCopyMemory(&physExtVport->portFriendlyName, &virtExtVport->portFriendlyName, diff --git a/datapath-windows/ovsext/Vport.h b/datapath-windows/ovsext/Vport.h index b4e4fca..79b0d87 100644 --- a/datapath-windows/ovsext/Vport.h +++ b/datapath-windows/ovsext/Vport.h @@ -106,7 +106,6 @@ typedef struct _OVS_VPORT_ENTRY { UINT8 currMacAddress[MAC_ADDRESS_LEN]; UINT8 vmMacAddress[MAC_ADDRESS_LEN]; - NDIS_SWITCH_PORT_NAME hvPortName; IF_COUNTED_STRING portFriendlyName; NDIS_SWITCH_NIC_NAME nicName; NDIS_VM_NAME vmName; -- 1.9.4.msysgit.0 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev