v1
2026-07-10
提供shmem_write_folio封装 · v1
为drm中shmem滥用提供shmem_write_folio()封装,将swap_iocb处理完全限制在mm/内,为swap I/O重构做准备。
原始补丁链接
子 Patch(7)
1/7
shmem: provide a shmem_write_folio wrapper
[patchwork series v1] submitter=Christoph Hellwig patches (7): [1/7] shmem: provide a shmem_write_folio wrapper [2/7] mm/swap: introduce struct swap_io_ctx [3/7] mm/swap: also use struct swap_io
2/7
mm/swap: introduce struct swap_io_ctx
将swap_iocb的双指针上下文泛化为swap_io_ctx栈上结构,简化I/O上下文管理。
3/7
mm/swap: also use struct swap_iocb for block I/O
扩展swap_iocb支持块设备bio构建,使块swap也能受益于I/O批处理。
4/7
mm/swap: remove count_swpout_vm_event
将count_swpout_vm_event的唯一调用点内联,删除该冗余函数。
5/7
mm/swap: use swap_ops to register swap device's methods
使用swap_ops统一注册swap设备方法,简化代码并便于添加新设备类型。
6/7
mm/swap: remove SWP_FS_OPS
提供swap_fs_activate辅助函数直接设置swap_fs_ops,用swap_ops标志替代SWP_FS_OPS。
7/7
mm/vmstat: add NRSWP{IN,OUT} counters
新增NRSWPIN/NRSWPOUT计数器,统计swap I/O次数,区分于页面写入次数。