[ovs-dev] [PATCH 00/12] RCU classifier
Jarno Rajahalme
jrajahalme at nicira.com
Mon Jun 30 15:17:16 UTC 2014
This series makes the classifier use OVS-RCU and thus makes classifier
lookups lockless. No performance measurements have been made yet.
Patch 6 ("Use cmap.") has been previously reviewed.
Jarno Rajahalme (12):
dpif-netdev: Use cmap instead of hmap.
ovs-atomic: Use memory_order_relaxed for ovs_refcount.
lib/ovs-atomic: Add atomic compare_exchange.
ofproto-dpif: Use ovs_refcount_try_ref().
lib/classifier: Remove unused typedef cls_cb_func.
lib/classifier: Use cmap.
lib/classifier: Simplify iteration with C99 declaration.
lib/ovs-rcu: Export ovsrcu_synchronize().
lib/classifier: Stylistic change.
lib/classifier: Use internal mutex.
lib/classifier: RCUify prefix trie code.
lib/classifier: Lockless lookups.
lib/classifier.c | 692 +++++++++++++++++++++++++++++---------------
lib/classifier.h | 120 +++++---
lib/dpif-netdev.c | 73 ++---
lib/ovs-atomic-clang.h | 14 +
lib/ovs-atomic-gcc4+.h | 23 ++
lib/ovs-atomic-gcc4.7+.h | 14 +
lib/ovs-atomic-locked.h | 11 +
lib/ovs-atomic-pthreads.h | 10 +
lib/ovs-atomic.h | 62 +++-
lib/ovs-rcu.c | 3 +-
lib/ovs-rcu.h | 4 +
ofproto/ofproto-dpif.c | 46 +--
ofproto/ofproto-dpif.h | 9 +
ofproto/ofproto-provider.h | 1 +
ofproto/ofproto.c | 91 ++----
ofproto/ofproto.h | 3 +
tests/test-classifier.c | 130 +++++----
utilities/ovs-ofctl.c | 23 +-
18 files changed, 825 insertions(+), 504 deletions(-)
--
1.7.10.4
More information about the dev
mailing list