opnsense-src/lib/libthr/thread
Dawid Gorecki 78df56ccfc libthr: Use kern.stacktop for thread stack calculation.
Use the new kern.stacktop sysctl to retrieve the address of stack top
instead of kern.usrstack. kern.usrstack does not have any knowledge
of the stack gap, so this can cause problems with thread stacks.
Using kern.stacktop sysctl should fix most of those problems.
kern.usrstack is used as a fallback when kern.stacktop cannot be read.

Rename usrstack variables to stacktop to reflect this change.

Fixes problems with firefox and thunderbird not starting with
stack gap enabled.

PR: 239873
Reviewed by: kib
Obtained from: Semihalf
Sponsored by: Stormshield
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D31898
2021-10-15 10:21:56 +02:00
..
Makefile.inc Untangle jemalloc and mutexes initialization. 2019-01-29 22:46:44 +00:00
thr_affinity.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_attr.c Style. 2020-11-26 20:23:17 +00:00
thr_autoinit.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
thr_barrier.c POSIX compliance improvements in the pthread(3) functions. 2018-08-18 01:05:38 +00:00
thr_barrierattr.c POSIX compliance improvements in the pthread(3) functions. 2018-08-18 01:05:38 +00:00
thr_cancel.c Return success, instead of ESRCH, from pthread_cancel(3) applied to the 2020-02-13 23:22:12 +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 spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
thr_cond.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_condattr.c POSIX compliance improvements in the pthread(3) functions. 2018-08-18 01:05:38 +00:00
thr_create.c Use sigfastblock(2) for masking signals in libthr. 2020-02-09 12:27:22 +00:00
thr_ctrdtr.c Merge all the copies of _tcb_ctor and _tcb_dtor. 2015-01-21 16:41:05 +00:00
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 lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_exit.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_fork.c libthr: wrap pdfork(2), same as fork(2). 2021-01-11 22:59:52 +02:00
thr_getcpuclockid.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_getprio.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_getschedparam.c POSIX compliance improvements in the pthread(3) functions. 2018-08-18 01:05:38 +00:00
thr_getthreadid_np.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_info.c Add pthread_getname_np() and pthread_setname_np() aliases for 2020-06-10 22:13:24 +00:00
thr_init.c libthr: Use kern.stacktop for thread stack calculation. 2021-10-15 10:21:56 +02:00
thr_join.c Add pthread_peekjoin_np(3). 2020-02-15 23:25:39 +00:00
thr_kern.c _thr_setthreaded() cannot fail; change return type to void 2018-11-30 03:01:32 +00:00
thr_kill.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_list.c Fix initial exec TLS mode for dynamically loaded shared objects. 2019-03-29 17:52:57 +00:00
thr_main_np.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_malloc.c libthr malloc: support recursion on thr_malloc_umtx. 2021-01-12 12:45:44 +02:00
thr_multi_np.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_mutex.c Ensure that threading library is initialized in pthread_mutex_init(). 2020-11-30 17:00:36 +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 libthr: Fix missing break in switch. 2018-01-27 22:27:55 +00:00
thr_private.h libthr: Use kern.stacktop for thread stack calculation. 2021-10-15 10:21:56 +02:00
thr_pshared.c Lock pshared_lock shared around fork, to ensure that the COW snapshot 2016-03-21 06:52:35 +00:00
thr_pspinlock.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_resume_np.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_rtld.c rtld: make dlerror() thread-local 2021-04-10 17:33:34 +03:00
thr_rwlock.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_rwlockattr.c POSIX compliance improvements in the pthread(3) functions. 2018-08-18 01:05:38 +00:00
thr_self.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_sem.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_setprio.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_setschedparam.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
thr_sig.c Use sigfastblock(2) for masking signals in libthr. 2020-02-09 12:27:22 +00:00
thr_single_np.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_sleepq.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_spec.c Avoid conflicts with libc symbols in libthr jump table. 2019-07-31 19:27:20 +00:00
thr_spinlock.c Use _thr_isthreaded() and _thr_setthreaded() wrappers 2018-11-30 03:02:49 +00:00
thr_stack.c libthr: Use kern.stacktop for thread stack calculation. 2021-10-15 10:21:56 +02:00
thr_suspend_np.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_switch_np.c spdx: initial adoption of licensing ID tags. 2017-11-18 14:26:50 +00:00
thr_symbols.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
thr_syscalls.c libthr: wrap pdfork(2), same as fork(2). 2021-01-11 22:59:52 +02:00
thr_umtx.c lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_umtx.h lib: further adoption of SPDX licensing ID tags. 2017-11-26 02:00:33 +00:00
thr_yield.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00