__do_softirq and real-time execution context

From: Kostya B
Date: Mon Aug 04 2008 - 03:09:19 EST



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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/