diff options
author | Bernd Schubert <bschubert@ddn.com> | 2025-04-15 18:08:54 +0200 |
---|---|---|
committer | Bernd Schubert <bernd@bsbernd.com> | 2025-04-28 19:57:39 +0200 |
commit | 71b6fb723aacd9c216c68db3cc1f4d87291cf408 (patch) | |
tree | 6051743e24da70de3202a22224466b5f469f7c3e /lib/fuse_lowlevel.c | |
parent | 3824fabf8aaa6210876ac0519f451f4885c7ebbc (diff) | |
download | libfuse-71b6fb723aacd9c216c68db3cc1f4d87291cf408.tar.gz |
fuse: Add io-uring options
Signed-off-by: Bernd Schubert <bschubert@ddn.com>
Diffstat (limited to 'lib/fuse_lowlevel.c')
-rw-r--r-- | lib/fuse_lowlevel.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c index 03aeca7..ad36414 100644 --- a/lib/fuse_lowlevel.c +++ b/lib/fuse_lowlevel.c @@ -3545,6 +3545,8 @@ static const struct fuse_opt fuse_ll_opts[] = { LL_OPTION("-d", debug, 1), LL_OPTION("--debug", debug, 1), LL_OPTION("allow_root", deny_others, 1), + LL_OPTION("io_uring", uring.enable, 1), + LL_OPTION("io_uring_q_depth=%u", uring.q_depth, -1), FUSE_OPT_END }; @@ -3562,7 +3564,11 @@ void fuse_lowlevel_help(void) printf( " -o allow_other allow access by all users\n" " -o allow_root allow access by root\n" -" -o auto_unmount auto unmount on process termination\n"); +" -o auto_unmount auto unmount on process termination\n" +" -o auto_unmount auto unmount on process termination\n" +" -o io_uring enable io-uring\n" +" -o io_uring_q_depth=<n> io-uring queue depth\n" +); } void fuse_session_destroy(struct fuse_session *se) @@ -3892,6 +3898,8 @@ fuse_session_new_versioned(struct fuse_args *args, se->conn.max_write = FUSE_DEFAULT_MAX_PAGES_LIMIT * getpagesize(); se->bufsize = se->conn.max_write + FUSE_BUFFER_HEADER_SIZE; se->conn.max_readahead = UINT_MAX; + se->uring.enable = SESSION_DEF_URING_ENABLE; + se->uring.q_depth = SESSION_DEF_URING_Q_DEPTH; /* Parse options */ if(fuse_opt_parse(args, se, fuse_ll_opts, NULL) == -1) |