]> git.baikalelectronics.ru Git - kernel.git/commit
bnxt_en: Fix MSIX request logic for RDMA driver.
authorMichael Chan <michael.chan@broadcom.com>
Tue, 10 Dec 2019 07:49:07 +0000 (02:49 -0500)
committerDavid S. Miller <davem@davemloft.net>
Wed, 11 Dec 2019 01:37:14 +0000 (17:37 -0800)
commitd4365dd0cc21a609ff43fe765278e7d1bff4e1ad
tree1e8735afdd3b4aacb0cc141402378b7b5f427d4b
parentfe6050e079498d98aa9f0e51e3838bfda740c585
bnxt_en: Fix MSIX request logic for RDMA driver.

The logic needs to check both bp->total_irqs and the reserved IRQs in
hw_resc->resv_irqs if applicable and see if both are enough to cover
the L2 and RDMA requested vectors.  The current code is only checking
bp->total_irqs and can fail in some code paths, such as the TX timeout
code path with the RDMA driver requesting vectors after recovery.  In
this code path, we have not reserved enough MSIX resources for the
RDMA driver yet.

Fixes: a09901ee2b09 ("bnxt_en: Keep track of reserved IRQs.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c