diff options
author | Tejun Heo | 2018-12-28 03:05:30 +0100 |
---|---|---|
committer | Tejun Heo | 2018-12-28 03:05:30 +0100 |
commit | 4d71c6f8771a6bccb844244f09831fa4624b22c1 (patch) | |
tree | 9c6fdf753d64c839a4b0deb7d35d7e990c8e9971 /drivers/net/ethernet/qlogic/qed/qed_dev.c | |
parent | cpuset: Remove set but not used variable 'cs' (diff) | |
parent | cgroup: fix CSS_TASK_ITER_PROCS (diff) | |
download | kernel-qcow2-linux-4d71c6f8771a6bccb844244f09831fa4624b22c1.tar.gz kernel-qcow2-linux-4d71c6f8771a6bccb844244f09831fa4624b22c1.tar.xz kernel-qcow2-linux-4d71c6f8771a6bccb844244f09831fa4624b22c1.zip |
Merge branch 'for-4.20-fixes' into for-4.21
Diffstat (limited to 'drivers/net/ethernet/qlogic/qed/qed_dev.c')
-rw-r--r-- | drivers/net/ethernet/qlogic/qed/qed_dev.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/net/ethernet/qlogic/qed/qed_dev.c b/drivers/net/ethernet/qlogic/qed/qed_dev.c index 7ceb2b97538d..cff141077558 100644 --- a/drivers/net/ethernet/qlogic/qed/qed_dev.c +++ b/drivers/net/ethernet/qlogic/qed/qed_dev.c @@ -185,6 +185,10 @@ void qed_resc_free(struct qed_dev *cdev) qed_iscsi_free(p_hwfn); qed_ooo_free(p_hwfn); } + + if (QED_IS_RDMA_PERSONALITY(p_hwfn)) + qed_rdma_info_free(p_hwfn); + qed_iov_free(p_hwfn); qed_l2_free(p_hwfn); qed_dmae_info_free(p_hwfn); @@ -1081,6 +1085,12 @@ int qed_resc_alloc(struct qed_dev *cdev) goto alloc_err; } + if (QED_IS_RDMA_PERSONALITY(p_hwfn)) { + rc = qed_rdma_info_alloc(p_hwfn); + if (rc) + goto alloc_err; + } + /* DMA info initialization */ rc = qed_dmae_info_alloc(p_hwfn); if (rc) @@ -2102,11 +2112,8 @@ int qed_hw_start_fastpath(struct qed_hwfn *p_hwfn) if (!p_ptt) return -EAGAIN; - /* If roce info is allocated it means roce is initialized and should - * be enabled in searcher. - */ if (p_hwfn->p_rdma_info && - p_hwfn->b_rdma_enabled_in_prs) + p_hwfn->p_rdma_info->active && p_hwfn->b_rdma_enabled_in_prs) qed_wr(p_hwfn, p_ptt, p_hwfn->rdma_prs_search_reg, 0x1); /* Re-open incoming traffic */ |