diff options
author | Eric Dumazet <dada1@cosmosbay.com> | 2009-03-04 15:11:56 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-03-04 16:08:45 -0500 |
commit | 64ca5ab913f1594ef316556e65f5eae63ff50cee (patch) | |
tree | 44cecee89609fbec9e4d7ed853b0eaf5c3782fc3 /fs | |
parent | 559595a985e106d2fa9f0c79b7f5805453fed593 (diff) |
rcu: increment quiescent state counter in ksoftirqd()
If a machine is flooded by network frames, a cpu can loop
100% of its time inside ksoftirqd() without calling schedule().
This can delay RCU grace period to insane values.
Adding rcu_qsctr_inc() call in ksoftirqd() solves this problem.
Paul: "This regression was a result of the recent change from
"schedule()" to "cond_resched()", which got rid of that quiescent
state in the common case where a reschedule is not needed".
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Reviewed-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions