[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4A0AE19D.9040509@nortel.com>
Date: Wed, 13 May 2009 09:05:01 -0600
From: "Chris Friesen" <cfriesen@...tel.com>
To: Andi Kleen <andi@...stfloor.org>
CC: Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...e.hu>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Steven Rostedt <rostedt@...dmis.org>,
David Miller <davem@...emloft.net>, linuxppc-dev@...abs.org,
paulus@...ba.org, netdev@...r.kernel.org
Subject: Re: question about softirqs
Andi Kleen wrote:
> Thomas Gleixner <tglx@...utronix.de> writes:
>>Err, no. Chris is completely correct:
>>
>> if (!in_interrupt())
>> wakeup_softirqd();
>
> Yes you have to wake it up just in case, but it doesn't normally
> process the data because a normal softirq comes in faster. It's
> just a safety policy.
What about the scenario I raised earlier, where we have incoming network
packets, no hardware interrupts coming in other than the timer tick, and
a high-priority userspace app is spinning on recvmsg() with MSG_DONTWAIT
set?
As far as I can tell, in this scenario softirqs may not get processed on
return from a syscall (contradicting the documentation). In the worst
case, they may not get processed until the next timer tick.
Chris
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists