Thread (57 messages) 57 messages, 4 authors, 7h ago

Re: [PATCH v8 00/23] dma-mapping: Track shared DMA state through direct, pool and swiotlb paths

From: Jason Gunthorpe <jgg@ziepe.ca>
Date: 2026-07-25 14:32:49
Also in: linux-arm-kernel, linux-coco, linux-iommu, linux-s390, lkml

On Thu, Jul 23, 2026 at 10:51:08AM +0300, Leon Romanovsky wrote:
On Wed, Jul 22, 2026 at 04:57:09PM -0300, Jason Gunthorpe wrote:
quoted
On Tue, Jul 21, 2026 at 03:40:56PM +0300, Leon Romanovsky wrote:
quoted
Why don't we continue the effort to remove "struct page" entirely
from the DMA API internals?

IMHO, everything not exposed to DMA API users should use
phys_addr_t, including the DMA address pool.
The alloc interfaces return a struct page, that is why this stuff is
organized like this. Look at dma_alloc_pages()
And I didn't say that we should change dma_alloc_pages(). It is external
API, which needs to be struct *page. I'm talking about internals.

Even dma_alloc_pages() flow shows how convoluted and non-uniform
the code underneath which performs translations all the time.
Yeah, but I don't really want to go from phys/virt to page, I'd rather
see the other direction that is easier to reason about

Maybe some small wrapper that returned phys or whatever would clean
this up

Jason
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help