[PATCHSET RFC v5 3/8] fuse: cleanups ahead of adding fuse support

Darrick J. Wong
2025-09-16T00:18:50Z

Hi all,

In preparation for making fuse use the fs/iomap code for regular file
data IO, fix a few bugs in fuse and apply a couple of tweaks to iomap.

If you're going to start using this code, I strongly recommend pulling
from my git trees, which are linked below.

This has been running on the djcloud for months with no problems. Enjoy!
Comments and questions are, as always, welcome.

--D

kernel git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=fuse-iomap-prep
---
Commits in this patchset:
* fuse: allow synchronous FUSE_INIT
* fuse: move the backing file idr and code into a new source file
* fuse: move the passthrough-specific code back to passthrough.c
* fuse_trace: move the passthrough-specific code back to passthrough.c
* fuse: move CREATE_TRACE_POINTS to a separate file
---
fs/fuse/fuse_dev_i.h | 13 ++-
fs/fuse/fuse_i.h | 73 ++++++++++----
fs/fuse/fuse_trace.h | 35 +++++++
include/uapi/linux/fuse.h | 9 ++
fs/fuse/Kconfig | 4 +
fs/fuse/Makefile | 4 +
fs/fuse/backing.c | 231 +++++++++++++++++++++++++++++++++++++++++++++
fs/fuse/cuse.c | 3 -
fs/fuse/dev.c | 79 +++++++++++----
fs/fuse/dev_uring.c | 4 -
fs/fuse/inode.c | 54 ++++++++---
fs/fuse/passthrough.c | 198 +++++++--------------------------------
fs/fuse/trace.c | 13 +++
13 files changed, 494 insertions(+), 226 deletions(-)
create mode 100644 fs/fuse/backing.c
create mode 100644 fs/fuse/trace.c