Lines Matching refs:rwlock

29 __pthread_rwlock_timedrdlock_internal (struct __pthread_rwlock *rwlock,  in __pthread_rwlock_timedrdlock_internal()  argument
37 __pthread_spin_wait (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
38 if (__pthread_spin_trylock (&rwlock->__held) == 0) in __pthread_rwlock_timedrdlock_internal()
41 assert (rwlock->__readerqueue == 0); in __pthread_rwlock_timedrdlock_internal()
42 assert (rwlock->__writerqueue == 0); in __pthread_rwlock_timedrdlock_internal()
43 assert (rwlock->__readers == 0); in __pthread_rwlock_timedrdlock_internal()
45 rwlock->__readers = 1; in __pthread_rwlock_timedrdlock_internal()
46 __pthread_spin_unlock (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
51 if (rwlock->__readers > 0) in __pthread_rwlock_timedrdlock_internal()
54 assert (rwlock->__readerqueue == 0); in __pthread_rwlock_timedrdlock_internal()
55 rwlock->__readers++; in __pthread_rwlock_timedrdlock_internal()
56 __pthread_spin_unlock (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
63 assert (rwlock->__readers == 0); in __pthread_rwlock_timedrdlock_internal()
67 __pthread_spin_unlock (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
74 __pthread_enqueue (&rwlock->__readerqueue, self); in __pthread_rwlock_timedrdlock_internal()
75 __pthread_spin_unlock (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
86 __pthread_spin_wait (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
100 __pthread_spin_unlock (&rwlock->__lock); in __pthread_rwlock_timedrdlock_internal()
114 assert (rwlock->__readers > 0); in __pthread_rwlock_timedrdlock_internal()
120 __pthread_rwlock_timedrdlock (struct __pthread_rwlock *rwlock, in __pthread_rwlock_timedrdlock() argument
123 return __pthread_rwlock_timedrdlock_internal (rwlock, CLOCK_REALTIME, abstime); in __pthread_rwlock_timedrdlock()
128 __pthread_rwlock_clockrdlock (struct __pthread_rwlock *rwlock, in weak_alias()
132 return __pthread_rwlock_timedrdlock_internal (rwlock, clockid, abstime); in weak_alias()