[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJfpegvZoxFLWkFzHPw71FsVxoGMwg+P_iz9eeyU54+D4KG4ow@mail.gmail.com>
Date: Wed, 29 Jan 2025 16:33:21 +0100
From: Miklos Szeredi <miklos@...redi.hu>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
Bernd Schubert <bernd.schubert@...tmail.fm>
Subject: [GIT PULL] fuse update for 6.14
Hi Linus,
Please pull from:
git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git
tags/fuse-update-6.14
Add support for io-uring communication between kernel and userspace
using IORING_OP_URING_CMD (Bernd Schubert). Following features enable
gains in performance compared to the regular interface:
- Allow processing multiple requests with less syscall overhead
- Combine commit of old and fetch of new fuse request
- CPU/NUMA affinity of queues
Patches were reviewed by several people, including Pavel Begunkov,
io-uring co-maintainer.
Thanks,
Miklos
---
Bernd Schubert (18):
fuse: rename to fuse_dev_end_requests and make non-static
fuse: Move fuse_get_dev to header file
fuse: Move request bits
fuse: Add fuse-io-uring design documentation
fuse: make args->in_args[0] to be always the header
fuse: {io-uring} Handle SQEs - register commands
fuse: Make fuse_copy non static
fuse: Add fuse-io-uring handling into fuse_copy
fuse: {io-uring} Make hash-list req unique finding functions non-static
fuse: Add io-uring sqe commit and fetch support
fuse: {io-uring} Handle teardown of ring entries
fuse: {io-uring} Make fuse_dev_queue_{interrupt,forget} non-static
fuse: Allow to queue fg requests through io-uring
fuse: Allow to queue bg requests through io-uring
fuse: {io-uring} Prevent mount point hang on fuse-server termination
fuse: block request allocation until io-uring init is complete
fuse: enable fuse-over-io-uring
fuse: prevent disabling io-uring on active connections
---
Documentation/filesystems/fuse-io-uring.rst | 99 ++
Documentation/filesystems/index.rst | 1 +
fs/fuse/Kconfig | 12 +
fs/fuse/Makefile | 1 +
fs/fuse/dax.c | 11 +-
fs/fuse/dev.c | 127 +--
fs/fuse/dev_uring.c | 1319 +++++++++++++++++++++++++++
fs/fuse/dev_uring_i.h | 205 +++++
fs/fuse/dir.c | 32 +-
fs/fuse/fuse_dev_i.h | 66 ++
fs/fuse/fuse_i.h | 32 +-
fs/fuse/inode.c | 14 +-
fs/fuse/xattr.c | 7 +-
include/uapi/linux/fuse.h | 76 +-
14 files changed, 1924 insertions(+), 78 deletions(-)
create mode 100644 Documentation/filesystems/fuse-io-uring.rst
create mode 100644 fs/fuse/dev_uring.c
create mode 100644 fs/fuse/dev_uring_i.h
create mode 100644 fs/fuse/fuse_dev_i.h
Powered by blists - more mailing lists