• Moshe Shemesh's avatar
    net/mlx5: Cleanup IRQs in case of unload failure · d6b2785c
    Moshe Shemesh authored
    When mlx5_stop_eqs fails to destroy any of the eqs it returns with an error.
    In such failure flow the function will return without
    releasing all EQs irqs and then pci_free_irq_vectors will fail.
    Fix by only warn on destroy EQ failure and continue to release other
    EQs and their irqs.
    
    It fixes the following kernel trace:
    kernel: kernel BUG at drivers/pci/msi.c:352!
    ...
    ...
    kernel: Call Trace:
    kernel: pci_disable_msix+0xd3/0x100
    kernel: pci_free_irq_vectors+0xe/0x20
    kernel: mlx5_load_one.isra.17+0x9f5/0xec0 [mlx5_core]
    
    Fixes: e126ba97 ("mlx5: Add driver for Mellanox Connect-IB adapters")
    Signed-off-by: default avatarMoshe Shemesh <moshe@mellanox.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
    d6b2785c
driver.h 31.1 KB