On Sun, Nov 13, 2022 at 2:08 AM Guoqing Jiang <guoqing.jiang@xxxxxxxxx> wrote: > > We should check with count, also the only successful case is that > all sg elements are mapped, so make it explict. > > Signed-off-by: Guoqing Jiang <guoqing.jiang@xxxxxxxxx> > --- > drivers/infiniband/ulp/rtrs/rtrs-clt.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/infiniband/ulp/rtrs/rtrs-clt.c b/drivers/infiniband/ulp/rtrs/rtrs-clt.c > index 8546b8816524..5ffc170dae8c 100644 > --- a/drivers/infiniband/ulp/rtrs/rtrs-clt.c > +++ b/drivers/infiniband/ulp/rtrs/rtrs-clt.c > @@ -1064,9 +1064,7 @@ static int rtrs_map_sg_fr(struct rtrs_clt_io_req *req, size_t count) > > /* Align the MR to a 4K page size to match the block virt boundary */ > nr = ib_map_mr_sg(req->mr, req->sglist, count, NULL, SZ_4K); > - if (nr < 0) > - return nr; > - if (nr < req->sg_cnt) > + if (nr != count) > return -EINVAL; same here, we lost errno from API. > ib_update_fast_reg_key(req->mr, ib_inc_rkey(req->mr->rkey)); > > -- > 2.31.1 >