Lines Matching refs:lockstate
236 rlock_acquire(rtld_lock_t lock, RtldLockState *lockstate) in rlock_acquire() argument
239 if (lockstate == NULL) in rlock_acquire()
244 lockstate->lockstate = RTLD_LOCK_UNLOCKED; in rlock_acquire()
248 lockstate->lockstate = RTLD_LOCK_RLOCKED; in rlock_acquire()
252 wlock_acquire(rtld_lock_t lock, RtldLockState *lockstate) in wlock_acquire() argument
255 if (lockstate == NULL) in wlock_acquire()
260 lockstate->lockstate = RTLD_LOCK_UNLOCKED; in wlock_acquire()
264 lockstate->lockstate = RTLD_LOCK_WLOCKED; in wlock_acquire()
268 lock_release(rtld_lock_t lock, RtldLockState *lockstate) in lock_release() argument
271 if (lockstate == NULL) in lock_release()
274 switch (lockstate->lockstate) { in lock_release()
288 lock_upgrade(rtld_lock_t lock, RtldLockState *lockstate) in lock_upgrade() argument
291 if (lockstate == NULL) in lock_upgrade()
294 lock_release(lock, lockstate); in lock_upgrade()
295 wlock_acquire(lock, lockstate); in lock_upgrade()
299 lock_restart_for_upgrade(RtldLockState *lockstate) in lock_restart_for_upgrade() argument
302 if (lockstate == NULL) in lock_restart_for_upgrade()
305 switch (lockstate->lockstate) { in lock_restart_for_upgrade()
310 siglongjmp(lockstate->env, 1); in lock_restart_for_upgrade()
467 locks[0] = ls[1].lockstate; in _rtld_atfork_pre()
468 locks[2] = ls[0].lockstate; in _rtld_atfork_pre()
480 ls[0].lockstate = locks[2]; in _rtld_atfork_post()
481 ls[1].lockstate = locks[0]; in _rtld_atfork_post()