From c24fbbf1b06fb0361407d384e5c3158b3bb52f18 Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Wed, 14 Apr 2010 16:13:29 -0700 Subject: [PATCH] --- yaml --- r: 190017 b: refs/heads/master c: 4eaa0e3c869acd5dbc7c2e3818a9ae9cbf221d27 h: refs/heads/master i: 190015: 26aae71c3cc69fd8a5fe48bcbcf0c6fa64d06af5 v: v3 --- [refs] | 2 +- trunk/net/ipv4/fib_trie.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index c75221857f97..1b1a6aea7c05 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0110d6f22f392f976e84ab49da1b42f85b64a3c5 +refs/heads/master: 4eaa0e3c869acd5dbc7c2e3818a9ae9cbf221d27 diff --git a/trunk/net/ipv4/fib_trie.c b/trunk/net/ipv4/fib_trie.c index 59a838795e3e..c98f115fb0fd 100644 --- a/trunk/net/ipv4/fib_trie.c +++ b/trunk/net/ipv4/fib_trie.c @@ -209,7 +209,9 @@ static inline struct node *tnode_get_child_rcu(struct tnode *tn, unsigned int i) { struct node *ret = tnode_get_child(tn, i); - return rcu_dereference(ret); + return rcu_dereference_check(ret, + rcu_read_lock_held() || + lockdep_rtnl_is_held()); } static inline int tnode_child_length(const struct tnode *tn)