summaryrefslogtreecommitdiffstats
path: root/net/openvswitch/flow_table.c
diff options
context:
space:
mode:
authorJesse Gross <jesse@nicira.com>2013-12-03 19:58:53 +0100
committerJesse Gross <jesse@nicira.com>2014-01-07 00:51:48 +0100
commit663efa3696232300a8ad3a46bb10482fc0b861cf (patch)
treeb47f23f1c21ebc8c0e7deb333a44fe5a7e511b7d /net/openvswitch/flow_table.c
parentopenvswitch: Change ovs_flow_tbl_lookup_xx() APIs (diff)
downloadlinux-663efa3696232300a8ad3a46bb10482fc0b861cf.tar.xz
linux-663efa3696232300a8ad3a46bb10482fc0b861cf.zip
openvswitch: Silence RCU lockdep checks from flow lookup.
Flow lookup can happen either in packet processing context or userspace context but it was annotated as requiring RCU read lock to be held. This also allows OVS mutex to be held without causing warnings. Reported-by: Justin Pettit <jpettit@nicira.com> Signed-off-by: Jesse Gross <jesse@nicira.com> Reviewed-by: Thomas Graf <tgraf@redhat.com>
Diffstat (limited to 'net/openvswitch/flow_table.c')
-rw-r--r--net/openvswitch/flow_table.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/openvswitch/flow_table.c b/net/openvswitch/flow_table.c
index 261a54e77503..7b9cf2c43813 100644
--- a/net/openvswitch/flow_table.c
+++ b/net/openvswitch/flow_table.c
@@ -433,7 +433,7 @@ struct sw_flow *ovs_flow_tbl_lookup_stats(struct flow_table *tbl,
const struct sw_flow_key *key,
u32 *n_mask_hit)
{
- struct table_instance *ti = rcu_dereference(tbl->ti);
+ struct table_instance *ti = rcu_dereference_ovsl(tbl->ti);
struct sw_flow_mask *mask;
struct sw_flow *flow;