[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250216165008.6671-1-luis@igalia.com>
Date: Sun, 16 Feb 2025 16:50:06 +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 v5 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 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 | 33 +++++++++++++++++++++++++++++++++
fs/inode.c | 1 +
fs/internal.h | 1 -
include/linux/fs.h | 1 +
include/uapi/linux/fuse.h | 3 +++
5 files changed, 38 insertions(+), 1 deletion(-)
Powered by blists - more mailing lists