Oddbean new post about | logout
 [$] Dancing the DMA two-step

Direct memory access (DMA) I/O is simple in concept: a peripheral device
moves data directly to or from memory while the CPU is busy doing other
things.  As is so often the case, DMA is rather more complicated in
practice, and the kernel has developed a complicated internal API to
support it.  It turns out that the DMA API, as it exists now, can affect
the performance of some high-bandwidth devices.  In an effort to address
that problem, Leon Romanovsky is making the API even more complex with https://lwn.net/ml/all/cover.1731244445.git.leon@kernel.org

adding a new two-step mapping API.

https://lwn.net/Articles/997563/