* __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