From: Eric Dumazet <hidden> Date: 2012-08-07 10:47:16
From: Eric Dumazet <edumazet@google.com>
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" <redacted>
---
net/ipv4/fib_trie.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Eric Dumazet <hidden> Date: 2012-08-07 16:48:19
On Tue, 2012-08-07 at 09:34 -0700, Paul E. McKenney wrote:
On Tue, Aug 07, 2012 at 12:47:11PM +0200, Eric Dumazet wrote:
quoted
From: Eric Dumazet <edumazet@google.com>
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.
Do you mean remove all uses of RCU-bh globally and also removing the
implementation itself? That would actually be a good thing, from my
perspective.
Yes I meant that there are now too few rcu_bh users, and that they
probably could switch to regular rcu.
We could then remove the implementation.
rcu_bh was needed because we could sit forever in softirq mode in one
cpu, and we needed to allocate/free dsts with RCU protection.
From: Paul E. McKenney <hidden> Date: 2012-08-07 16:52:18
On Tue, Aug 07, 2012 at 12:47:11PM +0200, Eric Dumazet wrote:
From: Eric Dumazet <edumazet@google.com>
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.
Do you mean remove all uses of RCU-bh globally and also removing the
implementation itself? That would actually be a good thing, from my
perspective.
Or were you meaning something more localized?
Thanx, Paul
quoted hunk
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" <redacted>
---
net/ipv4/fib_trie.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Paul E. McKenney <hidden> Date: 2012-08-07 17:28:34
On Tue, Aug 07, 2012 at 06:48:14PM +0200, Eric Dumazet wrote:
On Tue, 2012-08-07 at 09:34 -0700, Paul E. McKenney wrote:
quoted
On Tue, Aug 07, 2012 at 12:47:11PM +0200, Eric Dumazet wrote:
quoted
From: Eric Dumazet <edumazet@google.com>
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.
Do you mean remove all uses of RCU-bh globally and also removing the
implementation itself? That would actually be a good thing, from my
perspective.
Yes I meant that there are now too few rcu_bh users, and that they
probably could switch to regular rcu.
We could then remove the implementation.
rcu_bh was needed because we could sit forever in softirq mode in one
cpu, and we needed to allocate/free dsts with RCU protection.
Very cool!!! Anything I can do to help, aside of course from the final
removal of RCU-bh support?
Thanx, Paul
From: David Miller <davem@davemloft.net> Date: 2012-08-08 22:57:58
From: Eric Dumazet <redacted>
Date: Tue, 07 Aug 2012 12:47:11 +0200
From: Eric Dumazet <edumazet@google.com>
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" <redacted>