• Michael Chan's avatar
    bnxt_en: Do not modify max IRQ count after RDMA driver requests/frees IRQs. · 30f52947
    Michael Chan authored
    Calling bnxt_set_max_func_irqs() to modify the max IRQ count requested or
    freed by the RDMA driver is flawed.  The max IRQ count is checked when
    re-initializing the IRQ vectors and this can happen multiple times
    during ifup or ethtool -L.  If the max IRQ is reduced and the RDMA
    driver is operational, we may not initailize IRQs correctly.  This
    problem shows up on VFs with very small number of MSIX.
    
    There is no other logic that relies on the IRQ count excluding the ones
    used by RDMA.  So we fix it by just removing the call to subtract or
    add the IRQs used by RDMA.
    
    Fixes: a588e458 ("bnxt_en: Add interface to support RDMA driver.")
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    30f52947
bnxt.c 233 KB