Lines Matching refs:lockstate
103 int lo_flags, int mode, RtldLockState *lockstate);
151 Obj_Entry *rtldobj, int flags, RtldLockState *lockstate);
153 int flags, RtldLockState *lockstate);
177 static void unload_object(Obj_Entry *, RtldLockState *lockstate);
504 RtldLockState lockstate; in _rtld() local
959 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld()
963 *ld_bind_now != '\0', SYMLOOK_EARLY, &lockstate) == -1) in _rtld()
969 objlist_call_init(&initlist, &lockstate); in _rtld()
977 load_filtees(obj, 0, &lockstate); in _rtld()
984 lock_release(rtld_bind_lock, &lockstate); in _rtld()
1017 RtldLockState lockstate; in _rtld_bind() local
1019 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_bind()
1020 if (sigsetjmp(lockstate.env, 0) != 0) in _rtld_bind()
1021 lock_upgrade(rtld_bind_lock, &lockstate); in _rtld_bind()
1029 NULL, &lockstate); in _rtld_bind()
1051 lock_release(rtld_bind_lock, &lockstate); in _rtld_bind()
1996 RtldLockState *lockstate) in find_symdef() argument
2039 req.lockstate = lockstate; in find_symdef()
2569 free_needed_filtees(Needed_Entry *n, RtldLockState *lockstate) in free_needed_filtees() argument
2575 dlclose_locked(needed->obj, lockstate); in free_needed_filtees()
2586 unload_filtees(Obj_Entry *obj, RtldLockState *lockstate) in unload_filtees() argument
2589 free_needed_filtees(obj->needed_filtees, lockstate); in unload_filtees()
2591 free_needed_filtees(obj->needed_aux_filtees, lockstate); in unload_filtees()
2598 RtldLockState *lockstate) in load_filtee1() argument
2604 RTLD_LOCAL, lockstate); in load_filtee1()
2609 load_filtees(Obj_Entry *obj, int flags, RtldLockState *lockstate) in load_filtees() argument
2612 lock_restart_for_upgrade(lockstate); in load_filtees()
2614 load_filtee1(obj, obj->needed_filtees, flags, lockstate); in load_filtees()
2615 load_filtee1(obj, obj->needed_aux_filtees, flags, lockstate); in load_filtees()
2986 objlist_call_fini(Objlist *list, Obj_Entry *root, RtldLockState *lockstate) in objlist_call_fini() argument
3014 lock_release(rtld_bind_lock, lockstate); in objlist_call_fini()
3039 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_fini()
3061 objlist_call_init(Objlist *list, RtldLockState *lockstate) in objlist_call_init() argument
3099 "__libc_atexit", lockstate); in objlist_call_init()
3101 lock_release(rtld_bind_lock, lockstate); in objlist_call_init()
3130 wlock_acquire(rtld_bind_lock, lockstate); in objlist_call_init()
3220 int flags, RtldLockState *lockstate) in relocate_object_dag() argument
3228 lockstate); in relocate_object_dag()
3299 int flags, RtldLockState *lockstate) in relocate_object() argument
3317 if (reloc_non_plt(obj, rtldobj, flags, lockstate)) in relocate_object()
3329 if (reloc_plt(obj, flags, lockstate) == -1) in relocate_object()
3333 lockstate) == -1) in relocate_object()
3358 int flags, RtldLockState *lockstate) in relocate_objects() argument
3368 lockstate); in relocate_objects()
3388 RtldLockState *lockstate) in resolve_object_ifunc() argument
3399 (obj->irelative && reloc_iresolve(obj, lockstate) == -1) || in resolve_object_ifunc()
3401 lockstate) == -1) || in resolve_object_ifunc()
3403 reloc_gnu_ifunc(obj, flags, lockstate) == -1) || in resolve_object_ifunc()
3405 flags | SYMLOOK_IFUNC, lockstate) == -1) || in resolve_object_ifunc()
3413 RtldLockState *lockstate) in initlist_objects_ifunc() argument
3423 lockstate) == -1) in initlist_objects_ifunc()
3436 RtldLockState lockstate; in rtld_exit() local
3438 wlock_acquire(rtld_bind_lock, &lockstate); in rtld_exit()
3440 objlist_call_fini(&list_fini, NULL, &lockstate); in rtld_exit()
3444 lock_release(rtld_bind_lock, &lockstate); in rtld_exit()
3621 RtldLockState lockstate; in dlclose() local
3624 wlock_acquire(rtld_bind_lock, &lockstate); in dlclose()
3625 error = dlclose_locked(handle, &lockstate); in dlclose()
3626 lock_release(rtld_bind_lock, &lockstate); in dlclose()
3631 dlclose_locked(void *handle, RtldLockState *lockstate) in dlclose_locked() argument
3649 objlist_call_fini(&list_fini, root, lockstate); in dlclose_locked()
3655 unload_object(root, lockstate); in dlclose_locked()
3712 RtldLockState lockstate; in rtld_dlopen() local
3718 rlock_acquire(rtld_bind_lock, &lockstate); in rtld_dlopen()
3719 if (sigsetjmp(lockstate.env, 0) != 0) in rtld_dlopen()
3720 lock_upgrade(rtld_bind_lock, &lockstate); in rtld_dlopen()
3721 environ = __DECONST(char **, *get_program_var_addr("environ", &lockstate)); in rtld_dlopen()
3722 lock_release(rtld_bind_lock, &lockstate); in rtld_dlopen()
3739 dlopen_cleanup(Obj_Entry *obj, RtldLockState *lockstate) in dlopen_cleanup() argument
3745 unload_object(obj, lockstate); in dlopen_cleanup()
3750 int mode, RtldLockState *lockstate) in dlopen_object() argument
3763 if (lockstate == NULL && !(lo_flags & RTLD_LO_EARLY)) { in dlopen_object()
3765 lockstate = &mlockstate; in dlopen_object()
3806 lockstate) == -1) { in dlopen_object()
3807 dlopen_cleanup(obj, lockstate); in dlopen_object()
3857 map_stacks_exec(lockstate); in dlopen_object()
3859 distribute_static_tls(&initlist, lockstate); in dlopen_object()
3864 lockstate) == -1) { in dlopen_object()
3866 dlopen_cleanup(obj, lockstate); in dlopen_object()
3867 if (lockstate == &mlockstate) in dlopen_object()
3868 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3874 objlist_call_init(&initlist, lockstate); in dlopen_object()
3877 if (lockstate == &mlockstate) in dlopen_object()
3878 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3882 if (lockstate == &mlockstate) in dlopen_object()
3883 lock_release(rtld_bind_lock, lockstate); in dlopen_object()
3895 RtldLockState lockstate; in do_dlsym() local
3905 req.lockstate = &lockstate; in do_dlsym()
3908 rlock_acquire(rtld_bind_lock, &lockstate); in do_dlsym()
3909 if (sigsetjmp(lockstate.env, 0) != 0) in do_dlsym()
3910 lock_upgrade(rtld_bind_lock, &lockstate); in do_dlsym()
3916 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
3969 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4006 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4029 lock_release(rtld_bind_lock, &lockstate); in do_dlsym()
4071 RtldLockState lockstate; in _rtld_addr_phdr() local
4073 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4077 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4081 lock_release(rtld_bind_lock, &lockstate); in _rtld_addr_phdr()
4092 RtldLockState lockstate; in dladdr() local
4094 rlock_acquire(rtld_bind_lock, &lockstate); in dladdr()
4098 lock_release(rtld_bind_lock, &lockstate); in dladdr()
4137 lock_release(rtld_bind_lock, &lockstate); in dladdr()
4145 RtldLockState lockstate; in dlinfo() local
4148 rlock_acquire(rtld_bind_lock, &lockstate); in dlinfo()
4160 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
4183 lock_release(rtld_bind_lock, &lockstate); in dlinfo()
4503 get_program_var_addr(const char *name, RtldLockState *lockstate) in get_program_var_addr() argument
4509 req.lockstate = lockstate; in get_program_var_addr()
4747 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj()
4759 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj()
5073 unload_object(Obj_Entry *root, RtldLockState *lockstate) in unload_object() argument
5105 unload_filtees(obj, lockstate); in unload_object()
5109 unload_filtees(obj, lockstate); in unload_object()
5160 RtldLockState lockstate; in tls_get_addr_slow() local
5167 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5177 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5185 wlock_acquire(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5189 lock_release(rtld_bind_lock, &lockstate); in tls_get_addr_slow()
5545 RtldLockState lockstate; in _rtld_allocate_tls() local
5547 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5550 lock_release(rtld_bind_lock, &lockstate); in _rtld_allocate_tls()
5557 RtldLockState lockstate; in _rtld_free_tls() local
5559 wlock_acquire(rtld_bind_lock, &lockstate); in _rtld_free_tls()
5561 lock_release(rtld_bind_lock, &lockstate); in _rtld_free_tls()
5820 RtldLockState lockstate; in _rtld_is_dlopened() local
5823 rlock_acquire(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5829 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5833 lock_release(rtld_bind_lock, &lockstate); in _rtld_is_dlopened()
5865 map_stacks_exec(RtldLockState *lockstate) in map_stacks_exec() argument
5872 get_program_var_addr("__pthread_map_stacks_exec", lockstate); in map_stacks_exec()
5880 distribute_static_tls(Objlist *list, RtldLockState *lockstate) in distribute_static_tls() argument
5887 get_program_var_addr("__pthread_distribute_static_tls", lockstate); in distribute_static_tls()
5921 dst->lockstate = src->lockstate; in symlook_init_from_req()