diff --git a/lib/fuse.c b/lib/fuse.c
index a072f0c..cb492d3 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -10,10 +10,10 @@
 /* For pthread_rwlock_t */
 #define _GNU_SOURCE
 
-#include "config.h"
 #include "fuse_i.h"
 #include "fuse_lowlevel.h"
 #include "fuse_opt.h"
+#include "fuse_misc.h"
 
 #include <stdio.h>
 #include <string.h>
@@ -25,7 +25,6 @@
 #include <limits.h>
 #include <errno.h>
 #include <assert.h>
-#include <pthread.h>
 #include <sys/param.h>
 #include <sys/uio.h>
 
@@ -110,19 +109,6 @@
 static int fuse_do_opendir(struct fuse *, char *, struct fuse_file_info *);
 static int fuse_do_statfs(struct fuse *, struct statvfs *);
 
-#ifndef USE_UCLIBC
-#define mutex_init(mut) pthread_mutex_init(mut, NULL)
-#else
-static void mutex_init(pthread_mutex_t *mut)
-{
-    pthread_mutexattr_t attr;
-    pthread_mutexattr_init(&attr);
-    pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP);
-    pthread_mutex_init(mut, &attr);
-    pthread_mutexattr_destroy(&attr);
-}
-#endif
-
 static struct node *get_node_nocheck(struct fuse *f, fuse_ino_t nodeid)
 {
     size_t hash = nodeid % f->id_table_size;
@@ -1432,7 +1418,7 @@
     dh->len = 0;
     dh->filled = 0;
     dh->nodeid = ino;
-    mutex_init(&dh->lock);
+    fuse_mutex_init(&dh->lock);
 
     llfi->fh = (uintptr_t) dh;
 
@@ -2146,7 +2132,7 @@
         goto out_free_name_table;
     }
 
-    mutex_init(&f->lock);
+    fuse_mutex_init(&f->lock);
     pthread_rwlock_init(&f->tree_lock, NULL);
     f->compat = compat;
 
