diff options
author | Pravin B Shelar <pshelar@nicira.com> | 2013-10-04 00:14:23 -0700 |
---|---|---|
committer | Jesse Gross <jesse@nicira.com> | 2013-10-04 00:18:26 -0700 |
commit | b637e4988c2d689bb43f943a5af0e684a4981159 (patch) | |
tree | 36fbf2ee83323b2441861de650c6dabe6d5cc663 /net/openvswitch/datapath.h | |
parent | e64457191a259537bbbfaebeba9a8043786af96f (diff) | |
download | linux-b637e4988c2d689bb43f943a5af0e684a4981159.tar.gz linux-b637e4988c2d689bb43f943a5af0e684a4981159.tar.bz2 linux-b637e4988c2d689bb43f943a5af0e684a4981159.zip |
openvswitch: Move mega-flow list out of rehashing struct.
ovs-flow rehash does not touch mega flow list. Following patch
moves it dp struct datapath. Avoid one extra indirection for
accessing mega-flow list head on every packet receive.
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch/datapath.h')
-rw-r--r-- | net/openvswitch/datapath.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/openvswitch/datapath.h b/net/openvswitch/datapath.h index a6982ef84f20..acfd4af8ca3a 100644 --- a/net/openvswitch/datapath.h +++ b/net/openvswitch/datapath.h @@ -58,12 +58,11 @@ struct dp_stats_percpu { * struct datapath - datapath for flow-based packet switching * @rcu: RCU callback head for deferred destruction. * @list_node: Element in global 'dps' list. - * @table: Current flow table. Protected by ovs_mutex and RCU. + * @table: flow table. * @ports: Hash table for ports. %OVSP_LOCAL port always exists. Protected by * 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. @@ -73,7 +72,7 @@ struct datapath { struct list_head list_node; /* Flow table. */ - struct flow_table __rcu *table; + struct flow_table table; /* Switch ports. */ struct hlist_head *ports; @@ -85,7 +84,6 @@ struct datapath { /* Network namespace ref. */ struct net *net; #endif - unsigned long last_rehash; }; /** |