From 11d9c9119fae48ee4fb8f869d3140718d0bcfdf0 Mon Sep 17 00:00:00 2001 From: Firas Jahjah Date: Sun, 17 Oct 2021 17:17:09 +0300 Subject: [PATCH] linux/efa: GDR, Pass correct start address on error flow On error flow, we're calling put_pages() with the user's start address instead of the page-aligned address. Fix this. Reviewed-by: Yossi Leybovich Signed-off-by: Firas Jahjah --- kernel/linux/efa/src/efa_gdr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/linux/efa/src/efa_gdr.c b/kernel/linux/efa/src/efa_gdr.c index 78316445..354347d6 100644 --- a/kernel/linux/efa/src/efa_gdr.c +++ b/kernel/linux/efa/src/efa_gdr.c @@ -245,7 +245,7 @@ struct efa_nvmem *nvmem_get(struct efa_dev *dev, struct efa_mr *mr, u64 start, err_unmap: nvmem->ops.dma_unmap_pages(dev->pdev, nvmem->pgtbl, nvmem->dma_mapping); err_put: - nvmem->ops.put_pages(0, 0, start, nvmem->pgtbl); + nvmem->ops.put_pages(0, 0, virt_start, nvmem->pgtbl); err_put_fp: nvmem_put_fp(); err_free: