qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/3] block/export: Add FUSE-over-io_uring for Storage Exports
@ 2025-08-15  3:46 Zhi Song
  2025-08-15  3:46 ` [PATCH 1/3] fuse: add FUSE-over-io_uring enable opt and init Zhi Song
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Zhi Song @ 2025-08-15  3:46 UTC (permalink / raw)
  To: qemu-block
  Cc: qemu-devel, armbru, bernd, fam, hibriansong, hreitz, kwolf,
	stefanha

From: Brian Song <hibriansong@gmail.com>

Hello,

This is a GSoC project. You could check out more here:
https://wiki.qemu.org/Google_Summer_of_Code_2025#FUSE-over-io_uring_exports

This series:
- Merges the request processing functions for both traditional FUSE
  and FUSE-over-io_uring modes
- Implements multi-threading (Multi-IOThread)
- Improves FUSE-over-io_uring termination handling

Due to kernel limitations, when the FUSE-over-io_uring option is
enabled,
you must create and assign nr_cpu IOThreads. For example:

qemu-storage-daemon \
  --object iothread,id=iothread1 \
  --object iothread,id=iothread2 \
  --blockdev node-name=prot-node,driver=file,filename=img.qcow2 \
  --blockdev node-name=fmt-node,driver=qcow2,file=prot-node \
  --export type=fuse,id=exp0,node-name=fmt-node,mountpoint=mount-point, \
  writable=on,iothread.0=iothread1,iothread.1=iothread2


More detail on the v1 cover letter:
https://lists.nongnu.org/archive/html/qemu-block/2025-07/msg00280.html

Brian Song (3):
  fuse: add FUSE-over-io_uring enable opt and init
  fuse: Handle FUSE-uring requests
  fuse: Safe termination for FUSE-uring

 block/export/fuse.c                  | 632 ++++++++++++++++++++-------
 docs/tools/qemu-storage-daemon.rst   |  11 +-
 qapi/block-export.json               |   5 +-
 storage-daemon/qemu-storage-daemon.c |   1 +
 util/fdmon-io_uring.c                |   5 +-
 5 files changed, 486 insertions(+), 168 deletions(-)

--
2.45.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2025-08-21 14:21 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-15  3:46 [RFC PATCH 0/3] block/export: Add FUSE-over-io_uring for Storage Exports Zhi Song
2025-08-15  3:46 ` [PATCH 1/3] fuse: add FUSE-over-io_uring enable opt and init Zhi Song
2025-08-16 23:13   ` Brian Song
2025-08-17 13:42     ` Stefan Hajnoczi
2025-08-18 23:04     ` Bernd Schubert
2025-08-19  1:15       ` Brian Song
2025-08-19 22:26         ` Bernd Schubert
2025-08-19 23:23           ` Brian Song
2025-08-20  3:31             ` Brian Song
2025-08-15  3:46 ` [PATCH 2/3] fuse: Handle FUSE-uring requests Zhi Song
2025-08-15  3:46 ` [PATCH 3/3] fuse: Safe termination for FUSE-uring Zhi Song
2025-08-17 13:45 ` [RFC PATCH 0/3] block/export: Add FUSE-over-io_uring for Storage Exports Stefan Hajnoczi
2025-08-18 22:54   ` Bernd Schubert
2025-08-21  1:32   ` Brian Song
2025-08-21 14:20     ` Stefan Hajnoczi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).