#include #include int pthread_mutex_trylock(pthread_mutex_t *mut) { kern_futex_t expected = 0; if (__atomic_compare_exchange_n( &mut->__v, &expected, 1, 0, __ATOMIC_ACQUIRE, __ATOMIC_ACQUIRE)) { return 0; } return __set_errno(EBUSY); }