[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <175573714661.23206.877359205706511372.stgit@frogsfrogsfrogs>
Date: Wed, 20 Aug 2025 17:50:40 -0700
From: "Darrick J. Wong" <djwong@...nel.org>
To: tytso@....edu
Cc: John@...ves.net, bernd@...ernd.com, linux-fsdevel@...r.kernel.org,
linux-ext4@...r.kernel.org, miklos@...redi.hu, joannelkoong@...il.com,
neal@...pa.dev
Subject: [PATCHSET RFC v4 6/6] fuse2fs: improve block and inode caching
Hi all,
This final series ports the libext2fs inode cache to the new cache.c
hashtable code that was added for fuse4fs unlinked file support and
improves on the UNIX I/O manager's block cache by adding a new I/O
manager that does its own caching. Now we no longer have statically
sized buffer caching for the two fuse servers.
If you're going to start using this code, I strongly recommend pulling
from my git trees, which are linked below.
Comments and questions are, as always, welcome.
e2fsprogs git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/e2fsprogs.git/log/?h=fuse2fs-caching
---
Commits in this patchset:
* libsupport: add caching IO manager
* iocache: add the actual buffer cache
* iocache: bump buffer mru priority every 50 accesses
* fuse2fs: enable caching IO manager
* fuse2fs: increase inode cache size
* libext2fs: improve caching for inodes
---
lib/ext2fs/ext2fsP.h | 13 +
lib/support/cache.h | 1
lib/support/iocache.h | 17 +
debugfs/Makefile.in | 4
e2fsck/Makefile.in | 4
lib/ext2fs/Makefile.in | 4
lib/ext2fs/inode.c | 215 +++++++++++---
lib/ext2fs/io_manager.c | 3
lib/support/Makefile.in | 6
lib/support/cache.c | 16 +
lib/support/iocache.c | 740 +++++++++++++++++++++++++++++++++++++++++++++++
misc/Makefile.in | 7
misc/fuse2fs.c | 75 +----
misc/fuse4fs.c | 73 -----
resize/Makefile.in | 4
tests/progs/Makefile.in | 4
16 files changed, 990 insertions(+), 196 deletions(-)
create mode 100644 lib/support/iocache.h
create mode 100644 lib/support/iocache.c
Powered by blists - more mailing lists