Hi again..
In my never-ending battle to make the kernel behave well by default without needing "irqtune" (which is very setup-specific, and as such not something the kernel can do automatically), I was thinking of doing interrupt priority rotations instead of the current fixed mode. Now, doing a rotating interrupt priority means that the priorities essentially go away completely, which is not the optimal solution (having high serial line priorities is good, no question about it). However, while not exactly optimal, it _is_ a fair solution, and likely to be better than what we currently have. Rotating priorities should also work reasonably well for multiple serial interrupt sources, which irqtune doesn't really handle (depending on what the interrupt numbers are, irqtune can work well, though). Also, unlike irqtune, there shouldn't be any unfairness toward other devices so it should work well under wildly different circumstances. In short, rotating priorities are a reasonable thing to do by default, and I'd like people who have been trying out "irqtune" (and who actually see some differences with it) to try out this very simple patch.. How does this work for you? (This is actually how Linux/alpha has been handling interrupts from the very beginning) Linus ----- --- v2.0.16/linux/include/asm-i386/irq.h Thu Aug 29 19:15:14 1996 +++ linux/include/asm-i386/irq.h Sun Sep 1 10:53:04 1996 @@ -90,7 +90,7 @@ "outb %al,$0x21\n\t" \ "jmp 1f\n" \ "1:\tjmp 1f\n" \ - "1:\tmovb $0x60+"#nr",%al\n\t" \ + "1:\tmovb $0xE0+"#nr",%al\n\t" \ "outb %al,$0x20\n\t" #define ACK_SECOND(mask,nr) \ @@ -102,11 +102,11 @@ "outb %al,$0xA1\n\t" \ "jmp 1f\n" \ "1:\tjmp 1f\n" \ - "1:\tmovb $0x60+"#nr",%al\n\t" \ + "1:\tmovb $0xE0+"#nr",%al\n\t" \ "outb %al,$0xA0\n\t" \ "jmp 1f\n" \ "1:\tjmp 1f\n" \ - "1:\tmovb $0x62,%al\n\t" \ + "1:\tmovb $0xE2,%al\n\t" \ "outb %al,$0x20\n\t" #define UNBLK_FIRST(mask) \