Re: queue_work from interrupt Real time preemption2.6.11-rc2-RT-V0.7.37-03

From: Steven Rostedt
Date: Thu Feb 17 2005 - 10:03:55 EST



On Thu, 17 Feb 2005, Ingo Molnar wrote:
> as long as it stays on a single CPU, could we allow softirq contexts to
> preempt each other? I.e. we'd keep the per-CPU assumption (that is fair
> and needed for performance anyway), but we'd allow NET_TX to preempt
> NET_RX and vice versa. Would this corrupt the rx/tx queues? (i suspect
> it would.)
>
> (anyway, by adding an explicit no-preempt section around the 'take
> current rx queue private, then process it' on PREEMPT_RT it could be
> made safe. I'm wondering whether there are any other deeper assumptions
> about atomic separation of softirq contexts.)
>

Ingo,

Wouldn't this cause a longer latency in these sections. I understand
that turning preemption off doesn't stop interrupts that are not
threaded, but especially on a UP, this would cause higher latencies for
high priority processes when a lower priority process is heavy on network
traffic.

As I mentioned earlier, what would it take to be able to group
softirq threads that should not preempt each other, but still keep
preemption available for other threads?

Actually, I guess I need to ask, what do you intend on doing to prioritize
the softirq? Are you going to make a separate thread for each tasklet?
Once I see what you're doing, I'll make something up to help handle this
problem.

-- Steve

-
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/