1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
freebsd/lib/libthr/thread
Konstantin Belousov 3638455c92 Avoid conflicts with libc symbols in libthr jump table.
In some corner cases of static linking and unexpected libraries order
on the linker command line, libc symbol might preempt the same libthr
symbol, in which case libthr jump table points back to libc causing
either infinite recursion or loop.  Handle all of such symbols by
using private libthr names for them, ensuring that the right pointers
are installed into the table.

In collaboration with: arichardson
PR:	239475
Tested by:	pho
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential revision:	https://reviews.freebsd.org/D21088
2019-07-31 20:04:39 +00:00
..
Makefile.inc
thr_affinity.c
thr_attr.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_autoinit.c
thr_barrier.c
thr_barrierattr.c
thr_cancel.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_clean.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_concurrency.c
thr_cond.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_condattr.c
thr_create.c
thr_ctrdtr.c
thr_detach.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_equal.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_event.c
thr_exit.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_fork.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_getcpuclockid.c
thr_getprio.c
thr_getschedparam.c
thr_getthreadid_np.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_info.c Restore ability to pass NULL name argument to pthread_set_name_np(3) 2019-07-11 16:19:33 +00:00
thr_init.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_join.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_kern.c
thr_kill.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_list.c
thr_main_np.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_malloc.c
thr_multi_np.c
thr_mutex.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_mutexattr.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_once.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_printf.c
thr_private.h Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 20:04:39 +00:00
thr_pshared.c
thr_pspinlock.c
thr_resume_np.c
thr_rtld.c
thr_rwlock.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_rwlockattr.c
thr_self.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_sem.c
thr_setprio.c
thr_setschedparam.c
thr_sig.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_single_np.c
thr_sleepq.c
thr_spec.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_spinlock.c
thr_stack.c
thr_suspend_np.c
thr_switch_np.c
thr_symbols.c
thr_syscalls.c
thr_umtx.c
thr_umtx.h
thr_yield.c