ソースを参照

bnxt_en: Free MSIX vectors when unregistering the device from bnxt_re.

Take back ownership of the MSIX vectors when unregistering the device
from bnxt_re.

Fixes: a588e4580a7e ("bnxt_en: Add interface to support RDMA driver.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Chan 8 年 前
コミット
146ed3c5b8
1 ファイル変更2 行追加0 行削除
  1. 2 0
      drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c

+ 2 - 0
drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c

@@ -84,6 +84,8 @@ static int bnxt_unregister_dev(struct bnxt_en_dev *edev, int ulp_id)
 
 
 		max_stat_ctxs = bnxt_get_max_func_stat_ctxs(bp);
 		max_stat_ctxs = bnxt_get_max_func_stat_ctxs(bp);
 		bnxt_set_max_func_stat_ctxs(bp, max_stat_ctxs + 1);
 		bnxt_set_max_func_stat_ctxs(bp, max_stat_ctxs + 1);
+		if (ulp->msix_requested)
+			edev->en_ops->bnxt_free_msix(edev, ulp_id);
 	}
 	}
 	if (ulp->max_async_event_id)
 	if (ulp->max_async_event_id)
 		bnxt_hwrm_func_rgtr_async_events(bp, NULL, 0);
 		bnxt_hwrm_func_rgtr_async_events(bp, NULL, 0);