Re: Strange interrupt behaviour

Alan Cox (alan@lxorguk.ukuu.org.uk)
Thu, 16 Jul 1998 01:32:22 +0100 (BST)


> Alarm bells! Fast turnaround for interrupts is fundamentally important to
> me. I write Linux drivers for my company's image processing boards, and

For all of us. I've mostly pinned this one down its quite interesting

> in some cases the performance of certain communications is directly
> related to interrupt latency.

What tipped the balance here wasnt the time to service an interrupt - 2.0
and 2.1 uniprocessor are about the same, without fast IRQs 2.1.x takes a lot
longer to clear the IRQ handler so what was happening was

irq
byte
irq
data
irq
data end of packet
do ppp think
return from irq
oh crap missed the start of the next frame

So for now I've moved the "do ppp think" into net_bh and the problem is
at least in hiding. This is caused by the loss of "Fast" irq handlers. If
I put those back I get 2.0 behaviour non SMP.

Linus has already pointed out the right way to fix this and its on my
list. It does involve a small change to every IRQ handler in the kernel
however so it'll take me 2 or 3 days and break someones drivers.

Alan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html