[ovs-dev] [PATCH v4 1/3] datapath-windows: Use spinlock instead of RW lock for ct entry

aserdean at ovn.org aserdean at ovn.org
Fri Jun 22 14:16:56 UTC 2018


> -----Mesaj original-----
> De la: ovs-dev-bounces at openvswitch.org <ovs-dev-
> bounces at openvswitch.org> În numele Anand Kumar
> Trimis: Tuesday, June 19, 2018 8:33 PM
> Către: dev at openvswitch.org
> Subiect: [ovs-dev] [PATCH v4 1/3] datapath-windows: Use spinlock instead
of
> RW lock for ct entry
> 
> This patch mainly changes a ndis RW lock for conntrack entry to a spinlock
> along with some minor refactor in conntrack. Using spinlock instead of RW
> lock as RW locks causes performance hits when acquired/released multiple
> times.
> 
> - Use NdisInterlockedXX wrapper api's instead of InterlockedXX.
> - Update 'ctTotalRelatedEntries' using interlocked functions.
> - Move conntrack lock out of NAT module.
> 
> Testing:
> Verified loading/unloading the driver with driver verified enabled.
> Ran TCP/UDP and ICMP traffic.
> 
> Signed-off-by: Anand Kumar <kumaranand at vmware.com>
> ---
> v1->v2: Calculate the dispatch level only in cases where the locks are
> v1->being acquired
> 	    multiple times within a given context and minor style change.
> v2->v3: Fix kernel crash while executing cleanup thread in
> v2->conntrack-related
> v3->v4: Fix a bug found through code analysis
> ---

Acked-by: Alin Gabriel Serdean <aserdean at ovn.org>




More information about the dev mailing list