Acked-by: Alin Gabriel Serdean <aserd...@cloudbasesolutions.com>
> -----Mesaj original----- > De la: dev [mailto:dev-boun...@openvswitch.org] În numele Nithin Raju > Trimis: Wednesday, November 18, 2015 6:14 PM > Către: dev@openvswitch.org > Subiect: [ovs-dev] [PATCH 4/6 v2] datapath-windows: nuke port # argument > in IP helper > > Port # doesn't make much sense since it has not been computed yet. > > Also, get rid of OVS_DEFAULT_PORT_NO and use > OVS_DPPORT_NUMBER_INVALID instead. > > Signed-off-by: Nithin Raju <nit...@vmware.com> > --- > datapath-windows/ovsext/Actions.c | 2 +- > datapath-windows/ovsext/BufferMgmt.c | 12 +++++++----- datapath- > windows/ovsext/DpInternal.h | 2 -- > datapath-windows/ovsext/IpHelper.c | 13 ++++++------- > datapath-windows/ovsext/IpHelper.h | 2 +- > datapath-windows/ovsext/Switch.c | 1 - > datapath-windows/ovsext/User.c | 4 ++-- > datapath-windows/ovsext/Vport.c | 2 +- > 8 files changed, 18 insertions(+), 20 deletions(-) > > diff --git a/datapath-windows/ovsext/Actions.c b/datapath- > windows/ovsext/Actions.c > index ce592b3..e902983 100644 > --- a/datapath-windows/ovsext/Actions.c > +++ b/datapath-windows/ovsext/Actions.c > @@ -291,7 +291,7 @@ OvsDetectTunnelPkt(OvsForwardingContext > *ovsFwdCtx, > * If the packet will not be encapsulated, consume the tunnel context > * by clearing it. > */ > - if (ovsFwdCtx->srcVportNo != OVS_DEFAULT_PORT_NO) { > + if (ovsFwdCtx->srcVportNo != OVS_DPPORT_NUMBER_INVALID) { > > POVS_VPORT_ENTRY vport = OvsFindVportByPortNo( > ovsFwdCtx->switchContext, ovsFwdCtx->srcVportNo); diff --git > a/datapath-windows/ovsext/BufferMgmt.c b/datapath- > windows/ovsext/BufferMgmt.c > index ab7a18e..7ec073b 100644 > --- a/datapath-windows/ovsext/BufferMgmt.c > +++ b/datapath-windows/ovsext/BufferMgmt.c > @@ -88,6 +88,7 @@ > #include "Flow.h" > #include "Checksum.h" > #include "PacketParser.h" > +#include "Vport.h" > > /* > * -------------------------------------------------------------------------- > @@ -418,7 +419,7 @@ OvsAllocateFixSizeNBL(PVOID ovsContext, > > OvsInitNBLContext(ctx, OVS_BUFFER_FROM_FIX_SIZE_POOL | > OVS_BUFFER_PRIVATE_FORWARD_CONTEXT, size, > - OVS_DEFAULT_PORT_NO); > + OVS_DPPORT_NUMBER_INVALID); > line = __LINE__; > allocate_done: > OVS_LOG_LOUD("Allocate Fix NBL: %p, line: %d", nbl, line); @@ -531,7 > +532,7 @@ OvsAllocateVariableSizeNBL(PVOID ovsContext, > OvsInitNBLContext(ctx, OVS_BUFFER_PRIVATE_MDL | > OVS_BUFFER_PRIVATE_DATA | > OVS_BUFFER_PRIVATE_FORWARD_CONTEXT | > OVS_BUFFER_FROM_ZERO_SIZE_POOL, > - size, OVS_DEFAULT_PORT_NO); > + size, OVS_DPPORT_NUMBER_INVALID); > > OVS_LOG_LOUD("Allocate variable size NBL: %p", nbl); > return nbl; > @@ -583,7 +584,8 @@ OvsInitExternalNBLContext(PVOID ovsContext, > * we use first nb to decide whether we need advance or retreat during > * complete. > */ > - OvsInitNBLContext(ctx, flags, NET_BUFFER_DATA_LENGTH(nb), > OVS_DEFAULT_PORT_NO); > + OvsInitNBLContext(ctx, flags, NET_BUFFER_DATA_LENGTH(nb), > + OVS_DPPORT_NUMBER_INVALID); > return ctx; > } > > @@ -799,7 +801,7 @@ OvsPartialCopyNBL(PVOID ovsContext, > > srcNb = NET_BUFFER_LIST_FIRST_NB(nbl); > OvsInitNBLContext(dstCtx, flags, NET_BUFFER_DATA_LENGTH(srcNb) - > copySize, > - OVS_DEFAULT_PORT_NO); > + OVS_DPPORT_NUMBER_INVALID); > > InterlockedIncrement((LONG volatile *)&srcCtx->refCount); > > @@ -1053,7 +1055,7 @@ OvsFullCopyNBL(PVOID ovsContext, > OVS_BUFFER_PRIVATE_FORWARD_CONTEXT; > > OvsInitNBLContext(dstCtx, flags, NET_BUFFER_DATA_LENGTH(firstNb), > - OVS_DEFAULT_PORT_NO); > + OVS_DPPORT_NUMBER_INVALID); > > #ifdef DBG > OvsDumpNetBufferList(nbl); > diff --git a/datapath-windows/ovsext/DpInternal.h b/datapath- > windows/ovsext/DpInternal.h > index 4b58ae8..466a33a 100644 > --- a/datapath-windows/ovsext/DpInternal.h > +++ b/datapath-windows/ovsext/DpInternal.h > @@ -294,8 +294,6 @@ typedef struct _OVS_EVENT_ENTRY { > UINT32 type; > } OVS_EVENT_ENTRY, *POVS_EVENT_ENTRY; > > -#define OVS_DEFAULT_PORT_NO 0xffffffff > -#define OVS_DEFAULT_EVENT_STATUS 0xffffffff > > typedef struct _OVS_EVENT_STATUS { > uint32_t numberEntries; > diff --git a/datapath-windows/ovsext/IpHelper.c b/datapath- > windows/ovsext/IpHelper.c > index de0d457..8126222 100644 > --- a/datapath-windows/ovsext/IpHelper.c > +++ b/datapath-windows/ovsext/IpHelper.c > @@ -38,7 +38,7 @@ KSTART_ROUTINE OvsStartIpHelper; > * queued. > */ > static BOOLEAN ovsInternalIPConfigured; > -static UINT32 ovsInternalPortNo; > +static BOOLEAN ovsInternalAdapterUp; > static GUID ovsInternalNetCfgId; > static MIB_IF_ROW2 ovsInternalRow; > static MIB_IPINTERFACE_ROW ovsInternalIPRow; @@ -1059,7 +1059,7 @@ > VOID > OvsInternalAdapterDown(VOID) > { > NdisAcquireSpinLock(&ovsIpHelperLock); > - ovsInternalPortNo = OVS_DEFAULT_PORT_NO; > + ovsInternalAdapterUp = FALSE; > ovsInternalIPConfigured = FALSE; > NdisReleaseSpinLock(&ovsIpHelperLock); > > @@ -1070,8 +1070,7 @@ OvsInternalAdapterDown(VOID) > > > VOID > -OvsInternalAdapterUp(UINT32 portNo, > - GUID *netCfgInstanceId) > +OvsInternalAdapterUp(GUID *netCfgInstanceId) > { > POVS_IP_HELPER_REQUEST request; > > @@ -1088,7 +1087,7 @@ OvsInternalAdapterUp(UINT32 portNo, > request->command = OVS_IP_HELPER_INTERNAL_ADAPTER_UP; > > NdisAcquireSpinLock(&ovsIpHelperLock); > - ovsInternalPortNo = portNo; > + ovsInternalAdapterUp = TRUE; > InsertHeadList(&ovsIpHelperRequestList, &request->link); > ovsNumIpHelperRequests++; > if (ovsNumIpHelperRequests == 1) { > @@ -1160,7 +1159,7 @@ > OvsEnqueueIpHelperRequest(POVS_IP_HELPER_REQUEST request) > > NdisAcquireSpinLock(&ovsIpHelperLock); > > - if (ovsInternalPortNo == OVS_DEFAULT_PORT_NO || > + if (ovsInternalAdapterUp == FALSE || > ovsInternalIPConfigured == FALSE) { > NdisReleaseSpinLock(&ovsIpHelperLock); > OvsFreeMemoryWithTag(request, OVS_IPHELPER_POOL_TAG); @@ - > 1554,7 +1553,7 @@ OvsInitIpHelper(NDIS_HANDLE ndisFilterHandle) > RtlZeroMemory(&ovsInternalIPRow, sizeof (MIB_IPINTERFACE_ROW)); > ovsInternalIP = 0; > > - ovsInternalPortNo = OVS_DEFAULT_PORT_NO; > + ovsInternalAdapterUp = FALSE; > > InitializeListHead(&ovsSortedIPNeighList); > > diff --git a/datapath-windows/ovsext/IpHelper.h b/datapath- > windows/ovsext/IpHelper.h > index 19702a2..8562f86 100644 > --- a/datapath-windows/ovsext/IpHelper.h > +++ b/datapath-windows/ovsext/IpHelper.h > @@ -114,7 +114,7 @@ typedef struct _OVS_IP_HELPER_THREAD_CONTEXT { > NTSTATUS OvsInitIpHelper(NDIS_HANDLE ndisFilterHandle); VOID > OvsCleanupIpHelper(VOID); > > -VOID OvsInternalAdapterUp(UINT32 portNo, GUID *netCfgInstanceId); > +VOID OvsInternalAdapterUp(GUID *netCfgInstanceId); > VOID OvsInternalAdapterDown(VOID); > > NTSTATUS OvsFwdIPHelperRequest(PNET_BUFFER_LIST nbl, UINT32 inPort, > diff --git a/datapath-windows/ovsext/Switch.c b/datapath- > windows/ovsext/Switch.c > index 6ddf5dc..4d9cfda 100644 > --- a/datapath-windows/ovsext/Switch.c > +++ b/datapath-windows/ovsext/Switch.c > @@ -564,7 +564,6 @@ OvsActivateSwitch(POVS_SWITCH_CONTEXT > switchContext) > OvsClearAllSwitchVports(switchContext); > goto cleanup; > } > - // OvsPostEvent(OVS_DEFAULT_PORT_NO, > OVS_DEFAULT_EVENT_STATUS); > > cleanup: > if (status != NDIS_STATUS_SUCCESS) { diff --git a/datapath- > windows/ovsext/User.c b/datapath-windows/ovsext/User.c index > 7828687..42af7f3 100644 > --- a/datapath-windows/ovsext/User.c > +++ b/datapath-windows/ovsext/User.c > @@ -434,7 +434,7 @@ OvsExecuteDpIoctl(OvsPacketExecute *execute) > NdisAcquireRWLockRead(gOvsSwitchContext->dispatchLock, > &lockState, 0); > ndisStatus = OvsActionsExecute(gOvsSwitchContext, NULL, pNbl, > vport ? vport->portNo : > - OVS_DEFAULT_PORT_NO, > + > + OVS_DPPORT_NUMBER_INVALID, > > NDIS_SEND_FLAGS_SWITCH_DESTINATION_GROUP, > &key, NULL, &layers, actions, > execute->actionsLen); @@ -1208,4 > +1208,4 @@ > OvsReadPacketCmdHandler(POVS_USER_PARAMS_CONTEXT usrParamsCtx, > status = OvsReadDpIoctl(instance->fileObject, usrParamsCtx- > >outputBuffer, > usrParamsCtx->outputLength, replyLen); > return status; > -} > \ No newline at end of file > +} > diff --git a/datapath-windows/ovsext/Vport.c b/datapath- > windows/ovsext/Vport.c index 48845da..388920e 100644 > --- a/datapath-windows/ovsext/Vport.c > +++ b/datapath-windows/ovsext/Vport.c > @@ -447,7 +447,7 @@ HvConnectNic(POVS_SWITCH_CONTEXT > switchContext, > NdisReleaseRWLock(switchContext->dispatchLock, &lockState); > > if (nicParam->NicType == NdisSwitchNicTypeInternal) { > - OvsInternalAdapterUp(portNo, &nicParam->NetCfgInstanceId); > + OvsInternalAdapterUp(&nicParam->NetCfgInstanceId); > } > > done: > -- > 1.8.5.6 > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev