summaryrefslogtreecommitdiff
path: root/datapath-windows
diff options
context:
space:
mode:
authorAlin Gabriel Serdean <aserdean@ovn.org>2019-02-27 19:26:46 +0200
committerAlin Gabriel Serdean <aserdean@ovn.org>2019-03-13 13:29:50 +0200
commit228355c5390f42ea8e90fb4b943f4da553400cb7 (patch)
treeebdc21114d40da1381c3d20096e1e265f16de2fb /datapath-windows
parent3cdf29c52d1033cf8cb2f8d6d46fae545ea13b7d (diff)
downloadopenvswitch-228355c5390f42ea8e90fb4b943f4da553400cb7.tar.gz
datapath-windows: Add annotations to find vport functions
Add annotations to find vport functions to check if the dispatch lock is held. Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org> Acked-by: Anand Kumar <kumaranand@vmware.com> Acked-by: Sairam Venugopal <vsairam@vmware.com>
Diffstat (limited to 'datapath-windows')
-rw-r--r--datapath-windows/ovsext/Vport.c7
-rw-r--r--datapath-windows/ovsext/Vport.h5
2 files changed, 11 insertions, 1 deletions
diff --git a/datapath-windows/ovsext/Vport.c b/datapath-windows/ovsext/Vport.c
index bb83c2235..e8c4d7f9b 100644
--- a/datapath-windows/ovsext/Vport.c
+++ b/datapath-windows/ovsext/Vport.c
@@ -135,7 +135,7 @@ HvCreatePort(POVS_SWITCH_CONTEXT switchContext,
* Lookup by port name to see if this port with this name had been added
* (and deleted) previously.
*/
- vport = OvsFindVportByHvNameW(gOvsSwitchContext,
+ vport = OvsFindVportByHvNameW(switchContext,
portParam->PortFriendlyName.String,
portParam->PortFriendlyName.Length);
if (vport && vport->isAbsentOnHv == FALSE) {
@@ -692,6 +692,7 @@ done:
/*
* OVS Vport related functionality.
*/
+_Use_decl_annotations_
POVS_VPORT_ENTRY
OvsFindVportByPortNo(POVS_SWITCH_CONTEXT switchContext,
UINT32 portNo)
@@ -786,6 +787,7 @@ OvsFindTunnelVportByPortType(POVS_SWITCH_CONTEXT switchContext,
return NULL;
}
+_Use_decl_annotations_
POVS_VPORT_ENTRY
OvsFindVportByOvsName(POVS_SWITCH_CONTEXT switchContext,
PSTR name)
@@ -809,6 +811,7 @@ OvsFindVportByOvsName(POVS_SWITCH_CONTEXT switchContext,
}
/* OvsFindVportByHvName: "name" is assumed to be null-terminated */
+_Use_decl_annotations_
POVS_VPORT_ENTRY
OvsFindVportByHvNameW(POVS_SWITCH_CONTEXT switchContext,
PWSTR wsName, SIZE_T wstrSize)
@@ -861,6 +864,7 @@ Cleanup:
return vport;
}
+_Use_decl_annotations_
POVS_VPORT_ENTRY
OvsFindVportByHvNameA(POVS_SWITCH_CONTEXT switchContext,
PSTR name)
@@ -883,6 +887,7 @@ OvsFindVportByHvNameA(POVS_SWITCH_CONTEXT switchContext,
return vport;
}
+_Use_decl_annotations_
POVS_VPORT_ENTRY
OvsFindVportByPortIdAndNicIndex(POVS_SWITCH_CONTEXT switchContext,
NDIS_SWITCH_PORT_ID portId,
diff --git a/datapath-windows/ovsext/Vport.h b/datapath-windows/ovsext/Vport.h
index 7d88f86fb..32cbf8bcc 100644
--- a/datapath-windows/ovsext/Vport.h
+++ b/datapath-windows/ovsext/Vport.h
@@ -122,15 +122,20 @@ typedef struct _OVS_VPORT_ENTRY {
struct _OVS_SWITCH_CONTEXT;
+_Requires_lock_held_(switchContext->dispatchLock)
POVS_VPORT_ENTRY OvsFindVportByPortNo(POVS_SWITCH_CONTEXT switchContext,
UINT32 portNo);
/* "name" is null-terminated */
+_Requires_lock_held_(switchContext->dispatchLock)
POVS_VPORT_ENTRY OvsFindVportByOvsName(POVS_SWITCH_CONTEXT switchContext,
PSTR name);
+_Requires_lock_held_(switchContext->dispatchLock)
POVS_VPORT_ENTRY OvsFindVportByHvNameA(POVS_SWITCH_CONTEXT switchContext,
PSTR name);
+_Requires_lock_held_(switchContext->dispatchLock)
POVS_VPORT_ENTRY OvsFindVportByHvNameW(POVS_SWITCH_CONTEXT switchContext,
PWSTR wsName, SIZE_T wstrSize);
+_Requires_lock_held_(switchContext->dispatchLock)
POVS_VPORT_ENTRY OvsFindVportByPortIdAndNicIndex(POVS_SWITCH_CONTEXT switchContext,
NDIS_SWITCH_PORT_ID portId,
NDIS_SWITCH_NIC_INDEX index);