]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - linux/preempt.c
Update bcachefs sources to ca3cfad39f fixup! bcachefs: Improve iter->should_be_locked
[bcachefs-tools-debian] / linux / preempt.c
index aa092c1d0afc09d70ba5a3c76e4c43be111ff62e..72eceed32bcefa187e931c371c888dfb91fd9b7a 100644 (file)
  * correct to instead guarantee mutual exclusion for the critical sections.
  */
 
-static pthread_mutex_t preempt_lock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+static pthread_mutex_t preempt_lock;
+
+__attribute__((constructor))
+static void preempt_init(void) {
+       pthread_mutexattr_t attr;
+       pthread_mutexattr_init(&attr);
+       pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+       pthread_mutex_init(&preempt_lock, &attr);
+       pthread_mutexattr_destroy(&attr);
+}
 
 void preempt_disable(void)
 {