[PATCH RESEND 0/4] improve fadvise(POSIX_FADV_WILLNEED) with large folio

Jaegeuk Kim
2025-12-01T21:01:56Z

This patch series aims to improve fadvise(POSIX_FADV_WILLNEED). The first patch
fixes the broken logic which was not reading the entire range ahead, and two
patches were converting the logic to adopt large folio supported by filesystem.
The last one is one example of how filesystem can set a desired folio order to
boost the readahead speed.

Jaegeuk Kim (4):
mm/readahead: fix the broken readahead for POSIX_FADV_WILLNEED
mm/readahead: use page_cache_sync_ra for FADVISE_FAV_WILLNEED
mm/readahead: add a_ops->ra_folio_order to get a desired folio order
f2fs: attach a_ops->ra_folio_order to allocate large folios for
readahead

fs/f2fs/data.c | 9 +++++++++
fs/f2fs/f2fs.h | 3 +++
fs/f2fs/super.c | 1 +
fs/f2fs/sysfs.c | 9 +++++++++
include/linux/fs.h | 4 ++++
include/linux/pagemap.h | 12 +++++++++++
mm/readahead.c | 44 ++++++++++++++++++++++++-----------------
7 files changed, 64 insertions(+), 18 deletions(-)