v2
2026-11-06
devdax PUD 在 fork 时漏取引用 · v2
修复 fork 复制 device DAX PUD 时未取 folio 引用的问题,并添加对应 selftest。
原始补丁链接
子 Patch(2)
1/2
mm/huge_memory: take a reference on a folio PUD copied by fork
copy_huge_pud()为device DAX的PUD复制补上folio引用、PUD rmap和文件RSS计数,新增folio_dup_file_rmap_pud();修复子进程unmap时引用、mapcount和rss counter被多减的问题。
2/2
selftests/mm: test fork of a device DAX PUD
新增fork_dax_pud自测:在含guard region的VMA中fork映射device DAX PUD,检查子进程RssFile计入该PUD;仅在指定设备环境运行,未修复内核会出现负rss counter。