summaryrefslogtreecommitdiffstats
path: root/fuse/fuse_mt.c
diff options
context:
space:
mode:
Diffstat (limited to 'fuse/fuse_mt.c')
-rw-r--r--fuse/fuse_mt.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/fuse/fuse_mt.c b/fuse/fuse_mt.c
index 7f940006d..f6dbe71b2 100644
--- a/fuse/fuse_mt.c
+++ b/fuse/fuse_mt.c
@@ -24,8 +24,6 @@ struct procdata {
void *data;
};
-#ifdef __MULTI_THREAD
-
static void mt_session_proc(void *data, const char *buf, size_t len,
struct fuse_chan *ch)
{
@@ -112,9 +110,13 @@ int fuse_loop_mt(struct fuse *f)
if (f == NULL)
return -1;
- return fuse_session_loop_mt(fuse_get_session(f));
+ int res = fuse_start_cleanup_thread(f);
+ if (res)
+ return -1;
+
+ res = fuse_session_loop_mt(fuse_get_session(f));
+ fuse_stop_cleanup_thread(f);
+ return res;
}
FUSE_SYMVER(".symver fuse_loop_mt_proc,__fuse_loop_mt@");
-
-#endif