On 2022-04-28 15:45, Christoph Hellwig wrote:
On Thu, Apr 28, 2022 at 03:44:36PM +0100, Robin Murphy wrote:
Rather than introduce this extra level of allocator complexity, how about
just dividing up the initial SWIOTLB allocation into multiple io_tlb_mem
instances?
Yeah. We're almost done removing all knowledge of swiotlb from drivers,
so the very last thing I want is an interface that allows a driver to
allocate a per-device buffer.
FWIW I'd already started thinking about having a distinct io_tlb_mem for
non-coherent devices where vaddr is made non-cacheable to avoid the
hassle of keeping the arch_dma_sync_* calls lined up, so I'm certainly
in favour of bringing in a bit more flexibility at this level :)
Robin.