Lines Matching refs:lockstate
105 int lo_flags, int mode, RtldLockState *lockstate);
156 Obj_Entry *rtldobj, int flags, RtldLockState *lockstate);
158 int flags, RtldLockState *lockstate);
182 static void unload_object(Obj_Entry *, RtldLockState *lockstate);
515 RtldLockState lockstate; in _rtld() local
998 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld()
1003 &lockstate) == -1) in _rtld()
1009 objlist_call_init(&initlist, &lockstate); in _rtld()
1017 load_filtees(obj, 0, &lockstate); in _rtld()
1024 lock_release(rtld_bind_lock, &lockstate); in _rtld()
1054 RtldLockState lockstate; in _rtld_bind() local
1057 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_bind()
1058 if (sigsetjmp(lockstate.env, 0) != 0) in _rtld_bind()
1059 lock_upgrade(rtld_bind_lock, &lockstate); in _rtld_bind()
1067 NULL, &lockstate); in _rtld_bind()
1071 if (lockstate_wlocked(&lockstate)) { in _rtld_bind()
1072 lock_release(rtld_bind_lock, &lockstate); in _rtld_bind()
1092 lock_release(rtld_bind_lock, &lockstate); in _rtld_bind()
2005 RtldLockState *lockstate) in find_symdef() argument
2048 req.lockstate = lockstate; in find_symdef()
2683 free_needed_filtees(Needed_Entry *n, RtldLockState *lockstate) in free_needed_filtees() argument
2689 dlclose_locked(needed->obj, lockstate); in free_needed_filtees()
2700 unload_filtees(Obj_Entry *obj, RtldLockState *lockstate) in unload_filtees() argument
2702 free_needed_filtees(obj->needed_filtees, lockstate); in unload_filtees()
2704 free_needed_filtees(obj->needed_aux_filtees, lockstate); in unload_filtees()
2711 RtldLockState *lockstate) in load_filtee1() argument
2716 RTLD_LAZY) | RTLD_LOCAL, lockstate); in load_filtee1()
2721 load_filtees(Obj_Entry *obj, int flags, RtldLockState *lockstate) in load_filtees() argument
2725 lock_restart_for_upgrade(lockstate); in load_filtees()
2727 load_filtee1(obj, obj->needed_filtees, flags, lockstate); in load_filtees()
2728 load_filtee1(obj, obj->needed_aux_filtees, flags, lockstate); in load_filtees()
3102 objlist_call_fini(Objlist *list, Obj_Entry *root, RtldLockState *lockstate) in objlist_call_fini() argument
3133 lock_release(rtld_bind_lock, lockstate); in objlist_call_fini()
3165 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_fini()
3188 objlist_call_init(Objlist *list, RtldLockState *lockstate) in objlist_call_init() argument
3226 get_program_var_addr("__libc_atexit", lockstate); in objlist_call_init()
3228 lock_release(rtld_bind_lock, lockstate); in objlist_call_init()
3262 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_init()
3352 int flags, RtldLockState *lockstate) in relocate_object_dag() argument
3360 lockstate); in relocate_object_dag()
3430 RtldLockState *lockstate) in relocate_object() argument
3447 if (reloc_non_plt(obj, rtldobj, flags, lockstate)) in relocate_object()
3459 if (reloc_plt(obj, flags, lockstate) == -1) in relocate_object()
3463 reloc_jmpslots(obj, flags, lockstate) == -1) in relocate_object()
3488 RtldLockState *lockstate) in relocate_objects() argument
3497 lockstate); in relocate_objects()
3517 RtldLockState *lockstate) in resolve_object_ifunc() argument
3527 (obj->irelative && reloc_iresolve(obj, lockstate) == -1) || in resolve_object_ifunc()
3529 reloc_iresolve_nonplt(obj, lockstate) == -1) || in resolve_object_ifunc()
3531 reloc_gnu_ifunc(obj, flags, lockstate) == -1) || in resolve_object_ifunc()
3534 lockstate) == -1) || in resolve_object_ifunc()
3542 RtldLockState *lockstate) in initlist_objects_ifunc() argument
3551 if (resolve_object_ifunc(obj, bind_now, flags, lockstate) == -1) in initlist_objects_ifunc()
3564 RtldLockState lockstate; in rtld_exit() local
3566 wlock_acquire(rtld_bind_lock, &lockstate); in rtld_exit()
3568 objlist_call_fini(&list_fini, NULL, &lockstate); in rtld_exit()
3572 lock_release(rtld_bind_lock, &lockstate); in rtld_exit()
3748 RtldLockState lockstate; in dlclose() local
3751 wlock_acquire(rtld_bind_lock, &lockstate); in dlclose()
3752 error = dlclose_locked(handle, &lockstate); in dlclose()
3753 lock_release(rtld_bind_lock, &lockstate); in dlclose()
3758 dlclose_locked(void *handle, RtldLockState *lockstate) in dlclose_locked() argument
3776 objlist_call_fini(&list_fini, root, lockstate); in dlclose_locked()
3782 unload_object(root, lockstate); in dlclose_locked()
3836 RtldLockState lockstate; in rtld_dlopen() local
3842 rlock_acquire(rtld_bind_lock, &lockstate); in rtld_dlopen()
3843 if (sigsetjmp(lockstate.env, 0) != 0) in rtld_dlopen()
3844 lock_upgrade(rtld_bind_lock, &lockstate); in rtld_dlopen()
3846 *get_program_var_addr("environ", &lockstate)); in rtld_dlopen()
3847 lock_release(rtld_bind_lock, &lockstate); in rtld_dlopen()
3864 dlopen_cleanup(Obj_Entry *obj, RtldLockState *lockstate) in dlopen_cleanup() argument
3869 unload_object(obj, lockstate); in dlopen_cleanup()
3874 int mode, RtldLockState *lockstate) in dlopen_object() argument
3887 if (lockstate == NULL && !(lo_flags & RTLD_LO_EARLY)) { in dlopen_object()
3889 lockstate = &mlockstate; in dlopen_object()
3934 lockstate) == -1) { in dlopen_object()
3935 dlopen_cleanup(obj, lockstate); in dlopen_object()
3987 map_stacks_exec(lockstate); in dlopen_object()
3994 lockstate) == -1) { in dlopen_object()
3996 dlopen_cleanup(obj, lockstate); in dlopen_object()
3997 if (lockstate == &mlockstate) in dlopen_object()
3998 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
4004 objlist_call_init(&initlist, lockstate); in dlopen_object()
4007 if (lockstate == &mlockstate) in dlopen_object()
4008 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
4012 if (lockstate == &mlockstate) in dlopen_object()
4013 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
4025 RtldLockState lockstate; in do_dlsym() local
4035 req.lockstate = &lockstate; in do_dlsym()
4038 rlock_acquire(rtld_bind_lock, &lockstate); in do_dlsym()
4039 if (sigsetjmp(lockstate.env, 0) != 0) in do_dlsym()
4040 lock_upgrade(rtld_bind_lock, &lockstate); in do_dlsym()
4045 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4104 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4143 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4166 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4208 RtldLockState lockstate; in _rtld_addr_phdr() local
4210 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4214 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4218 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4229 RtldLockState lockstate; in dladdr() local
4231 rlock_acquire(rtld_bind_lock, &lockstate); in dladdr()
4235 lock_release(rtld_bind_lock, &lockstate); in dladdr()
4274 lock_release(rtld_bind_lock, &lockstate); in dladdr()
4282 RtldLockState lockstate; in dlinfo() local
4285 rlock_acquire(rtld_bind_lock, &lockstate); in dlinfo()
4297 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
4320 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
4663 get_program_var_addr(const char *name, RtldLockState *lockstate) in get_program_var_addr() argument
4669 req.lockstate = lockstate; in get_program_var_addr()
4893 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj_load_filtees()
5279 unload_object(Obj_Entry *root, RtldLockState *lockstate) in unload_object() argument
5311 unload_filtees(obj, lockstate); in unload_object()
5315 unload_filtees(obj, lockstate); in unload_object()
5366 RtldLockState lockstate; in tls_get_addr_slow() local
5373 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5385 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5393 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5398 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5841 RtldLockState lockstate; in _rtld_allocate_tls() local
5843 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5846 lock_release(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5853 RtldLockState lockstate; in _rtld_free_tls() local
5855 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_free_tls()
5857 lock_release(rtld_bind_lock, &lockstate); in _rtld_free_tls()
6124 RtldLockState lockstate; in _rtld_is_dlopened() local
6127 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
6133 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
6137 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
6178 map_stacks_exec(RtldLockState *lockstate) in map_stacks_exec() argument
6186 lockstate); in map_stacks_exec()
6240 dst->lockstate = src->lockstate; in symlook_init_from_req()