Re: route cache DoS testing and softirqs
From: Dipankar Sarma <hidden>
Date: 2004-03-31 21:56:13
Also in:
lkml
On Wed, Mar 31, 2004 at 11:31:09PM +0200, Andrea Arcangeli wrote:
On Thu, Apr 01, 2004 at 02:16:11AM +0530, Dipankar Sarma wrote:quoted
I don't do any of this. I just have a separate quiescent state counter for softirq RCU. It is incremented for regular quiescent points like cswitch, userland, idle loop as well as at the completion of each softirq handler. call_rcu_bh() uses its own queues. Everything else works like call_rcu().the point is that you want this counter to increase in every cpu quick, that's why I was thinking at posting the tasklet, if the counter doesn't increase from softirq, you fallback in the grace period length of the non-bh rcu. maybe the softirq load is so high in all cpus that just the additional counter will fix it w/o having to post any additional tasklet (I very much hope so but especially with irq binding I don't see it happening, however with irq binding you may have a call_rcu_bh_cpuset). You should give it a try and see if it just works.
Ah, forcing CPUs for quiescent state is my last WMD if I have to use it ever :) Thanks Dipankar