Messages in this thread | | | From | Kostya B <> | Subject | __do_softirq and real-time execution context | Date | Mon, 4 Aug 2008 07:02:53 +0000 |
| |
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
| |