public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* __do_softirq and real-time execution context
       [not found] <S1754783AbYHDGgc/20080804063632Z+270@vger.kernel.org>
@ 2008-08-04  7:02 ` Kostya B
  2008-08-04  7:41   ` Peter Zijlstra
  0 siblings, 1 reply; 2+ messages in thread
From: Kostya B @ 2008-08-04  7:02 UTC (permalink / raw)
  To: linux-kernel


Hello,

Please consider the following:

__do_softirq could be run from several checkpoints in kernel and even can employ userspace process context. 
For example, under heavy network traffic such process could be blocked for a relatively large period until ksoftirqd wakes up and takes control for Rx/Tx. 

In the case of regular userspace process the ksoftirqd solves the kernel/user trade-off problem pretty well.
However, in the case of _real-time_ process, such behavior may yield severe outcomes. Real-time (e.g. NTPL FIFO thread) might require short responses and low latency.

The proposal is that  __do_softirq should not run its pending tasks in the context of RT process.  Just check has_rt_policy() and immediately wake up ksoftirqd.

Regards,
- Kostya


_________________________________________________________________
Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy!
http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: __do_softirq and real-time execution context
  2008-08-04  7:02 ` __do_softirq and real-time execution context Kostya B
@ 2008-08-04  7:41   ` Peter Zijlstra
  0 siblings, 0 replies; 2+ messages in thread
From: Peter Zijlstra @ 2008-08-04  7:41 UTC (permalink / raw)
  To: Kostya B; +Cc: linux-kernel

On Mon, 2008-08-04 at 07:02 +0000, Kostya B wrote:
> Hello,
> 
> Please consider the following:
> 
> __do_softirq could be run from several checkpoints in kernel and even can employ userspace process context. 
> For example, under heavy network traffic such process could be blocked for a relatively large period until ksoftirqd wakes up and takes control for Rx/Tx. 
> 
> In the case of regular userspace process the ksoftirqd solves the kernel/user trade-off problem pretty well.
> However, in the case of _real-time_ process, such behavior may yield severe outcomes. Real-time (e.g. NTPL FIFO thread) might require short responses and low latency.
> 
> The proposal is that  __do_softirq should not run its pending tasks in the context of RT process.  Just check has_rt_policy() and immediately wake up ksoftirqd.

Please look at the -rt patches.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-08-04  7:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <S1754783AbYHDGgc/20080804063632Z+270@vger.kernel.org>
2008-08-04  7:02 ` __do_softirq and real-time execution context Kostya B
2008-08-04  7:41   ` Peter Zijlstra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox