Revision tags: release/13.4.0, release/14.1.0, release/13.3.0, release/14.0.0, release/13.2.0, release/12.4.0, release/13.1.0 |
|
#
e7a629c8 |
| 08-Mar-2022 |
Kyle Evans <kevans@FreeBSD.org> |
libmd, kern, stand: consolidate md5 implementations (NFC)
Reduce the number of md5c.c between the three of these from two to one by just reaching into the kernel build for both userland builds. The
libmd, kern, stand: consolidate md5 implementations (NFC)
Reduce the number of md5c.c between the three of these from two to one by just reaching into the kernel build for both userland builds. The precedent for this already exists for sha2 in both cases.
_libmd_ symbol privatization bits have been moved to sys/md5.h and md5.h remains to #include <sys/md5.h> for compatibility.
This stops exporting MD5Pad() in the process because the kernel stopped exporting it in 502a35d60f4c. soversion is bumped accordingly.
This also renames the libc version of stack_protector.c; it previously only worked by coincidence because .PATH ordering worked out such that we got the right one, but this is not the case anymore. Remove the landmine.
PR: 280784 (exp-run) Reviewed by: allanjude, delphij Differential Revision: https://reviews.freebsd.org/D34497
show more ...
|
#
e9ac4169 |
| 15-Jul-2024 |
Warner Losh <imp@FreeBSD.org> |
Remove residual blank line at start of Makefile
This is a residual of the $FreeBSD$ removal.
MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
|
#
e5551250 |
| 13-May-2024 |
Kyle Evans <kevans@FreeBSD.org> |
Prepare the system for _FORTIFY_SOURCE
Notably: - libc needs to #undef some of the macros from ssp/* for underlying implementations - ssp/* wants a __RENAME() macro (snatched more or less from Net
Prepare the system for _FORTIFY_SOURCE
Notably: - libc needs to #undef some of the macros from ssp/* for underlying implementations - ssp/* wants a __RENAME() macro (snatched more or less from NetBSD)
There's some extra hinkiness included for read(), since libc spells it as "_read" while the rest of the world spells it "read."
Reviewed by: imp, ngie Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D32307
show more ...
|
#
d7847a8d |
| 13-Mar-2024 |
Brooks Davis <brooks@FreeBSD.org> |
lib{c,sys}: return wrapped syscall APIs to libc
These provide standard APIs, but are implemented using another system call (e.g., pipe implemented in terms of pipe2) or are interposed by the threadi
lib{c,sys}: return wrapped syscall APIs to libc
These provide standard APIs, but are implemented using another system call (e.g., pipe implemented in terms of pipe2) or are interposed by the threading library to support cancelation.
After discussion with kib (see D44111), I've concluded that it is better to keep most public interfaces in libc with as little as possible in libsys.
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44241
show more ...
|
#
eb90239d |
| 19-Feb-2024 |
Brooks Davis <brooks@FreeBSD.org> |
lib{c,thr}: add DT_RUNPATH for gcc -m32
To allow gcc -m32 to work, link libc and libthr with --rpath-/usr/lib32. When called with -m32, gcc is currently unable to communicate to the bfd linker that
lib{c,thr}: add DT_RUNPATH for gcc -m32
To allow gcc -m32 to work, link libc and libthr with --rpath-/usr/lib32. When called with -m32, gcc is currently unable to communicate to the bfd linker that it should look in /usr/lib32 to resolve needed (as opposed to explicitly linked) libraries so we need to provide a hint.
See also: https://sourceware.org/bugzilla/show_bug.cgi?id=31395
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D43910
show more ...
|
#
99ea6757 |
| 19-Feb-2024 |
Brooks Davis <brooks@FreeBSD.org> |
lib{c,sys}: move auxargs more firmly into libsys
Continue to filter the public interface (elf_aux_info()), but entierly relocate the private interfaces (_elf_aux_info(), __init_elf_aux_vector(), and
lib{c,sys}: move auxargs more firmly into libsys
Continue to filter the public interface (elf_aux_info()), but entierly relocate the private interfaces (_elf_aux_info(), __init_elf_aux_vector(), and __elf_aux_vector) to libsys.
This ensures that rtld updates the correct (only) copy of __elf_aux_vector. After 968a18975adc9c2a619bb52aa2f009de99fc9e24 updates were confused and __getosreldate was failing, causing the system to fall back to compat compat12 syscalls in some cases.
Return to explicitly linking libc to libsys and link libthr with libc and libsys (in that order).
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D43910
show more ...
|
#
49076f37 |
| 07-Feb-2024 |
Brooks Davis <brooks@FreeBSD.org> |
libc: don't directly link libsys
It is sufficent to add it as a filter.
Reported by: kib Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D43781
|
#
57ddfad8 |
| 07-Feb-2024 |
Brooks Davis <brooks@FreeBSD.org> |
lib/libc: version auxiliary libsys.so
We need to use libsys.so.7 so that we can work without /usr and because we're bound a specific ABI.
Reported by: jtrc27, kib Reviewed by: kib Differential Revi
lib/libc: version auxiliary libsys.so
We need to use libsys.so.7 so that we can work without /usr and because we're bound a specific ABI.
Reported by: jtrc27, kib Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D43772
show more ...
|
#
8d2e8f72 |
| 05-Jan-2024 |
Brooks Davis <brooks@FreeBSD.org> |
libc: make syscall stubs empty for shared lib
They are always replaced by libsys so just make them empty. In https://reviews.freebsd.org/D14609 x86 variants call abort2, but that requires per-arch
libc: make syscall stubs empty for shared lib
They are always replaced by libsys so just make them empty. In https://reviews.freebsd.org/D14609 x86 variants call abort2, but that requires per-arch assembly and should be of low value in the steady state.
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
show more ...
|
#
0d4f7723 |
| 16-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libc: link libsys as a auxiliary filter library
At runtime, when rtld loads libc it will also load libsys. For each symbol that is present in both, the libsys one will override the libc one. It co
libc: link libsys as a auxiliary filter library
At runtime, when rtld loads libc it will also load libsys. For each symbol that is present in both, the libsys one will override the libc one. It continues to be the case that program need only link against libc (usually implicitly). The linkage to libsys is automatic.
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
show more ...
|
#
31a46e2c |
| 14-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libc: Move per-arch sys/Makefile.inc to libsys
libc/<arch>/sys/Makefile.inc -> libsys/<arch>/Makefile.sys.
Require that libsys/<arch>/Makefile.sys exist. At least for current archtiectures, it's n
libc: Move per-arch sys/Makefile.inc to libsys
libc/<arch>/sys/Makefile.inc -> libsys/<arch>/Makefile.sys.
Require that libsys/<arch>/Makefile.sys exist. At least for current archtiectures, it's not possible for an architecture to not have and MD syscall bits.
powerpcspe/Makefile.sys's structure means it had to be modified when moved so rename detection won't work, but it has trivial contents so the history is unimportant.
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
show more ...
|
#
8f529310 |
| 14-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libc: libc/sys/Makefile.inc -> libsys/Makefile.sys
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
|
#
8269e767 |
| 14-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libsys: relocate implementations and manpages
Remove core system call implementations and documentation to lib/libsys and lib/libsys/<arch> from lib/libc/sys and lib/libc/<arch>/<sys>. Update paths
libsys: relocate implementations and manpages
Remove core system call implementations and documentation to lib/libsys and lib/libsys/<arch> from lib/libc/sys and lib/libc/<arch>/<sys>. Update paths to allow libc to find them in their new home.
Reviewed by: kib, emaste, imp Pull Request: https://github.com/freebsd/freebsd-src/pull/908
show more ...
|
#
dc36d6f9 |
| 23-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
lib: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl s
lib: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script.
Sponsored by: Netflix
show more ...
|
#
e3e9c205 |
| 16-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
lib{c,lzma,z}: remove -DSYMBOL_VERSIONING from CFLAGS
This was part of a libkse and libpthread transition aide when libc gained symbol versions in e62165c8b0f7d6452c0033127a0fd8ad1d9e34d3 (March 200
lib{c,lzma,z}: remove -DSYMBOL_VERSIONING from CFLAGS
This was part of a libkse and libpthread transition aide when libc gained symbol versions in e62165c8b0f7d6452c0033127a0fd8ad1d9e34d3 (March 2006). The code that cared about this macro was removed in commit 00fb440c1a145b56b6c75fd405d80071aef2aab1 (May 2007) when symbol versioning was enabled by default and libthr became the default threading library. For unknown reasons, it stayed in libc (which seemingly never used it) and seems to have been copied to liblzma and libz.
Reviewed by: imp, kib, emaste Differential Revision: https://reviews.freebsd.org/D42613
show more ...
|
#
da8238d6 |
| 13-Nov-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libc: fix typo in Makefile comment
MFC after: 1 week
|
#
6e5b1ff7 |
| 09-Nov-2023 |
R. Christian McDonald <rcm@rcm.sh> |
libc: enable initial-exec (IE) as default thread-local storage model on arm
As suggested by jrtc27@ in https://reviews.freebsd.org/D42415, this patch enables IE as default thread-local storage model
libc: enable initial-exec (IE) as default thread-local storage model on arm
As suggested by jrtc27@ in https://reviews.freebsd.org/D42415, this patch enables IE as default thread-local storage model in libc on arm.
Reviewed by: kib Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D42445
show more ...
|
#
b19d8afe |
| 05-Sep-2023 |
Warner Losh <imp@FreeBSD.org> |
msun: LIBCSRCDIR is too fragile, use ${SRCTOP}/lib/libc instead
LIBCSRCDIR is defined in bsd.libnames.mk, which is read in later in the Makefile than the line:
.if exists(${LIBCSRCDIR}/${MACHINE_AR
msun: LIBCSRCDIR is too fragile, use ${SRCTOP}/lib/libc instead
LIBCSRCDIR is defined in bsd.libnames.mk, which is read in later in the Makefile than the line:
.if exists(${LIBCSRCDIR}/${MACHINE_ARCH})
so we test to see if /${MARCHIN_ARCH} exists which it usually doesn't (but did for me since I mounted 13.2R SD image there). Move to defining our own LIBC_SRCTOP in terms of SRCTOP to treat these uniformily.
Sponsored by: Netflix Reviewed by: sjg Differential Revision: https://reviews.freebsd.org/D41661
show more ...
|
#
4c757938 |
| 16-Aug-2023 |
Brooks Davis <brooks@FreeBSD.org> |
libc: include malloc via stdlib/Makefile.inc
There's a hierarchy here and we should use it.
Improves: cbeacb7c46f3a3650e5dbefa9a1a18bc9943a8cc
Reviewed by: jrtc27, jhb, emaste Sponsored by: DARPA
libc: include malloc via stdlib/Makefile.inc
There's a hierarchy here and we should use it.
Improves: cbeacb7c46f3a3650e5dbefa9a1a18bc9943a8cc
Reviewed by: jrtc27, jhb, emaste Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D41456
show more ...
|
#
d0b2dbfa |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: one-line sh pattern
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
#
5f2e8401 |
| 01-May-2023 |
Ed Maste <emaste@FreeBSD.org> |
bsd.lib.mk: decouple lib*_pic.a from TOOLCHAIN build knob
A user may use a tool chain from a package or just use an existing tool chain from a previous installation. There is no reason for this to
bsd.lib.mk: decouple lib*_pic.a from TOOLCHAIN build knob
A user may use a tool chain from a package or just use an existing tool chain from a previous installation. There is no reason for this to disable the installation of lib${LIB}_pic.a.
This also means we don't need to force MK_TOOLCHAIN=yes in lib/libc.
This reverts part of commit c0f5aeb0329d71e6b02379133c0c9c0145c9afea.
Reviewed by: jrtc27 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39917
show more ...
|
#
47e888f8 |
| 20-Apr-2023 |
John Baldwin <jhb@FreeBSD.org> |
Remove a few more references to riscv64sf.
Fixes: 1ca12bd927d7 Remove the riscv64sf architecture.
|
#
51015e6d |
| 31-Oct-2022 |
Konstantin Belousov <kib@FreeBSD.org> |
csu: move common code to libc
Why? Most trivial point, it shaves around 600 bytes from the dynamic binaries on amd64. Less trivial, the removed code is no longer part of the ABI, and we can ship upd
csu: move common code to libc
Why? Most trivial point, it shaves around 600 bytes from the dynamic binaries on amd64. Less trivial, the removed code is no longer part of the ABI, and we can ship updates to it with libc updates. Right now most of the csu is linked into the binaries and require us to do somewhat tricky ABI compat when it needs to change. For instance, the init_array change would be much simpler and does not require note tagging if we have init calling code in libc.
This could be improved more, by splitting dynamic and static initialization. For instance, &_DYNAMIC tests can be removed then. Such change, nonetheless, would require building libc three times. I left this for later, after this change stabilizes, if ever.
Reviewed by: markj Discussed with: jrtc27 (some objections, see the review), imp Tested by: markj (aarch64) Sponsored by: The FreeBSD Foundation MFC after: 3 weeks Differential revision: https://reviews.freebsd.org/D37220
show more ...
|
#
ae902a5b |
| 14-Feb-2023 |
Warner Losh <imp@FreeBSD.org> |
libc: Simplify soft-float on 32-bit arm
Simplify the tests for 32-bit arm soft float support. For the files included only on arm, drop the test entirely. For others, test MACHINE_CPUARCH against arm
libc: Simplify soft-float on 32-bit arm
Simplify the tests for 32-bit arm soft float support. For the files included only on arm, drop the test entirely. For others, test MACHINE_CPUARCH against arm.
No functional change intended. File lists appear the same before / after the change.
Sponsored by: Netflix Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D38582
show more ...
|
#
c3fb59ed |
| 05-Oct-2022 |
Brooks Davis <brooks@FreeBSD.org> |
libc: Include quad support on long32 ABIs
Rather than not including it on all 64-bit platforms, just include it on 32-bit ones.
Reviewed by: imp, jhb Sponsored by: DARPA, AFRL Differential Revision
libc: Include quad support on long32 ABIs
Rather than not including it on all 64-bit platforms, just include it on 32-bit ones.
Reviewed by: imp, jhb Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D36422
show more ...
|