Re: [PATCH 0/2 v8] add ioctl/sysfs to donate file-backed pages

From: Jaegeuk Kim
Date: Tue Feb 04 2025 - 11:26:12 EST


On 02/03, Christoph Hellwig wrote:
> On Fri, Jan 31, 2025 at 10:27:55PM +0000, Jaegeuk Kim wrote:
> > Note, let me keep improving this patch set, while trying to get some feedbacks
> > from MM and API folks from [1].
>
> Please actually drive it instead of only interacting once after
> I told you to. The feedback is clearly that it is a MM thing, so please
> drive it forward instead of going back to the hacky file system version.

I keep saying working in parallel for production. And, no worries, I won't
merge this to -next until I get the feedback from the MM folks. I was
waiting for a couple of weeks before bothering them, so will ping there.

>
> >
> > If users clearly know which file-backed pages to reclaim in system view, they
> > can use this ioctl() to register in advance and reclaim all at once later.
> >
> > I'd like to propose this API in F2FS only, since
> > 1) the use-case is quite limited in Android at the moment. Once it's generall
> > accepted with more use-cases, happy to propose a generic API such as fadvise.
> > Please chime in, if there's any needs.
> >
> > 2) it's file-backed pages which requires to maintain the list of inode objects.
> > I'm not sure this fits in MM tho, also happy to listen to any feedback.
> >
> > [1] https://lore.kernel.org/lkml/Z4qmF2n2pzuHqad_@xxxxxxxxxx/
> >
> > Change log from v7:
> > - change the sysfs entry to reclaim pages in all f2fs mounts
> >
> > Change log from v6:
> > - change sysfs entry name to reclaim_caches_kb
> >
> > Jaegeuk Kim (2):
> > f2fs: register inodes which is able to donate pages
> > f2fs: add a sysfs entry to request donate file-backed pages
> >
> > Jaegeuk Kim (2):
> > f2fs: register inodes which is able to donate pages
> > f2fs: add a sysfs entry to request donate file-backed pages
> >
> > Documentation/ABI/testing/sysfs-fs-f2fs | 7 ++
> > fs/f2fs/debug.c | 3 +
> > fs/f2fs/f2fs.h | 14 +++-
> > fs/f2fs/file.c | 60 +++++++++++++++++
> > fs/f2fs/inode.c | 14 ++++
> > fs/f2fs/shrinker.c | 90 +++++++++++++++++++++++++
> > fs/f2fs/super.c | 1 +
> > fs/f2fs/sysfs.c | 63 +++++++++++++++++
> > include/uapi/linux/f2fs.h | 7 ++
> > 9 files changed, 258 insertions(+), 1 deletion(-)
> >
> > --
> > 2.48.1.362.g079036d154-goog
> >
> >
> ---end quoted text---