mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-21 10:01:00 +00:00
RDMA/rtrs-srv: Jump to dereg_mr label if allocate iu fails
[ Upstream commitf77c4839ee
] The rtrs_iu_free is called in rtrs_iu_alloc if memory is limited, so we don't need to free the same iu again. Fixes:9cb8374804
("RDMA/rtrs: server: main functionality") Link: https://lore.kernel.org/r/20201217141915.56989-7-jinpu.wang@cloud.ionos.com Signed-off-by: Guoqing Jiang <guoqing.jiang@cloud.ionos.com> Reviewed-by: Gioh Kim <gi-oh.kim@cloud.ionos.com> Signed-off-by: Jack Wang <jinpu.wang@cloud.ionos.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
5abee8b1fc
commit
9e97c211b7
1 changed files with 1 additions and 2 deletions
|
@ -671,7 +671,7 @@ static int map_cont_bufs(struct rtrs_srv_sess *sess)
|
|||
if (!srv_mr->iu) {
|
||||
err = -ENOMEM;
|
||||
rtrs_err(ss, "rtrs_iu_alloc(), err: %d\n", err);
|
||||
goto free_iu;
|
||||
goto dereg_mr;
|
||||
}
|
||||
}
|
||||
/* Eventually dma addr for each chunk can be cached */
|
||||
|
@ -687,7 +687,6 @@ static int map_cont_bufs(struct rtrs_srv_sess *sess)
|
|||
srv_mr = &sess->mrs[mri];
|
||||
sgt = &srv_mr->sgt;
|
||||
mr = srv_mr->mr;
|
||||
free_iu:
|
||||
rtrs_iu_free(srv_mr->iu, sess->s.dev->ib_dev, 1);
|
||||
dereg_mr:
|
||||
ib_dereg_mr(mr);
|
||||
|
|
Loading…
Reference in a new issue