Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: fib: fix incorrect call_rcu_bh()

After IP route cache removal, I believe rcu_bh() has very little use and
we should remove this RCU variant, since it adds some cycles in fast
path.

Anyway, the call_rcu_bh() use in fib_true is obviously wrong, since
some users only assert rcu_read_lock().

Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Eric Dumazet and committed by
David S. Miller
0c03eca3 08252b32

+1 -1
+1 -1
net/ipv4/fib_trie.c
··· 367 367 368 368 static inline void free_leaf(struct leaf *l) 369 369 { 370 - call_rcu_bh(&l->rcu, __leaf_free_rcu); 370 + call_rcu(&l->rcu, __leaf_free_rcu); 371 371 } 372 372 373 373 static inline void free_leaf_info(struct leaf_info *leaf)