This adds several documentation updates I had missed after renaming functions and also fixes 'make htmldocs'. Signed-off-by: Bernd Schubert <bschubert@xxxxxxx> --- Documentation/filesystems/fuse-io-uring.rst | 84 ++++++++++----------- Documentation/filesystems/index.rst | 1 + 2 files changed, 42 insertions(+), 43 deletions(-) diff --git a/Documentation/filesystems/fuse-io-uring.rst b/Documentation/filesystems/fuse-io-uring.rst index 3c6b127d68a7..d73dd0dbd238 100644 --- a/Documentation/filesystems/fuse-io-uring.rst +++ b/Documentation/filesystems/fuse-io-uring.rst @@ -15,8 +15,8 @@ Limitations =========== As of now not all requests types are supported through io-uring, userspace is required to also handle requests through /dev/fuse after io-uring setup -is complete. Specifically notifications (initiated from the daemon side) - and interrupts. +is complete. Specifically notifications (initiated from the daemon side) +and interrupts. Fuse io-uring configuration =========================== @@ -40,7 +40,7 @@ pending requests waiting the request will be immediately submitted to the daemon again. Initial SQE ------------ +-----------:: | | FUSE filesystem daemon | | @@ -52,50 +52,48 @@ Initial SQE | | >io_uring_submit_and_wait() | | | >fuse_uring_cmd() | - | >fuse_uring_fetch() | - | >fuse_uring_ent_release() | + | >fuse_uring_register() | Sending requests with CQEs --------------------------- +--------------------------:: - | | FUSE filesystem daemon - | | [waiting for CQEs] - | "rm /mnt/fuse/file" | - | | - | >sys_unlink() | - | >fuse_unlink() | - | [allocate request] | - | >__fuse_request_send() | - | ... | - | >fuse_uring_queue_fuse_req | - | [queue request on fg or | - | bg queue] | - | >fuse_uring_assign_ring_entry() | - | >fuse_uring_send_to_ring() | - | >fuse_uring_copy_to_ring() | - | >io_uring_cmd_done() | - | >request_wait_answer() | - | [sleep on req->waitq] | - | | [receives and handles CQE] - | | [submit result and fetch next] - | | >io_uring_submit() - | | IORING_OP_URING_CMD/ - | | FUSE_URING_CMD_COMMIT_AND_FETCH - | >fuse_uring_cmd() | - | >fuse_uring_commit_and_release() | - | >fuse_uring_copy_from_ring() | - | [ copy the result to the fuse req] | - | >fuse_uring_req_end_and_get_next() | - | >fuse_request_end() | - | [wake up req->waitq] | - | >fuse_uring_ent_release_and_fetch()| - | [wait or handle next req] | - | | - | | - | [req->waitq woken up] | - | <fuse_unlink() | - | <sys_unlink() | + | | FUSE filesystem daemon + | | [waiting for CQEs] + | "rm /mnt/fuse/file" | + | | + | >sys_unlink() | + | >fuse_unlink() | + | [allocate request] | + | >fuse_send_one() | + | ... | + | >fuse_uring_queue_fuse_req | + | [queue request on fg queue] | + | >fuse_uring_add_req_to_ring_ent() | + | ... | + | >fuse_uring_copy_to_ring() | + | >io_uring_cmd_done() | + | >request_wait_answer() | + | [sleep on req->waitq] | + | | [receives and handles CQE] + | | [submit result and fetch next] + | | >io_uring_submit() + | | IORING_OP_URING_CMD/ + | | FUSE_URING_CMD_COMMIT_AND_FETCH + | >fuse_uring_cmd() | + | >fuse_uring_commit_fetch() | + | >fuse_uring_commit() | + | >fuse_uring_copy_from_ring() | + | [ copy the result to the fuse req] | + | >fuse_uring_req_end() | + | >fuse_request_end() | + | [wake up req->waitq] | + | >fuse_uring_next_fuse_req | + | [wait or handle next req] | + | | + | [req->waitq woken up] | + | <fuse_unlink() | + | <sys_unlink() | diff --git a/Documentation/filesystems/index.rst b/Documentation/filesystems/index.rst index 44e9e77ffe0d..2636f2a41bd3 100644 --- a/Documentation/filesystems/index.rst +++ b/Documentation/filesystems/index.rst @@ -98,6 +98,7 @@ Documentation for filesystem implementations. hpfs fuse fuse-io + fuse-io-uring inotify isofs nilfs2 -- 2.43.0