RE: [PATCH net-next 3/3] net: stmmac: Introducing support for Page Pool

From: Jose Abreu
Date: Wed Jul 24 2019 - 05:43:49 EST


From: Ilias Apalodimas <ilias.apalodimas@xxxxxxxxxx>
Date: Jul/24/2019, 09:54:27 (UTC+00:00)

> Hi David,
>
> > From: Jon Hunter <jonathanh@xxxxxxxxxx>
> > Date: Tue, 23 Jul 2019 13:09:00 +0100
> >
> > > Setting "iommu.passthrough=1" works for me. However, I am not sure where
> > > to go from here, so any ideas you have would be great.
> >
> > Then definitely we are accessing outside of a valid IOMMU mapping due
> > to the page pool support changes.
>
> Yes. On the netsec driver i did test with and without SMMU to make sure i am not
> breaking anything.
> Since we map the whole page on the API i think some offset on the driver causes
> that. In any case i'll have another look on page_pool to make sure we are not
> missing anything.

Ilias, can it be due to this:

stmmac_main.c:
pp_params.order = DIV_ROUND_UP(priv->dma_buf_sz, PAGE_SIZE);

page_pool.c:
dma = dma_map_page_attrs(pool->p.dev, page, 0,
(PAGE_SIZE << pool->p.order),
pool->p.dma_dir, DMA_ATTR_SKIP_CPU_SYNC);

"order", will be at least 1 and then mapping the page can cause overlap
?

---
Thanks,
Jose Miguel Abreu