Re: [PATCH net-next v7 1/6] page_pool: frag API support for 32-bit arch with 64-bit DMA

From: Jakub Kicinski
Date: Thu Aug 17 2023 - 12:17:01 EST


On Thu, 17 Aug 2023 16:57:16 +0300 Ilias Apalodimas wrote:
> Why should we care about this? Even an architecture that's 32-bit and
> has a 64bit DMA should be allowed to split the pages internally if it
> decides to do so. The trick that drivers usually do is elevate the
> page refcnt and deal with that internally.

Can we assume the DMA mapping of page pool is page aligned? We should
be, right? That means we're storing 12 bits of 0 at the lower end.
So even with 32b of space we can easily store addresses for 32b+12b =>
16TB of memory. "Ought to be enough" to paraphrase Bill G, and the
problem is only in our heads?

Before we go that way - Mina, are the dma-buf "chunks" you're working
with going to be fragment-able? Or rather can driver and/or core take
multiple references on a single buffer?