Re: Why no interrupt priorities?

Pete Zaitcev
2004-02-27T08:00:27Z

On Thu, 26 Feb 2004 11:05:07 -0800
Tim Bird <tim.bird@am.sony.com> wrote:

> What's the rationale for not supporting interrupt priorities
> in the kernel?

Interrupts interrupt other interrupts today, so this aspect of nested
interrupts is functional. In fact, it's a major headache, because
with explosion of the number of interrupt sources in modern x86 servers
were are pushed against the stack size.

The only thing remaining is something like UNIX spl(). You can overload
enable_irq, disable_irq with enabling IRQs numbered lower than the IRQ
being disabled, thus turning them into spl(). This is correct, but stupid.

Nobody writes drivers and arches like so, because if your _rely_ on such
implementation of enable_irq and disable_irq, the driver or framwork
becomes silently API dependant, and breaks silently.

If you want PILs like on sparc, well, your architecture can provide them.
They make no sense on x86, of course, so they are called some arch-specific
name, like __spl().

Why do you want "interrupt priorities", anyway? Is there a consumer
electronics application which requires that? No, seriously, what is it?

-- Pete