Commit 3a71cd6c authored by Md Haris Iqbal's avatar Md Haris Iqbal Committed by Leon Romanovsky
Browse files

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: 9cb83748 ("RDMA/rtrs: server: main functionality")
Signed-off-by: default avatarMd Haris Iqbal <haris.iqbal@ionos.com>
Signed-off-by: default avatarJack Wang <jinpu.wang@ionos.com>
Signed-off-by: default avatarGrzegorz Prajsner <grzegorz.prajsner@ionos.com>
Link: https://lore.kernel.org/r/20231120154146.920486-5-haris.iqbal@ionos.com


Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
parent ed1e52ae
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -551,7 +551,10 @@ static void unmap_cont_bufs(struct rtrs_srv_path *srv_path)
		struct rtrs_srv_mr *srv_mr;

		srv_mr = &srv_path->mrs[i];

		if (always_invalidate)
			rtrs_iu_free(srv_mr->iu, srv_path->s.dev->ib_dev, 1);

		ib_dereg_mr(srv_mr->mr);
		ib_dma_unmap_sg(srv_path->s.dev->ib_dev, srv_mr->sgt.sgl,
				srv_mr->sgt.nents, DMA_BIDIRECTIONAL);