[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250217133228.24405-1-luis@igalia.com>
Date: Mon, 17 Feb 2025 13:32:26 +0000
From: Luis Henriques <luis@...lia.com>
To: Miklos Szeredi <miklos@...redi.hu>,
Bernd Schubert <bschubert@....com>
Cc: Dave Chinner <david@...morbit.com>,
Alexander Viro <viro@...iv.linux.org.uk>,
Christian Brauner <brauner@...nel.org>,
Jan Kara <jack@...e.cz>,
Matt Harvey <mharvey@...ptrading.com>,
linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org,
Luis Henriques <luis@...lia.com>
Subject: [PATCH v6 0/2] fuse: allow notify_inval for all inodes
Hi!
In this version, invalidate_inodes() needs to be exported to be used by
fuse_reverse_inval_all(). This is a big simplification of this function,
which now simply calls shrink_dcache_sb() and invalidate_inodes().
It's clear that inodes still being referenced will not be invalidated --
but that's already the case for the single inode NOTIFY_INVAL_INODE fuse
operation.
* Changes since v5
- Added missing iput() in function fuse_reverse_inval_all()
* Changes since v4
- Replaced superblock inodes iteration by a single call to
invalidate_inodes(). Also do the shrink_dcache_sb() first. (Dave Chinner)
* Changes since v3
- Added comments to clarify semantic changes in fuse_reverse_inval_inode()
when called with FUSE_INVAL_ALL_INODES (suggested by Bernd).
- Added comments to inodes iteration loop to clarify __iget/iput usage
(suggested by Joanne)
- Dropped get_fuse_mount() call -- fuse_mount can be obtained from
fuse_ilookup() directly (suggested by Joanne)
(Also dropped the RFC from the subject.)
* Changes since v2
- Use the new helper from fuse_reverse_inval_inode(), as suggested by Bernd.
- Also updated patch description as per checkpatch.pl suggestion.
* Changes since v1
As suggested by Bernd, this patch v2 simply adds an helper function that
will make it easier to replace most of it's code by a call to function
super_iter_inodes() when Dave Chinner's patch[1] eventually gets merged.
[1] https://lore.kernel.org/r/20241002014017.3801899-3-david@fromorbit.com
Luis Henriques (2):
vfs: export invalidate_inodes()
fuse: add new function to invalidate cache for all inodes
fs/fuse/inode.c | 34 ++++++++++++++++++++++++++++++++++
fs/inode.c | 1 +
fs/internal.h | 1 -
include/linux/fs.h | 1 +
include/uapi/linux/fuse.h | 3 +++
5 files changed, 39 insertions(+), 1 deletion(-)
Powered by blists - more mailing lists