]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
RDMA/mana_ib: Fix bug in creation of dma regions
authorKonstantin Taranov <kotaranov@microsoft.com>
Mon, 4 Mar 2024 13:52:40 +0000 (05:52 -0800)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:17:25 +0000 (18:17 -0400)
[ Upstream commit e02497fb654689049ba8b46f098f17d5f19e0b3c ]

Use ib_umem_dma_offset() helper to calculate correct dma offset.

Fixes: 0266a177631d ("RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter")
Signed-off-by: Konstantin Taranov <kotaranov@microsoft.com>
Link: https://lore.kernel.org/r/1709560361-26393-2-git-send-email-kotaranov@linux.microsoft.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/hw/mana/main.c

index faca092456fa3d692879979b40c75714ef2602fe..7840c9e2631cc9dcea2022d28768e01a55aedd39 100644 (file)
@@ -358,7 +358,7 @@ int mana_ib_gd_create_dma_region(struct mana_ib_dev *dev, struct ib_umem *umem,
                             sizeof(struct gdma_create_dma_region_resp));
 
        create_req->length = umem->length;
-       create_req->offset_in_page = umem->address & (page_sz - 1);
+       create_req->offset_in_page = ib_umem_dma_offset(umem, page_sz);
        create_req->gdma_page_type = order_base_2(page_sz) - PAGE_SHIFT;
        create_req->page_count = num_pages_total;