v2
2026-08-25
网络套接字避免swiotlb额外拷贝 · v2
允许网络socket缓冲直接从swiotlb池分配以消除机密计算I/O额外拷贝,覆盖收发两条路径。
原始补丁链接
子 Patch(5)
1/5
swiotlb: enforce pool nareas and nslabs invariants
[swiotlb: enforce pool nareas and nslabs invariants] The SWIOTLB allocator relies on two runtime invariants across all pool initialization paths: 1. pool->nareas must always be a power of two so that
2/5
swiotlb/mm: Implement SWIOTLB nocopy page allocator
[swiotlb/mm: Implement SWIOTLB nocopy page allocator] Introduce swiotlb_alloc_pages() and swiotlb_free_pages() to allocate and release compound pages directly from the default SWIOTLB pool. The alloc
3/5
net/swiotlb: Track bounce device per socket
[net/swiotlb: Track bounce device per socket] Record, on each network socket, the underlying hardware device that requests DMA mapping of tx packets. This is used for nocopy confidential computing, so
4/5
net: Divert socket allocations to SWIOTLB for nocopy TX
[net: Divert socket allocations to SWIOTLB for nocopy TX] Conditionally intercept socket buffer page allocations and direct them to the SWIOTLB page allocator when nocopy tx is active. This only happ
5/5
swiotlb: Implement RX nocopy with fast recycling eviction
[swiotlb: Implement RX nocopy with fast recycling eviction] Conditionally divert receive buffer allocations in page_pool to the SWIOTLB page allocator. This only happens when swiotlb usage is below t