#
5670b8cc |
| 24-Jul-2024 |
Michal Meloun <mmel@FreeBSD.org> |
libthr: Preresolve selected EABI symbols on arm.
Add the ability to pre-resolve architecture-specific EABI symbols and use it on arm for selected EABI functions. These functions can be called with r
libthr: Preresolve selected EABI symbols on arm.
Add the ability to pre-resolve architecture-specific EABI symbols and use it on arm for selected EABI functions. These functions can be called with rtld bind lock write-locked, so they should be resolved in forward.
Reported by: Mark Millard <marklmi@yahoo.com>, John F Carr <jfc@mit.edu> Reviewed by: kib, imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D46104
show more ...
|
Revision tags: release/14.1.0, release/13.3.0 |
|
#
ef9871c6 |
| 17-Jan-2024 |
Brooks Davis <brooks@FreeBSD.org> |
libthr: move _umtx_op_err() to libsys
Declare in sys/umtx.h and implement in libsys. Explicitly link libthr with libsys.
When building libthr static include _umtx_op_err so we don't break static l
libthr: move _umtx_op_err() to libsys
Declare in sys/umtx.h and implement in libsys. Explicitly link libthr with libsys.
When building libthr static include _umtx_op_err so we don't break static linkage with -lpthread.
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
show more ...
|
Revision tags: release/14.0.0 |
|
#
b3e76948 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0 |
|
#
c7904405 |
| 07-Apr-2022 |
Andrew Turner <andrew@FreeBSD.org> |
Remove PAGE_SIZE from libthr
In libthr we use PAGE_SIZE when allocating memory with mmap and to check various structs will fit into a single page so we can use this allocator for them.
Ask the kern
Remove PAGE_SIZE from libthr
In libthr we use PAGE_SIZE when allocating memory with mmap and to check various structs will fit into a single page so we can use this allocator for them.
Ask the kernel for the page size on init for use by the page allcator and add a new machine dependent macro to hold the smallest page size the architecture supports to check the structure is small enough.
This allows us to use the same libthr on arm64 with either 4k or 16k pages.
Reviewed by: kib, markj, imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D34984
show more ...
|
#
75395023 |
| 09-Dec-2021 |
John Baldwin <jhb@FreeBSD.org> |
libthr: Use <machine/tls.h> for most MD TLS details.
Note that on amd64 this effectively removes the unused tcb_spare field from the end of struct tcb since the definition of struct tcb in <x86/tls.
libthr: Use <machine/tls.h> for most MD TLS details.
Note that on amd64 this effectively removes the unused tcb_spare field from the end of struct tcb since the definition of struct tcb in <x86/tls.h> does not include that field.
Reviewed by: kib, jrtc27 Sponsored by: The University of Cambridge, Google Inc. Differential Revision: https://reviews.freebsd.org/D33352
show more ...
|
#
5d817633 |
| 09-Dec-2021 |
John Baldwin <jhb@FreeBSD.org> |
libthr: Remove the DTV_OFFSET macro.
This macro is confusing as it is not related to the similarly named TLS_DTV_OFFSET. Instead, replace its one use with the desired expression which is the same o
libthr: Remove the DTV_OFFSET macro.
This macro is confusing as it is not related to the similarly named TLS_DTV_OFFSET. Instead, replace its one use with the desired expression which is the same on all platforms.
Reviewed by: kib, emaste, jrtc27 Sponsored by: The University of Cambridge, Google Inc. Differential Revision: https://reviews.freebsd.org/D33345
show more ...
|
Revision tags: release/12.3.0, release/13.0.0, release/12.2.0, release/11.4.0, release/12.1.0 |
|
#
bdccf0bb |
| 09-Aug-2019 |
Brandon Bergren <bdragon@FreeBSD.org> |
Implement _umtx_op_err.S on powerpc / powerpc64.
As per r177853, we need to avoid using errno inside user mutex code, since signal handlers can interfere with it and mess up libthr internal state.
Implement _umtx_op_err.S on powerpc / powerpc64.
As per r177853, we need to avoid using errno inside user mutex code, since signal handlers can interfere with it and mess up libthr internal state.
So, implement _umtx_op_err() instead, which makes a raw syscall and returns the error value directly instead of using errno.
Approved by: jhibbits (mentor) Differential Revision: https://reviews.freebsd.org/D20946
show more ...
|
Revision tags: release/11.3.0 |
|
#
30e009fc |
| 19-Feb-2019 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r344270
|
#
c981cbbd |
| 15-Feb-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r343956 through r344177.
|
#
9031358d |
| 13-Feb-2019 |
Leandro Lupori <luporl@FreeBSD.org> |
silence cast-align warnings from clang on powerpc64
silence the following warning when compiling libthr with clang 8 for powerpc64 architecture:
usr/src/lib/libthr/arch/powerpc/include/pthread_md.h
silence cast-align warnings from clang on powerpc64
silence the following warning when compiling libthr with clang 8 for powerpc64 architecture:
usr/src/lib/libthr/arch/powerpc/include/pthread_md.h:82:10: error: cast from 'uint8_t *' (aka 'unsigned char *') to 'struct tcb *' increases required alignment from 1 to 8 [-Werror,-Wcast-align] 82: return ((struct tcb *)(_tp - TP_OFFSET));
Submitted by: alfredo.junior_eldorado.org.br Reviewed by: git_bdragon.rtk0.net, emaste, kib, jhibbits, luporl Differential Revision: https://reviews.freebsd.org/D18807
show more ...
|
Revision tags: release/12.0.0, release/11.2.0 |
|
#
5e53a4f9 |
| 26-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
lib: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using mis-identified many licenses so this was mostly a manual - error pr
lib: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using mis-identified many licenses so this was mostly a manual - error prone - task.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
show more ...
|
Revision tags: release/10.4.0, release/11.1.0 |
|
#
d02c951f |
| 26-May-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r318658 through r318963.
|
#
718fb5ba |
| 26-May-2017 |
Eric van Gyzen <vangyzen@FreeBSD.org> |
libthr: fix warnings at WARNS=6
Fix more warnings about redundant declarations.
Reviewed by: kib emaste MFC after: 3 days Sponsored by: Dell EMC Differential Revision: https://reviews.freebsd.org/D
libthr: fix warnings at WARNS=6
Fix more warnings about redundant declarations.
Reviewed by: kib emaste MFC after: 3 days Sponsored by: Dell EMC Differential Revision: https://reviews.freebsd.org/D10932
show more ...
|
Revision tags: release/11.0.1, release/11.0.0, release/10.3.0, release/10.2.0 |
|
#
98e0ffae |
| 27-May-2015 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge sync of head
|
#
9f3d45b6 |
| 08-Feb-2015 |
Baptiste Daroussin <bapt@FreeBSD.org> |
Merge from HEAD
|
#
47712954 |
| 26-Jan-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r277327 through r277718.
|
#
57de838f |
| 23-Jan-2015 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead @ r277555
|
#
20fe2c94 |
| 21-Jan-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Merge all the copies of _tcb_ctor and _tcb_dtor.
The amd64, i386, and sparc64 versions were identical, with the one difference where the former two used inline asm instead of _tcb_get. I have compar
Merge all the copies of _tcb_ctor and _tcb_dtor.
The amd64, i386, and sparc64 versions were identical, with the one difference where the former two used inline asm instead of _tcb_get. I have compared the function before and after replacing the asm with _tcb_get and found the object files to be identical.
The arm, mips, and powerpc versions were almost identical. The only difference was the powerpc version used an alignment of 1 where arm and mips used 16. As this is an increase in alignment is will be safe.
Along with this arm, mips, and powerpc all passed, when initial was true, the value returned from _tcb_get as the first argument to _rtld_allocate_tls. This would then return this pointer back to the caller. We can remove these extra calls by checking if initial is set and setting the thread control block directly. As this is what the sparc64 code does we can use it directly.
As after these observations all the architectures can now have identical code we can merge them into a common file.
Differential Revision: https://reviews.freebsd.org/D1556 Reviewed by: kib Sponsored by: The FreeBSD Foundation
show more ...
|
#
51dd214c |
| 19-Jan-2015 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead @ r277403
|
#
d899be7d |
| 19-Jan-2015 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head: r274132-r277384
Sponsored by: The FreeBSD Foundation
|
#
8f0ea33f |
| 13-Jan-2015 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head revisions r273096-r277147
Sponsored by: The FreeBSD Foundation
|
#
85eda151 |
| 06-Jan-2015 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Avoid use of register variables. Clang 3.5 treats this as undefined behavior, and bad things happen.
MFC after: 1 week
|
Revision tags: release/10.1.0, release/9.3.0, release/10.0.0, release/9.2.0, release/8.4.0, release/9.1.0, release/8.3.0_cvs, release/8.3.0, release/9.0.0, release/7.4.0_cvs, release/8.2.0_cvs, release/7.4.0, release/8.2.0 |
|
#
f4fbf9c8 |
| 24-Aug-2010 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Unify 32-bit and 64-bit PowerPC libthr support. This reduces code duplication, and simplifies the TBEMD import.
Requested by: imp
|
Revision tags: release/8.1.0_cvs, release/8.1.0, release/7.3.0_cvs, release/7.3.0, release/8.0.0_cvs, release/8.0.0, release/7.2.0_cvs, release/7.2.0, release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0, release/6.2.0_cvs, release/6.2.0 |
|
#
d99f6dac |
| 15-Dec-2006 |
David Xu <davidxu@FreeBSD.org> |
- Remove variable _thr_scope_system, all threads are system scope. - Rename _thr_smp_cpus to boolean variable _thr_is_smp. - Define CPU_SPINWAIT macro for each arch, only X86 supports it.
|
#
cc79b334 |
| 01-Sep-2006 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Rename TLS_TP_OFFSET back to TP_OFFSET. The former clashes with rtld.
|