RDMA/rtrs-srv: Free srv_mr iu only when always_invalidate is true
Since srv_mr->iu is allocated and used only when always_invalidate is true, free it only when always_invalidate is true. Fixes: 9cb837480424 ("RDMA/rtrs: server: main functionality") Signed-off-by: Md Haris Iqbal <haris.iqbal@ionos.com> Signed-off-by: Jack Wang <jinpu.wang@ionos.com> Signed-off-by: Grzegorz Prajsner <grzegorz.prajsner@ionos.com> Link: https://lore.kernel.org/r/20231120154146.920486-5-haris.iqbal@ionos.com Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
ed1e52aefa
commit
3a71cd6ca0
@ -551,7 +551,10 @@ static void unmap_cont_bufs(struct rtrs_srv_path *srv_path)
|
|||||||
struct rtrs_srv_mr *srv_mr;
|
struct rtrs_srv_mr *srv_mr;
|
||||||
|
|
||||||
srv_mr = &srv_path->mrs[i];
|
srv_mr = &srv_path->mrs[i];
|
||||||
rtrs_iu_free(srv_mr->iu, srv_path->s.dev->ib_dev, 1);
|
|
||||||
|
if (always_invalidate)
|
||||||
|
rtrs_iu_free(srv_mr->iu, srv_path->s.dev->ib_dev, 1);
|
||||||
|
|
||||||
ib_dereg_mr(srv_mr->mr);
|
ib_dereg_mr(srv_mr->mr);
|
||||||
ib_dma_unmap_sg(srv_path->s.dev->ib_dev, srv_mr->sgt.sgl,
|
ib_dma_unmap_sg(srv_path->s.dev->ib_dev, srv_mr->sgt.sgl,
|
||||||
srv_mr->sgt.nents, DMA_BIDIRECTIONAL);
|
srv_mr->sgt.nents, DMA_BIDIRECTIONAL);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user