Re: softirqd

From: Richard B. Johnson
Date: Tue Nov 18 2003 - 08:31:41 EST


On Mon, 17 Nov 2003, kernwek jalsl wrote:

>
> Hi;
>
> Sorry in case I was not very clear with my
> requirements. With real time interrupt I meant a
> real time task waiting for IO from this interrupt.
> Assume that I have a high priority interrupt and a
> real time task waiting for it. Well followimg are the
> various latencies involved:
> L1- interrupt latency
> L2- hard and soft IRQ completion
> L3 - scheduler latency
> L4 - scheduler completion
>
> L1 is pretty acceptable on Linux. For L3 we have the
> preemption and low latency patch. And for L4 the O(1)
> scheduler solves the problem. So I see L2 as the
> bootleneck especially with soft IRQ since the softIRQs
> get scheduled in a non real time thread and there is
> no wayI can tell the softIRQd that I want highest
> priority for the interrupt that will wake up my real
> time task. I was seeking a solution to this.

The fastest would not use softIRQ at all. As previously
taught, softIRQ is used for things that can be deferred.
You should handle everything in the primary ISR and
issue wake_up_interruptible() from the ISR. You should
be waking anybody sleeping in select() and anybody sleeping
in read().

>
> I know that TimeSYS has as patch for making the
> softIRQ a real time thread as well as giving
> priorities for both the top and bottom halves. Is
> there any place where I can get some performance
> figures for this patch?
>
> Regards
>

Search RTLinux.

Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.


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