A more dynamic software I/O TLB

The swiotlb, an obscure part of the kernel’s DMA-support layer, has unexpectedly proven to be useful in various scenarios beyond its original purpose. It addresses the limitations of certain devices when it comes to DMA transfers by employing bounce buffers, which slow down operations but allow I/O to be performed. Despite the expectation that addressing limitations would disappear over time, newer systems continue to face these limitations, especially in the embedded space. The swiotlb can also be used in confidential-computing systems that rely on bounce buffers for I/O. This patch set aims to update the swiotlb to make it more dynamic and address its own limitations, such as memory allocation. The series has undergone multiple revisions and is expected to be pushed into the mainline kernel during the 6.6 merge window. It is likely that future patches will follow.


To top