Details
-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Description
When support for folios are added to generic_perform_write() we can enable folio based allocations without re-writing the lustre i/o path to use iomap:
https://www.spinics.net/lists/linux-nfs/msg104002.html
Updated patch:
https://lore.kernel.org/linux-fsdevel/20240527163616.1135968-2-hch@lst.de/
Depends on (landed for v6.9):
https://patchwork.kernel.org/project/linux-fsdevel/patch/20240521114939.2541461-1-xu.yang_2@nxp.com/
This is tested for NFS
https://www.spinics.net/lists/linux-nfs/msg104003.html
suggesting this alone is enough for a 2x improvement in buffered i/o.
Update lustre to use the folio allocation ie: __filemap_get_folio() instead of the grab_cache_page* family.
Provide a __filemap_get_folio() implementation for compatibility with older kernels.
Assuming no large regressions this should be available in kernel v6.11:
Linux kernel commit: v6.10-rc7-2-g9aac777aaf945
filemap: Convert generic_perform_write() to support large folios