1. 17 2月, 2018 1 次提交
  2. 08 2月, 2018 1 次提交
  3. 26 1月, 2018 1 次提交
  4. 24 1月, 2018 1 次提交
  5. 22 1月, 2018 1 次提交
  6. 18 1月, 2018 1 次提交
  7. 11 1月, 2018 3 次提交
  8. 09 12月, 2017 1 次提交
  9. 29 11月, 2017 1 次提交
  10. 02 11月, 2017 1 次提交
  11. 01 11月, 2017 4 次提交
  12. 21 10月, 2017 2 次提交
  13. 20 10月, 2017 2 次提交
  14. 15 10月, 2017 2 次提交
  15. 04 10月, 2017 1 次提交
  16. 26 9月, 2017 1 次提交
  17. 23 9月, 2017 3 次提交
  18. 22 9月, 2017 1 次提交
  19. 21 8月, 2017 1 次提交
  20. 19 8月, 2017 1 次提交
  21. 15 8月, 2017 1 次提交
  22. 12 8月, 2017 1 次提交
  23. 08 8月, 2017 4 次提交
  24. 21 7月, 2017 1 次提交
  25. 12 7月, 2017 1 次提交
    • G
      cxgb4: fix BUG() on interrupt deallocating path of ULD · 6a146f3a
      Guilherme G. Piccoli 提交于
      Since the introduction of ULD (Upper-Layer Drivers), the MSI-X
      deallocating path changed in cxgb4: the driver frees the interrupts
      of ULD when unregistering it or on shutdown PCI handler.
      
      Problem is that if a MSI-X is not freed before deallocated in the PCI
      layer, it will trigger a BUG() due to still "alive" interrupt being
      tentatively quiesced.
      
      The below trace was observed when doing a simple unbind of Chelsio's
      adapter PCI function, like:
        "echo 001e:80:00.4 > /sys/bus/pci/drivers/cxgb4/unbind"
      
      Trace:
      
        kernel BUG at drivers/pci/msi.c:352!
        Oops: Exception in kernel mode, sig: 5 [#1]
        ...
        NIP [c0000000005a5e60] free_msi_irqs+0xa0/0x250
        LR [c0000000005a5e50] free_msi_irqs+0x90/0x250
        Call Trace:
        [c0000000005a5e50] free_msi_irqs+0x90/0x250 (unreliable)
        [c0000000005a72c4] pci_disable_msix+0x124/0x180
        [d000000011e06708] disable_msi+0x88/0xb0 [cxgb4]
        [d000000011e06948] free_some_resources+0xa8/0x160 [cxgb4]
        [d000000011e06d60] remove_one+0x170/0x3c0 [cxgb4]
        [c00000000058a910] pci_device_remove+0x70/0x110
        [c00000000064ef04] device_release_driver_internal+0x1f4/0x2c0
        ...
      
      This patch fixes the issue by refactoring the shutdown path of ULD on
      cxgb4 driver, by properly freeing and disabling interrupts on PCI
      remove handler too.
      
      Fixes: 0fbc81b3 ("Allocate resources dynamically for all cxgb4 ULD's")
      Reported-by: NHarsha Thyagaraja <hathyaga@in.ibm.com>
      Signed-off-by: NGuilherme G. Piccoli <gpiccoli@linux.vnet.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6a146f3a
  26. 05 7月, 2017 2 次提交