Lines Matching refs:lockstate

99     int lo_flags, int mode, RtldLockState *lockstate);
144 Obj_Entry *rtldobj, int flags, RtldLockState *lockstate);
146 int flags, RtldLockState *lockstate);
169 static void unload_object(Obj_Entry *, RtldLockState *lockstate);
378 RtldLockState lockstate; in _rtld() local
755 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld()
759 *ld_bind_now != '\0', SYMLOOK_EARLY, &lockstate) == -1) in _rtld()
765 objlist_call_init(&initlist, &lockstate); in _rtld()
773 load_filtees(obj, 0, &lockstate); in _rtld()
780 lock_release(rtld_bind_lock, &lockstate); in _rtld()
813 RtldLockState lockstate; in _rtld_bind() local
815 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_bind()
816 if (sigsetjmp(lockstate.env, 0) != 0) in _rtld_bind()
817 lock_upgrade(rtld_bind_lock, &lockstate); in _rtld_bind()
825 NULL, &lockstate); in _rtld_bind()
845 lock_release(rtld_bind_lock, &lockstate); in _rtld_bind()
1724 RtldLockState *lockstate) in find_symdef() argument
1767 req.lockstate = lockstate; in find_symdef()
2263 free_needed_filtees(Needed_Entry *n, RtldLockState *lockstate) in free_needed_filtees() argument
2269 dlclose_locked(needed->obj, lockstate); in free_needed_filtees()
2280 unload_filtees(Obj_Entry *obj, RtldLockState *lockstate) in unload_filtees() argument
2283 free_needed_filtees(obj->needed_filtees, lockstate); in unload_filtees()
2285 free_needed_filtees(obj->needed_aux_filtees, lockstate); in unload_filtees()
2292 RtldLockState *lockstate) in load_filtee1() argument
2298 RTLD_LOCAL, lockstate); in load_filtee1()
2303 load_filtees(Obj_Entry *obj, int flags, RtldLockState *lockstate) in load_filtees() argument
2306 lock_restart_for_upgrade(lockstate); in load_filtees()
2308 load_filtee1(obj, obj->needed_filtees, flags, lockstate); in load_filtees()
2309 load_filtee1(obj, obj->needed_aux_filtees, flags, lockstate); in load_filtees()
2583 objlist_call_fini(Objlist *list, Obj_Entry *root, RtldLockState *lockstate) in objlist_call_fini() argument
2611 lock_release(rtld_bind_lock, lockstate); in objlist_call_fini()
2636 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_fini()
2658 objlist_call_init(Objlist *list, RtldLockState *lockstate) in objlist_call_init() argument
2696 "__libc_atexit", lockstate); in objlist_call_init()
2698 lock_release(rtld_bind_lock, lockstate); in objlist_call_init()
2727 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_init()
2817 int flags, RtldLockState *lockstate) in relocate_object_dag() argument
2825 lockstate); in relocate_object_dag()
2872 int flags, RtldLockState *lockstate) in relocate_object() argument
2893 if (reloc_non_plt(obj, rtldobj, flags, lockstate)) in relocate_object()
2904 if (reloc_plt(obj, flags, lockstate) == -1) in relocate_object()
2908 lockstate) == -1) in relocate_object()
2933 int flags, RtldLockState *lockstate) in relocate_objects() argument
2943 lockstate); in relocate_objects()
2963 RtldLockState *lockstate) in resolve_object_ifunc() argument
2972 (obj->irelative && reloc_iresolve(obj, lockstate) == -1) || in resolve_object_ifunc()
2974 reloc_gnu_ifunc(obj, flags, lockstate) == -1) || in resolve_object_ifunc()
2982 RtldLockState *lockstate) in initlist_objects_ifunc() argument
2992 lockstate) == -1) in initlist_objects_ifunc()
3005 RtldLockState lockstate; in rtld_exit() local
3007 wlock_acquire(rtld_bind_lock, &lockstate); in rtld_exit()
3009 objlist_call_fini(&list_fini, NULL, &lockstate); in rtld_exit()
3013 lock_release(rtld_bind_lock, &lockstate); in rtld_exit()
3190 RtldLockState lockstate; in dlclose() local
3193 wlock_acquire(rtld_bind_lock, &lockstate); in dlclose()
3194 error = dlclose_locked(handle, &lockstate); in dlclose()
3195 lock_release(rtld_bind_lock, &lockstate); in dlclose()
3200 dlclose_locked(void *handle, RtldLockState *lockstate) in dlclose_locked() argument
3218 objlist_call_fini(&list_fini, root, lockstate); in dlclose_locked()
3224 unload_object(root, lockstate); in dlclose_locked()
3280 RtldLockState lockstate; in rtld_dlopen() local
3286 rlock_acquire(rtld_bind_lock, &lockstate); in rtld_dlopen()
3287 if (sigsetjmp(lockstate.env, 0) != 0) in rtld_dlopen()
3288 lock_upgrade(rtld_bind_lock, &lockstate); in rtld_dlopen()
3289 environ = __DECONST(char **, *get_program_var_addr("environ", &lockstate)); in rtld_dlopen()
3290 lock_release(rtld_bind_lock, &lockstate); in rtld_dlopen()
3305 dlopen_cleanup(Obj_Entry *obj, RtldLockState *lockstate) in dlopen_cleanup() argument
3311 unload_object(obj, lockstate); in dlopen_cleanup()
3316 int mode, RtldLockState *lockstate) in dlopen_object() argument
3326 if (lockstate == NULL && !(lo_flags & RTLD_LO_EARLY)) { in dlopen_object()
3328 lockstate = &mlockstate; in dlopen_object()
3367 lockstate) == -1) { in dlopen_object()
3368 dlopen_cleanup(obj, lockstate); in dlopen_object()
3418 map_stacks_exec(lockstate); in dlopen_object()
3420 distribute_static_tls(&initlist, lockstate); in dlopen_object()
3425 lockstate) == -1) { in dlopen_object()
3427 dlopen_cleanup(obj, lockstate); in dlopen_object()
3428 if (lockstate == &mlockstate) in dlopen_object()
3429 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3435 objlist_call_init(&initlist, lockstate); in dlopen_object()
3438 if (lockstate == &mlockstate) in dlopen_object()
3439 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3443 if (lockstate == &mlockstate) in dlopen_object()
3444 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3456 RtldLockState lockstate; in do_dlsym() local
3466 req.lockstate = &lockstate; in do_dlsym()
3469 rlock_acquire(rtld_bind_lock, &lockstate); in do_dlsym()
3470 if (sigsetjmp(lockstate.env, 0) != 0) in do_dlsym()
3471 lock_upgrade(rtld_bind_lock, &lockstate); in do_dlsym()
3477 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
3527 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
3564 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
3587 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
3629 RtldLockState lockstate; in _rtld_addr_phdr() local
3631 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
3635 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
3639 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
3650 RtldLockState lockstate; in dladdr() local
3652 rlock_acquire(rtld_bind_lock, &lockstate); in dladdr()
3656 lock_release(rtld_bind_lock, &lockstate); in dladdr()
3695 lock_release(rtld_bind_lock, &lockstate); in dladdr()
3703 RtldLockState lockstate; in dlinfo() local
3706 rlock_acquire(rtld_bind_lock, &lockstate); in dlinfo()
3718 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
3741 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
4055 get_program_var_addr(const char *name, RtldLockState *lockstate) in get_program_var_addr() argument
4061 req.lockstate = lockstate; in get_program_var_addr()
4297 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj()
4309 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj()
4622 unload_object(Obj_Entry *root, RtldLockState *lockstate) in unload_object() argument
4654 unload_filtees(obj, lockstate); in unload_object()
4658 unload_filtees(obj, lockstate); in unload_object()
4710 RtldLockState lockstate; in tls_get_addr_slow() local
4716 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
4725 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
4732 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
4735 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5076 RtldLockState lockstate; in _rtld_allocate_tls() local
5078 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5081 lock_release(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5088 RtldLockState lockstate; in _rtld_free_tls() local
5090 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_free_tls()
5092 lock_release(rtld_bind_lock, &lockstate); in _rtld_free_tls()
5351 RtldLockState lockstate; in _rtld_is_dlopened() local
5354 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5360 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5364 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5396 map_stacks_exec(RtldLockState *lockstate) in map_stacks_exec() argument
5403 get_program_var_addr("__pthread_map_stacks_exec", lockstate); in map_stacks_exec()
5411 distribute_static_tls(Objlist *list, RtldLockState *lockstate) in distribute_static_tls() argument
5418 get_program_var_addr("__pthread_distribute_static_tls", lockstate); in distribute_static_tls()
5452 dst->lockstate = src->lockstate; in symlook_init_from_req()