Commit c9d7e3da authored by Souptick Joarder's avatar Souptick Joarder Committed by Greg Kroah-Hartman

fpga: dfl: afu: Corrected error handling levels

Corrected error handling goto sequnece. Level put_pages should
be called when pinned pages >= 0 && pinned != npages. Level
free_pages should be called when pinned pages < 0.

Fixes: fa8dda1e ("fpga: dfl: afu: add DFL_FPGA_PORT_DMA_MAP/UNMAP ioctls support")
Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
Acked-by: default avatarWu Hao <hao.wu@intel.com>
Reviewed-by: default avatarXu Yilun <yilun.xu@intel.com>
Link: https://lore.kernel.org/r/1589825991-3545-1-git-send-email-jrdr.linux@gmail.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent b03025c5
...@@ -61,10 +61,10 @@ static int afu_dma_pin_pages(struct dfl_feature_platform_data *pdata, ...@@ -61,10 +61,10 @@ static int afu_dma_pin_pages(struct dfl_feature_platform_data *pdata,
region->pages); region->pages);
if (pinned < 0) { if (pinned < 0) {
ret = pinned; ret = pinned;
goto put_pages; goto free_pages;
} else if (pinned != npages) { } else if (pinned != npages) {
ret = -EFAULT; ret = -EFAULT;
goto free_pages; goto put_pages;
} }
dev_dbg(dev, "%d pages pinned\n", pinned); dev_dbg(dev, "%d pages pinned\n", pinned);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment