aboutsummaryrefslogtreecommitdiff
path: root/lib/fuse.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/fuse.c')
-rw-r--r--lib/fuse.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/fuse.c b/lib/fuse.c
index 0f2a6d6..75ae38a 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -4382,7 +4382,9 @@ int fuse_loop(struct fuse *f)
return fuse_session_loop(f->se);
}
-int fuse_loop_mt(struct fuse *f, int clone_fd)
+int fuse_loop_mt_32(struct fuse *f, struct fuse_loop_config *config);
+FUSE_SYMVER(".symver fuse_loop_mt_32,fuse_loop_mt@@FUSE_3.2");
+int fuse_loop_mt_32(struct fuse *f, struct fuse_loop_config *config)
{
if (f == NULL)
return -1;
@@ -4391,11 +4393,21 @@ int fuse_loop_mt(struct fuse *f, int clone_fd)
if (res)
return -1;
- res = fuse_session_loop_mt(fuse_get_session(f), clone_fd);
+ res = fuse_session_loop_mt(fuse_get_session(f), config);
fuse_stop_cleanup_thread(f);
return res;
}
+int fuse_loop_mt_31(struct fuse *f, int clone_fd);
+FUSE_SYMVER(".symver fuse_loop_mt_31,fuse_loop_mt@FUSE_3.1");
+int fuse_loop_mt_31(struct fuse *f, int clone_fd)
+{
+ struct fuse_loop_config config;
+ config.clone_fd = clone_fd;
+ config.max_idle_threads = 10;
+ return fuse_loop_mt_32(f, &config);
+}
+
void fuse_exit(struct fuse *f)
{
fuse_session_exit(f->se);