urwlock
struct urwlock _thr_list_lock = DEFAULT_URWLOCK;
struct urwlock _thr_atfork_lock = DEFAULT_URWLOCK;
struct urwlock lock;
extern struct urwlock _thr_atfork_lock __hidden;
extern struct urwlock _thr_list_lock __hidden;
static struct urwlock pshared_lock = DEFAULT_URWLOCK;
struct urwlock lock;
char _pad[CACHE_LINE_SIZE - sizeof(struct urwlock) -
struct urwlock *rwlp;
struct urwlock lock;
sizeof(struct urwlock));
__thr_rwlock_rdlock(struct urwlock *rwlock, int flags,
__thr_rwlock_wrlock(struct urwlock *rwlock, const struct timespec *tsp)
__thr_rwlock_unlock(struct urwlock *rwlock)
_thr_rwl_rdlock(struct urwlock *rwlock)
_thr_rwl_wrlock(struct urwlock *rwlock)
_thr_rwl_unlock(struct urwlock *rwlock)
_thr_urwlock_init(struct urwlock *rwl)
static const struct urwlock default_rwl = DEFAULT_URWLOCK;
_thr_rwlock_tryrdlock(struct urwlock *rwlock, int flags)
_thr_rwlock_trywrlock(struct urwlock *rwlock)
_thr_rwlock_rdlock(struct urwlock *rwlock, int flags, struct timespec *tsp)
_thr_rwlock_wrlock(struct urwlock *rwlock, struct timespec *tsp)
_thr_rwlock_unlock(struct urwlock *rwlock)
void _thr_urwlock_init(struct urwlock *rwl) __hidden;
int __thr_rwlock_rdlock(struct urwlock *rwlock, int flags,
int __thr_rwlock_wrlock(struct urwlock *rwlock,
int __thr_rwlock_unlock(struct urwlock *rwlock) __hidden;
void _thr_rwl_rdlock(struct urwlock *rwlock) __hidden;
void _thr_rwl_wrlock(struct urwlock *rwlock) __hidden;
void _thr_rwl_unlock(struct urwlock *rwlock) __hidden;
do_rw_rdlock(struct thread *td, struct urwlock *rwlock, long fflag,
do_rw_wrlock(struct thread *td, struct urwlock *rwlock, struct _umtx_time *timeout)
do_rw_unlock(struct thread *td, struct urwlock *rwlock)