linux/arch/x86
PJ Waskiewicz 9d9ad4b51d x86: Fix 32-bit MSI-X allocation leakage
This bug was introduced in the 2.6.24 i386/x86_64 tree merge, where
MSI-X vector allocation will eventually fail.  The cause is the new
bit array tracking used vectors is not getting cleared properly on
IRQ destruction on the 32-bit APIC code.

This can be seen easily using the ixgbe 10 GbE driver on multi-core
systems by simply loading and unloading the driver a few times.
Depending on the number of available vectors on the host system, the
MSI-X allocation will eventually fail, and the driver will only be
able to use legacy interrupts.

I am generating the same patch for both stable trees for 2.6.24 and
2.6.25.

Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-04-28 10:49:17 -07:00
..
boot x86, boot: add linked list of struct setup_data 2008-04-26 21:34:42 +02:00
configs x86: add optimized inlining 2008-04-26 17:44:55 +02:00
crypto [CRYPTO] aes-x86-32: Remove unused return code 2008-04-21 10:19:21 +08:00
ia32 x86_64 ia32 ptrace: convert to compat_arch_ptrace 2008-04-26 17:35:47 +02:00
kernel x86: Fix 32-bit MSI-X allocation leakage 2008-04-28 10:49:17 -07:00
kvm KVM: MMU: kvm_pv_mmu_op should not take mmap_sem 2008-04-27 18:21:45 +03:00
lguest x86: replace remaining __FUNCTION__ occurances 2008-04-17 17:40:57 +02:00
lib x86, UML: remove x86-specific implementations of find_first_bit 2008-04-26 19:21:17 +02:00
mach-default spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
mach-es7000 i386: es7000 minor cleanups 2007-10-17 20:16:15 +02:00
mach-generic x86: coding style fixes to arch/x86/mach-generic/bigsmp.c 2008-04-17 17:40:48 +02:00
mach-rdc321x x86, rdc321x: remove watchdog file 2008-04-17 17:40:50 +02:00
mach-visws x86: fix compilation error in VisWS 2008-04-24 23:15:44 +02:00
mach-voyager x86: use cpumask function for present, possible, and online cpus 2008-04-26 17:35:47 +02:00
math-emu x86, fpu: split FPU state from task struct - v5 2008-04-19 19:19:55 +02:00
mm vmallocinfo: add caller information 2008-04-28 08:58:21 -07:00
oprofile x86: oprofile: remove NR_CPUS arrays in arch/x86/oprofile/nmi_int.c 2008-04-19 19:44:58 +02:00
pci PCI: x86: use generic pci_enable_resources() 2008-04-20 21:47:04 -07:00
power x86: coding style fixes to arch/x86/power/cpu_32.c 2008-04-17 17:40:50 +02:00
vdso x86 vDSO: compile with -g, 64-bit 2008-04-19 19:19:55 +02:00
video x86: remove pointless comments 2008-04-19 19:19:54 +02:00
xen pageflags: use proper page flag functions in Xen 2008-04-28 08:58:22 -07:00
Kconfig x86: configurable DMI scanning code 2008-04-28 08:58:30 -07:00
Kconfig.cpu x86, bitops: select the generic bitmap search functions 2008-04-26 19:21:17 +02:00
Kconfig.debug x86: add optimized inlining 2008-04-26 17:44:55 +02:00
Makefile x86: add subarch support (for headers) to x86_64 2008-04-17 17:41:01 +02:00
Makefile_32.cpu x86: move i386 and x86_64 Makefiles to arch/x86 2007-10-25 22:27:34 +02:00