linux-uconsole/include
Yinghai Lu 8e149e09f9 pci/irq: restore mask_bits in msi shutdown -v3
[PATCH 1/2] pci/irq: restore mask_bits in msi shutdown -v3

Yinghai found that kexec'ing a RHEL 5.1 kernel with 2.6.25-rc3+ kernels
prevents his NIC from working.  He bisected to

| commit 89d694b9db
| Author: Thomas Gleixner <tglx@linutronix.de>
| Date:   Mon Feb 18 18:25:17 2008 +0100
|
|   genirq: do not leave interupts enabled on free_irq
|
|   The default_disable() function was changed in commit:
|
|    76d2160147
|    genirq: do not mask interrupts by default
|

For MSI, default_shutdown will call mask_bit for msi device.  All mask bits
will left disabled after free_irq.  Then in the kexec case, the next kernel
can only use msi_enable bit, so all device's MSI can not be used.

So lets to restore the mask bit to its pci reset defined value (enabled) when
we disable the kernels use of msi to be a little friendlier to kexec'd kernels.

Extend msi_set_mask_bit to msi_set_mask_bits to take mask, so we can fully
restore that to 0x00 instead of 0xfe.

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@hobbes.lan>
2008-04-29 09:11:12 -07:00
..
acpi
asm-alpha asm-generic: add node_to_cpumask_ptr macro 2008-04-19 19:44:58 +02:00
asm-arm Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc 2008-04-21 17:23:30 -07:00
asm-avr32 avr32: add include/asm-avr32/serial.h 2008-04-19 20:40:10 -04:00
asm-blackfin include: Remove unnecessary inclusions of asm/semaphore.h 2008-04-18 22:16:54 -04:00
asm-cris
asm-frv frv: remove HARD_RESET_NOW() 2008-04-21 16:03:13 -07:00
asm-generic asm-generic: add node_to_cpumask_ptr macro 2008-04-19 19:44:58 +02:00
asm-h8300
asm-ia64 [IA64] move XP and XPC to drivers/misc/sgi-xp 2008-04-22 15:08:17 -07:00
asm-m32r Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 2008-04-18 08:39:24 -07:00
asm-m68k
asm-m68knommu
asm-mips Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 2008-04-18 08:39:24 -07:00
asm-mn10300
asm-parisc Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 2008-04-18 08:39:24 -07:00
asm-powerpc Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc 2008-04-21 15:50:49 -07:00
asm-ppc include: Remove unnecessary inclusions of asm/semaphore.h 2008-04-18 22:16:54 -04:00
asm-s390 Merge branch 'semaphore' of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc 2008-04-18 08:25:29 -07:00
asm-sh i2c: Renesas SH7760 I2C master driver 2008-04-22 22:16:47 +02:00
asm-sparc Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2008-04-21 17:20:53 -07:00
asm-sparc64 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2008-04-21 17:20:53 -07:00
asm-um
asm-v850
asm-x86 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel 2008-04-21 15:40:24 -07:00
asm-xtensa
crypto [CRYPTO] aes: Export generic setkey 2008-04-21 10:19:34 +08:00
keys KEYS: Fix the comment to match the file name in rxrpc-type.h. 2008-04-21 22:43:55 +00:00
linux pci/irq: restore mask_bits in msi shutdown -v3 2008-04-29 09:11:12 -07:00
math-emu
media
mtd
net [IPSEC]: Fix catch-22 with algorithm IDs above 31 2008-04-22 00:46:42 -07:00
pcmcia
rdma IB: convert struct class_device to struct device 2008-04-19 19:10:30 -07:00
rxrpc
scsi Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6 2008-04-21 15:49:58 -07:00
sound
video
xen
Kbuild