Lines Matching refs:mutex
199 # define ENQUEUE_MUTEX_BOTH(mutex, val) \ argument
204 next->__prev = (void *) &mutex->__data.__list.__next; \
205 mutex->__data.__list.__next = THREAD_GETMEM (THREAD_SELF, \
207 mutex->__data.__list.__prev = (void *) &THREAD_SELF->robust_head; \
211 (void *) (((uintptr_t) &mutex->__data.__list.__next) \
214 # define DEQUEUE_MUTEX(mutex) \ argument
217 ((char *) (((uintptr_t) mutex->__data.__list.__next) & ~1ul) \
219 next->__prev = mutex->__data.__list.__prev; \
221 ((char *) (((uintptr_t) mutex->__data.__list.__prev) & ~1ul) \
223 prev->__next = mutex->__data.__list.__next; \
227 mutex->__data.__list.__prev = NULL; \
228 mutex->__data.__list.__next = NULL; \
237 # define ENQUEUE_MUTEX_BOTH(mutex, val) \ argument
239 mutex->__data.__list.__next \
244 (void *) (((uintptr_t) &mutex->__data.__list) | val)); \
246 # define DEQUEUE_MUTEX(mutex) \ argument
250 if (runp == &mutex->__data.__list) \
256 while (next != &mutex->__data.__list) \
266 mutex->__data.__list.__next = NULL; \
270 #define ENQUEUE_MUTEX(mutex) ENQUEUE_MUTEX_BOTH (mutex, 0) argument
271 #define ENQUEUE_MUTEX_PI(mutex) ENQUEUE_MUTEX_BOTH (mutex, 1) argument