Messages in this thread | | | Date | Tue, 15 Jan 2008 21:29:55 -0500 (EST) | From | Steven Rostedt <> | Subject | RE: [PATCH] lost softirq, 2.6.24-rc7 |
| |
On Tue, 15 Jan 2008, Rowand, Frank wrote:
> > Steve, > > You are totally correct. I used the wrong words when I said > "ksoftirqd thread runs". My apologies for very misleading wording. > > I have updated the wording in-line below, in the original message to > indicate that it is softirq threads, in the ksoftirqd() function, not > the ksoftirqd thread.
Actually, it's the fact that the code you show runs in ___do_softirq(). In full PREEMPT_RT, that should never happen.
Well, there is one case that that code can run. It's when hardirqs and softirqs have the same prio, and the hardirq is bound to a single CPU. But we've had so much trouble with running softirqs from hardirq threads, that I've disabled it for -rt3.
I'll be (hopefully) releasing -rt3 tonight. I'm not including this patch because it should never hit those code paths. But feel free to complain if you still see this issue, and it goes away with the patch. Actually, I've been thinking of adding a
#ifdef CONFIG_PREEMPT_RT WARN_ON(1); #endif
at the start of ___do_softirq();
-- Steve
| |