From e7f133290660d976da8cb20e9bc7310d0cd19341 Mon Sep 17 00:00:00 2001 From: Pravin B Shelar Date: Tue, 17 Sep 2013 09:38:23 -0700 Subject: openvswitch: Move flow table rehashing to flow install. Rehashing in ovs-workqueue can cause ovs-mutex lock contentions in case of heavy flow setups where both needs ovs-mutex. So by moving rehashing to flow-setup we can eliminate contention. This also simplify ovs locking and reduces dependence on workqueue. Signed-off-by: Pravin B Shelar Signed-off-by: Jesse Gross --- net/openvswitch/datapath.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'net/openvswitch/datapath.h') diff --git a/net/openvswitch/datapath.h b/net/openvswitch/datapath.h index 4d109c176ef3..2c15541f3b46 100644 --- a/net/openvswitch/datapath.h +++ b/net/openvswitch/datapath.h @@ -62,6 +62,7 @@ struct dp_stats_percpu { * ovs_mutex and RCU. * @stats_percpu: Per-CPU datapath statistics. * @net: Reference to net namespace. + * @last_rehash: Timestamp of last rehash. * * Context: See the comment on locking at the top of datapath.c for additional * locking information. @@ -83,6 +84,7 @@ struct datapath { /* Network namespace ref. */ struct net *net; #endif + unsigned long last_rehash; }; /** -- cgit v1.2.3