aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/infiniband/hw/i40iw/i40iw_main.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/i40iw/i40iw_main.c b/drivers/infiniband/hw/i40iw/i40iw_main.c
index cc742c3132c6..5965b59a2f83 100644
--- a/drivers/infiniband/hw/i40iw/i40iw_main.c
+++ b/drivers/infiniband/hw/i40iw/i40iw_main.c
@@ -1400,6 +1400,11 @@ static enum i40iw_status_code i40iw_save_msix_info(struct i40iw_device *iwdev,
1400 u32 i; 1400 u32 i;
1401 u32 size; 1401 u32 size;
1402 1402
1403 if (!ldev->msix_count) {
1404 i40iw_pr_err("No MSI-X vectors\n");
1405 return I40IW_ERR_CONFIG;
1406 }
1407
1403 iwdev->msix_count = ldev->msix_count; 1408 iwdev->msix_count = ldev->msix_count;
1404 1409
1405 size = sizeof(struct i40iw_msix_vector) * iwdev->msix_count; 1410 size = sizeof(struct i40iw_msix_vector) * iwdev->msix_count;
@@ -1550,7 +1555,7 @@ static enum i40iw_status_code i40iw_setup_init_state(struct i40iw_handler *hdl,
1550 1555
1551 status = i40iw_save_msix_info(iwdev, ldev); 1556 status = i40iw_save_msix_info(iwdev, ldev);
1552 if (status) 1557 if (status)
1553 goto exit; 1558 return status;
1554 iwdev->hw.dev_context = (void *)ldev->pcidev; 1559 iwdev->hw.dev_context = (void *)ldev->pcidev;
1555 iwdev->hw.hw_addr = ldev->hw_addr; 1560 iwdev->hw.hw_addr = ldev->hw_addr;
1556 status = i40iw_allocate_dma_mem(&iwdev->hw, 1561 status = i40iw_allocate_dma_mem(&iwdev->hw,