[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190724095310.GA12991@apalos>
Date: Wed, 24 Jul 2019 12:53:10 +0300
From: Ilias Apalodimas <ilias.apalodimas@...aro.org>
To: Jose Abreu <Jose.Abreu@...opsys.com>
Cc: David Miller <davem@...emloft.net>,
"jonathanh@...dia.com" <jonathanh@...dia.com>,
"robin.murphy@....com" <robin.murphy@....com>,
"lists@...h.nu" <lists@...h.nu>,
"Joao.Pinto@...opsys.com" <Joao.Pinto@...opsys.com>,
"alexandre.torgue@...com" <alexandre.torgue@...com>,
"maxime.ripard@...tlin.com" <maxime.ripard@...tlin.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-stm32@...md-mailman.stormreply.com"
<linux-stm32@...md-mailman.stormreply.com>,
"wens@...e.org" <wens@...e.org>,
"mcoquelin.stm32@...il.com" <mcoquelin.stm32@...il.com>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
"peppe.cavallaro@...com" <peppe.cavallaro@...com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH net-next 3/3] net: stmmac: Introducing support for Page
Pool
Jose,
> From: Ilias Apalodimas <ilias.apalodimas@...aro.org>
> Date: Jul/24/2019, 09:54:27 (UTC+00:00)
>
> > Hi David,
> >
> > > From: Jon Hunter <jonathanh@...dia.com>
> > > 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
> ?
well the API is calling the map with the correct page, page offset (0) and size
right? I don't see any overlapping here. Aren't we mapping what we allocate?
Why do you need higher order pages? Jumbo frames? Can we do a quick test with
the order being 0?
Thanks,
/Ilias
Powered by blists - more mailing lists