diff options
| author | Pravin B Shelar <pshelar@nicira.com> | 2013-10-29 23:10:58 -0700 | 
|---|---|---|
| committer | Jesse Gross <jesse@nicira.com> | 2013-11-01 18:43:46 -0700 | 
| commit | 8ddd094675cfd453fc9838caa46ea108a4107183 (patch) | |
| tree | 197ff564a74885ac227917a82c1e987454895878 /net/openvswitch | |
| parent | 5eb26b156e29eadcc21f73fb5d14497f0db24b86 (diff) | |
| download | linux-8ddd094675cfd453fc9838caa46ea108a4107183.tar.bz2 | |
openvswitch: Use flow hash during flow lookup operation.
Flow->hash can be used to detect hash collisions and avoid flow key
compare in flow lookup.
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch')
| -rw-r--r-- | net/openvswitch/flow_table.c | 2 | 
1 files changed, 1 insertions, 1 deletions
| diff --git a/net/openvswitch/flow_table.c b/net/openvswitch/flow_table.c index 536b4d2a42e2..e42542706087 100644 --- a/net/openvswitch/flow_table.c +++ b/net/openvswitch/flow_table.c @@ -421,7 +421,7 @@ static struct sw_flow *masked_flow_lookup(struct table_instance *ti,  	hash = flow_hash(&masked_key, key_start, key_end);  	head = find_bucket(ti, hash);  	hlist_for_each_entry_rcu(flow, head, hash_node[ti->node_ver]) { -		if (flow->mask == mask && +		if (flow->mask == mask && flow->hash == hash &&  		    flow_cmp_masked_key(flow, &masked_key,  					  key_start, key_end))  			return flow; |