v1 2026-07-10

shmem写folio封装 · v1

提供shmem_write_folio包装函数,简化shmem中写入folio的操作接口。

本次提交拆成 7 个子 patch:shmem: provide a shmem_write_folio wrapper、mm/swap: introduce struct swap_io_ctx、mm/swap: also use struct swap_iocb for block I/O、mm/swap: remove count_swpout_vm_event、mm/swap: use swap_ops to register swap device’s methods 等共 7 项改动。

原始补丁链接

子 Patch(7)

1/7
shmem: provide a shmem_write_folio wrapper
原始邮件 ↗
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次数,区分于页面写入次数。
原始邮件 ↗