1
linux/arch
Natalie Protasevich c434b7a6ae [PATCH] x86: avoid wasting IRQs for PCI devices
I have submitted the patch for x86_64, this is submission for i386.

The patch changes the way IRQs are handed out to PCI devices.  Currently,
each I/O APIC pin gets associated with an IRQ, no matter if the pin is used
or not.  This imposes severe limitation on systems that have designs that
employ many I/O APICs, only utilizing couple lines of each, such as P64H2
chipset.  It is used in ES7000, and currently, there is no way to boot the
system with more that 9 I/O APICs.

The simple change below allows to boot a system with say 64 (or more) I/O
APICs, each providing 1 slot, which otherwise impossible because of the IRQ
gaps created for unused lines on each I/O APIC.  It does not resolve the
problem with number of devices that exceeds number of possible IRQs, but
eases up a tension for IRQs on any large system with potentually large
number of devices.

Signed-off-by: Natalie Protasevich <Natalie.Protasevich@unisys.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-23 09:45:10 -07:00
..
alpha [PATCH] update all defconfigs for ARCH_DISCONTIGMEM_ENABLE 2005-06-23 09:45:02 -07:00
arm [PATCH] use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh 2005-06-23 09:45:07 -07:00
arm26 [PATCH] use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh 2005-06-23 09:45:07 -07:00
cris [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
frv [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
h8300 [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
i386 [PATCH] x86: avoid wasting IRQs for PCI devices 2005-06-23 09:45:10 -07:00
ia64 [PATCH] ia64: Selectable Timer Interrupt Frequency 2005-06-23 09:45:10 -07:00
m32r [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
m68k [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
m68knommu [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
mips [PATCH] mm/Kconfig: kill unused ARCH_FLATMEM_DISABLE 2005-06-23 09:45:03 -07:00
parisc [PATCH] mm/Kconfig: kill unused ARCH_FLATMEM_DISABLE 2005-06-23 09:45:03 -07:00
ppc [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
ppc64 [PATCH] use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh 2005-06-23 09:45:07 -07:00
s390 [PATCH] use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh 2005-06-23 09:45:07 -07:00
sh [PATCH] mm/Kconfig: kill unused ARCH_FLATMEM_DISABLE 2005-06-23 09:45:03 -07:00
sh64 [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
sparc [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
sparc64 [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
um [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
v850 [PATCH] make each arch use mm/Kconfig 2005-06-23 09:45:02 -07:00
x86_64 [PATCH] i386: Selectable Frequency of the Timer Interrupt 2005-06-23 09:45:10 -07:00