RDMA/cxgb4: Return proper errors in fastreg mr/pbl allocation
Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
7ec45b9234
commit
841dba9a5a
1 changed files with 6 additions and 2 deletions
|
@ -712,8 +712,10 @@ struct ib_mr *c4iw_alloc_fast_reg_mr(struct ib_pd *pd, int pbl_depth)
|
||||||
php = to_c4iw_pd(pd);
|
php = to_c4iw_pd(pd);
|
||||||
rhp = php->rhp;
|
rhp = php->rhp;
|
||||||
mhp = kzalloc(sizeof(*mhp), GFP_KERNEL);
|
mhp = kzalloc(sizeof(*mhp), GFP_KERNEL);
|
||||||
if (!mhp)
|
if (!mhp) {
|
||||||
|
ret = -ENOMEM;
|
||||||
goto err;
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
mhp->rhp = rhp;
|
mhp->rhp = rhp;
|
||||||
ret = alloc_pbl(mhp, pbl_depth);
|
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)
|
||||||
mhp->attr.state = 1;
|
mhp->attr.state = 1;
|
||||||
mmid = (stag) >> 8;
|
mmid = (stag) >> 8;
|
||||||
mhp->ibmr.rkey = mhp->ibmr.lkey = stag;
|
mhp->ibmr.rkey = mhp->ibmr.lkey = stag;
|
||||||
if (insert_handle(rhp, &rhp->mmidr, mhp, mmid))
|
if (insert_handle(rhp, &rhp->mmidr, mhp, mmid)) {
|
||||||
|
ret = -ENOMEM;
|
||||||
goto err3;
|
goto err3;
|
||||||
|
}
|
||||||
|
|
||||||
PDBG("%s mmid 0x%x mhp %p stag 0x%x\n", __func__, mmid, mhp, stag);
|
PDBG("%s mmid 0x%x mhp %p stag 0x%x\n", __func__, mmid, mhp, stag);
|
||||||
return &(mhp->ibmr);
|
return &(mhp->ibmr);
|
||||||
|
|
Reference in a new issue