]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] genirq: do not mask interrupts by default
authorIngo Molnar <mingo@elte.hu>
Fri, 16 Feb 2007 09:28:24 +0000 (01:28 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Fri, 16 Feb 2007 16:14:00 +0000 (08:14 -0800)
commitbf96f8a4e14e2a6cbf2f5242f04a8049bf9843bd
tree5140d838f64e8494abd4942b4e2ddf2ddee69046
parent465cc475eeb1f2e69dfe53f054d54a14a0b8ab63
[PATCH] genirq: do not mask interrupts by default

Never mask interrupts immediately upon request.  Disabling interrupts in
high-performance codepaths is rare, and on the other hand this change could
recover lost edges (or even other types of lost interrupts) by conservatively
only masking interrupts after they happen.  (NOTE: with this change the
highlevel irq-disable code still soft-disables this IRQ line - and if such an
interrupt happens then the IRQ flow handler keeps the IRQ masked.)

Mark i8529A controllers as 'never loses an edge'.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/i386/kernel/i8259.c
arch/x86_64/kernel/i8259.c
kernel/irq/chip.c