Re: [PATCH] fpga: dfl: afu: Pass the correct device to dma_mapping_error()

From: Alan Tull
Date: Mon Apr 15 2019 - 15:22:52 EST


On Thu, Apr 11, 2019 at 11:36 AM Moritz Fischer
<moritz.fischer.private@xxxxxxxxx> wrote:

Hi Scott,

Thanks!

>
> Hi Scott,
>
> good catch!
>
> On Thu, Apr 11, 2019 at 5:49 AM Wu Hao <hao.wu@xxxxxxxxx> wrote:
> >
> > On Wed, Apr 10, 2019 at 04:53:27PM -0500, Scott Wood wrote:
> > > dma_mapping_error() was being called on a different device struct than
> > > what was passed to map/unmap. Besides rendering the error checking
> > > ineffective, it caused a debug splat with CONFIG_DMA_API_DEBUG.
> > >
> > > Signed-off-by: Scott Wood <swood@xxxxxxxxxx>
> >
> > Hi Scott,
> >
> > Looks good to me. Thanks for catching this issue.
> >
> > Acked-by: Wu Hao <hao.wu@xxxxxxxxx>
> >
> > Hao
> >
> > > ---
> > > drivers/fpga/dfl-afu-dma-region.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/fpga/dfl-afu-dma-region.c b/drivers/fpga/dfl-afu-dma-region.c
> > > index e18a786fc943..cd68002ac097 100644
> > > --- a/drivers/fpga/dfl-afu-dma-region.c
> > > +++ b/drivers/fpga/dfl-afu-dma-region.c
> > > @@ -399,7 +399,7 @@ int afu_dma_map_region(struct dfl_feature_platform_data *pdata,
> > > region->pages[0], 0,
> > > region->length,
> > > DMA_BIDIRECTIONAL);
> > > - if (dma_mapping_error(&pdata->dev->dev, region->iova)) {
> > > + if (dma_mapping_error(dfl_fpga_pdata_to_parent(pdata), region->iova)) {
> > > dev_err(&pdata->dev->dev, "failed to map for dma\n");
> > > ret = -EFAULT;
> > > goto unpin_pages;
> > > --
> > > 1.8.3.1
>
> Acked-by: Moritz Fischer <mdf@xxxxxxxxxx>

Acked-by: Alan Tull <atull@xxxxxxxxxx>

>
> Thanks
> Moritz

Alan