- /*
- * Not all platforms support process shared mutexes (FreeBSD)
- */
-#ifdef FIO_HAVE_PSHARED_MUTEX
- mflag = PTHREAD_PROCESS_SHARED;
-#else
- mflag = PTHREAD_PROCESS_PRIVATE;
-#endif
-
- ret = pthread_mutexattr_init(&attr);
- if (ret) {
- log_err("pthread_mutexattr_init: %s\n", strerror(ret));
- goto err;
- }
- ret = pthread_mutexattr_setpshared(&attr, mflag);
- if (ret) {
- log_err("pthread_mutexattr_setpshared: %s\n", strerror(ret));
- goto err;
- }
-
- pthread_condattr_init(&cond);
- pthread_condattr_setpshared(&cond, mflag);
- pthread_condattr_setclock(&cond, CLOCK_MONOTONIC);
- pthread_cond_init(&mutex->cond, &cond);