aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/cxgb4/mem.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/infiniband/hw/cxgb4/mem.c')
-rw-r--r--drivers/infiniband/hw/cxgb4/mem.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/infiniband/hw/cxgb4/mem.c b/drivers/infiniband/hw/cxgb4/mem.c
index e54ff6d25691..7f94da1a2437 100644
--- a/drivers/infiniband/hw/cxgb4/mem.c
+++ b/drivers/infiniband/hw/cxgb4/mem.c
@@ -712,8 +712,10 @@ struct ib_mr *c4iw_alloc_fast_reg_mr(struct ib_pd *pd, int pbl_depth)
712 php = to_c4iw_pd(pd); 712 php = to_c4iw_pd(pd);
713 rhp = php->rhp; 713 rhp = php->rhp;
714 mhp = kzalloc(sizeof(*mhp), GFP_KERNEL); 714 mhp = kzalloc(sizeof(*mhp), GFP_KERNEL);
715 if (!mhp) 715 if (!mhp) {
716 ret = -ENOMEM;
716 goto err; 717 goto err;
718 }
717 719
718 mhp->rhp = rhp; 720 mhp->rhp = rhp;
719 ret = alloc_pbl(mhp, pbl_depth); 721 ret = alloc_pbl(mhp, pbl_depth);
@@ -730,8 +732,10 @@ struct ib_mr *c4iw_alloc_fast_reg_mr(struct ib_pd *pd, int pbl_depth)
730 mhp->attr.state = 1; 732 mhp->attr.state = 1;
731 mmid = (stag) >> 8; 733 mmid = (stag) >> 8;
732 mhp->ibmr.rkey = mhp->ibmr.lkey = stag; 734 mhp->ibmr.rkey = mhp->ibmr.lkey = stag;
733 if (insert_handle(rhp, &rhp->mmidr, mhp, mmid)) 735 if (insert_handle(rhp, &rhp->mmidr, mhp, mmid)) {
736 ret = -ENOMEM;
734 goto err3; 737 goto err3;
738 }
735 739
736 PDBG("%s mmid 0x%x mhp %p stag 0x%x\n", __func__, mmid, mhp, stag); 740 PDBG("%s mmid 0x%x mhp %p stag 0x%x\n", __func__, mmid, mhp, stag);
737 return &(mhp->ibmr); 741 return &(mhp->ibmr);
@@ -755,9 +759,6 @@ struct ib_fast_reg_page_list *c4iw_alloc_fastreg_pbl(struct ib_device *device,
755 dma_addr_t dma_addr; 759 dma_addr_t dma_addr;
756 int size = sizeof *c4pl + page_list_len * sizeof(u64); 760 int size = sizeof *c4pl + page_list_len * sizeof(u64);
757 761
758 if (page_list_len > T4_MAX_FR_DEPTH)
759 return ERR_PTR(-EINVAL);
760
761 c4pl = dma_alloc_coherent(&dev->rdev.lldi.pdev->dev, size, 762 c4pl = dma_alloc_coherent(&dev->rdev.lldi.pdev->dev, size,
762 &dma_addr, GFP_KERNEL); 763 &dma_addr, GFP_KERNEL);
763 if (!c4pl) 764 if (!c4pl)