Re: [PATCH 3/4] mm/readahead: add a_ops->ra_folio_order to get a desired folio order

Matthew Wilcox
2025-12-01T21:38:40Z

On Mon, Dec 01, 2025 at 09:24:41PM +0000, Jaegeuk Kim wrote:
> On 12/01, Matthew Wilcox wrote:
> > On Mon, Dec 01, 2025 at 09:01:26PM +0000, Jaegeuk Kim wrote:
> > > This patch introduces a new address operation, a_ops->ra_folio_order(), which
> > > proposes a new folio order based on the adjusted order for page_cache_sync_ra.
> > >
> > > Hence, each filesystem can set the desired minimum order of folio allocation
> > > when requesting fadvise(POSIX_FADV_WILLNEED).
> >
> > Again, you've said what but not why. Does the mm code not ramp up the
> > folio order sufficiently quickly? What are you trying to accomplish?
>
> That's why I posted a series of the patches to provide more details. Could you
> please check the last patch in the series to show fadvise() does not increase
> the folio order?
>
> https://lore.kernel.org/linux-f2fs-devel/20251201210152.909339-5-jaegeuk@kernel.org/T/#u

So what you're trying to say is that readahead() currently only uses
order-0 pages and you want it to use larger order pages? I agree with
that! But I don't think this is the way to do it. We should just use
larger order allocations, always. None of this "call the filesystem,
check a sysfs parameter". Just use the largest order page that fits.