Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-17916

Enable folio allocation support on the buffed io read/write path (BIO)

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Unresolved
    • Minor
    • Lustre 2.17.0
    • 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

      Attachments

        Activity

          People

            stancheff Shaun Tancheff
            stancheff Shaun Tancheff
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: