Messages in this thread | | | Date | Wed, 14 Feb 2024 16:49:43 +0200 | From | "Kirill A. Shutemov" <> | Subject | Re: [RFC V1 1/5] swiotlb: Support allocating DMA memory from SWIOTLB |
| |
On Fri, Jan 12, 2024 at 05:52:47AM +0000, Vishal Annapurve wrote: > Modify SWIOTLB framework to allocate DMA memory always from SWIOTLB. > > CVMs use SWIOTLB buffers for bouncing memory when using dma_map_* APIs > to setup memory for IO operations. SWIOTLB buffers are marked as shared > once during early boot. > > Buffers allocated using dma_alloc_* APIs are allocated from kernel memory > and then converted to shared during each API invocation. This patch ensures > that such buffers are also allocated from already shared SWIOTLB > regions. This allows enforcing alignment requirements on regions marked > as shared.
But does it work in practice?
Some devices (like GPUs) require a lot of DMA memory. So with this approach we would need to have huge SWIOTLB buffer that is unused in most VMs.
-- Kiryl Shutsemau / Kirill A. Shutemov
| |