github.com/afumu/libc@v0.0.6/musl/src/thread/mtx_lock.c (about)

     1  #include "pthread_impl.h"
     2  #include <threads.h>
     3  
     4  int mtx_lock(mtx_t *m)
     5  {
     6  	if (m->_m_type == PTHREAD_MUTEX_NORMAL && !a_cas(&m->_m_lock, 0, EBUSY))
     7  		return thrd_success;
     8  	/* Calling mtx_timedlock with a null pointer is an extension.
     9  	 * It is convenient, here to avoid duplication of the logic
    10  	 * for return values. */
    11  	return mtx_timedlock(m, 0);
    12  }