1. 30 4月, 2008 1 次提交
    • Y
      pci/irq: restore mask_bits in msi shutdown -v3 · 8e149e09
      Yinghai Lu 提交于
      [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 89d694b9
      | 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:
      |
      |    76d21601
      |    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: NYinghai Lu <yhlu.kernel@gmail.com>
      Signed-off-by: NJesse Barnes <jbarnes@hobbes.lan>
      8e149e09
  2. 29 4月, 2008 4 次提交
  3. 26 4月, 2008 12 次提交
  4. 24 4月, 2008 6 次提交
  5. 23 4月, 2008 17 次提交