Commit Graph

1730 Commits

Author SHA1 Message Date
Florian Weimer
0e9c278a7e Auto-sync with upstream branch master
Upstream commit: 47311cca31e685fa7bfe19bb8cef17d2d3d7fff9

- manual: Add description of AArch64-specific pkey flags
- AArch64: Add support for memory protection keys
- AArch64: Remove thunderx{,2} memcpy
- powerpc64le: Optimized strcat for POWER10
- powerpc: Improve the inline asm for syscall wrappers
- elf: handle addition overflow in _dl_find_object_update_1 [BZ #32245]
- x86/string: Use `movsl` instead of `movsd` in strncpy/strncat [BZ #32344]
- manual: Fix overeager s/int/size_t/ in memory.texi
- linux: Add support for getrandom vDSO
2024-11-20 14:07:52 +01:00
Florian Weimer
736b65ab4b Only relocate ld.so for the second time of libc.so has been loaded 2024-11-13 17:50:00 +01:00
DJ Delorie
d48dfabacb Auto-sync with upstream branch master,
Upstream commit: 7b544224f82d20019f9b28522ebf8114a372d1a2

- stat.h: Fix missing declaration of struct timespec
- mach: Fix __xpg_strerror_r on in-range but undefined errors [BZ #32350]
- x86/string: Use `movsl` instead of `movsd` [BZ #32344]
- Rename new tst-sem17 test to tst-sem18
- Avoid uninitialized result in sem_open when file does not exist
- nptl: initialize rseq area prior to registration
- s390x: Update ulps
- elf: avoid jumping over a needed declaration
- math: Fix log10f on some ABIs
- stdio-common: Add tests for formatted vsnprintf output specifiers
- stdio-common: Add tests for formatted vsprintf output specifiers
- stdio-common: Add tests for formatted vfprintf output specifiers
- stdio-common: Add tests for formatted vdprintf output specifiers
- stdio-common: Add tests for formatted vasprintf output specifiers
- stdio-common: Add tests for formatted vprintf output specifiers
- stdio-common: Add tests for formatted snprintf output specifiers
- stdio-common: Add tests for formatted sprintf output specifiers
- stdio-common: Add tests for formatted fprintf output specifiers
- stdio-common: Add tests for formatted dprintf output specifiers
- stdio-common: Add tests for formatted asprintf output specifiers
- stdio-common: Add tests for formatted printf output specifiers
- nptl: fix __builtin_thread_pointer detection on LoongArch
- math: Fix incorrect results of exp10m1f with some GCC versions
- misc: Align argument name for pkey_*() functions with the manual
- manual: Use more precise wording for memory protection keys
- elf: Switch to main malloc after final ld.so self-relocation
- elf: Introduce _dl_relocate_object_no_relro
- elf: Do not define consider_profiling, consider_symbind as macros
- elf: rtld_multiple_ref is always true
- Add Arm HWCAP2_* constants from Linux 3.15 and 6.2 to <bits/hwcap.h>
- Add feature test macro _ISOC2Y_SOURCE
- added license for sysdeps/ieee754/flt-32/e_gammaf_r.c
- AArch64: Remove SVE erf and erfc tables
- x86_64: Add exp2m1f with FMA
- x86_64: Add exp10m1f with FMA
- math: Use log10p1f from CORE-MATH
- math: Use log1pf from CORE-MATH
- math: Use log2p1f from CORE-MATH
- math: Use log10f from CORE-MATH
- math: Use expm1f from CORE-MATH
- math: Use exp2m1f from CORE-MATH
- math: Use exp10m1f from CORE-MATH
- benchtests: Add log10p1f benchmark
- benchtests: Add log1p benchmark
- benchtests: Add log2p1f benchmark
- benchtests: Add log10f benchmark
- benchtests: Add expm1f benchmark
- benchtests: Add exp2m1f benchmark
- benchtests: Add exp10m1f benchmark
- math: Add e_gammaf_r to glibc code and style
- LoongArch: Add RSEQ_SIG in rseq.h.
- nptl: Add <thread_pointer.h> for LoongArch
- Link tst-clock_gettime with $(librt)
- powerpc64: Obviate the need for ROP protection in clone/clone3
- Add tests of time, gettimeofday, clock_gettime
- Add more tests of pthread attributes initial values
- Document further requirement on mixing streams / file descriptors
- powerpc64le: Adhere to ABI stack alignment requirement
- AArch64: Small optimisation in AdvSIMD erf and erfc
- Revert "elf: Run constructors on cyclic recursive dlopen (bug 31986)"
- elf: Change ldconfig auxcache magic number (bug 32231)
- SHARED-FILES: Mention bundled Linux 6.10 headers.
- libio: Fix crash in fputws [BZ #20632]
- stdio-common: Fix scanf parsing for NaN types [BZ #30647]
2024-11-12 14:18:35 -05:00
Florian Weimer
cd8af7b147 Exclude 32-bit headers from the x86_64 package
The files in glibc-devel.x86_64 caused the llvm architecture detection
to fail.  It also changes the error message back to the familiar:

/usr/include/gnu/stubs.h:7:11: fatal error: gnu/stubs-32.h:
  No such file or directory

Instead of the new one:

/usr/bin/ld: cannot find crt1.o: No such file or directory
2024-11-04 17:08:57 +01:00
Florian Weimer
a766afca02 Use rpm.spawn instead of posix.fork if availabe (#2291869) 2024-10-28 13:55:42 +01:00
Florian Weimer
1fcc972d48 Eliminate glibc-headers and related packages
The headers are identical except for <gnu/lib-names-32.h> and
<gnu/stubs-32.h>.  Having those in glibc-devel.x86_64 as well should
be harmless.  RPM is expected to handle the identical files shared
between glibc-devel.x86_64 and glibc-devel.i686 because it's needed
for pretty much every other -devel package.
2024-10-28 13:53:43 +01:00
Florian Weimer
8a4e95401c Restore compatibility with libglvnd 2024-10-26 15:57:37 +02:00
Florian Weimer
dce3a85f6a Add missing upstream commit description 2024-10-26 15:57:23 +02:00
Florian Weimer
9dacf7e4e9 Define macros that are expanded during source RPM construction for noarch
Otherwise, building source RPMs in Koji chokes on directives such as

Provides: %{glibc_ldso}

even though these entries are not relevant to source RPMs.
2024-10-26 01:22:06 +02:00
Florian Weimer
0a6148145d Use UsrMove (Changes/UsrMerge) path destination in the RPMs (#1063607)
This commit updates most occurrences of /%{_lib} to %{_libdir}.
The glibc build process is not changed, instead the symbolic links
are created right before installing the files, to redirect them
to their final locations.  The symbolic links are removed again
so that they do not end up in the shipped packages.
2024-10-25 22:22:21 +02:00
Florian Weimer
328b9681ee Rework filelist construction
Eliminate most pattern matching and list files explicitly.  Two
common exceptions are modeled explicitly: libmvec (additional shared
object and static library), libnldbl (additional shared object).

To implement glibc-headers-* and glibc-gconv-extra, pattern matching
is still used, but with helper shell functions that allow splitting
the matching and non-matching files into separate list files.  Some
complications arise because the build for glibc32.x86_64 installs
header files into /usr/include that shouldn't land in the regular
development packages.

The remaining differences are bug fixes for directory ownership.

/usr/libexec/glibc-benchtests is now owned by glibc-benchtests.
/lib64/glibc-hwcaps is now owned by glibc.ppc64le.

Differences can be checked with this script:

mkdir -p filelist
for x in "$@" ; do
    target="$(rpm -qp --qf 'filelist/%{name}.%{arch}.txt' "$x")"
    rpm -qp --qf '[%{filenames} %{filemodes:perms} (%{fileflags:fflags})(%{fileverifyflags:hex}) \{%{filecaps}\} %{fileusername} %{filegroupname}\n]' "$x" > "$target"
done

Note: Delete the *.src.rpm files because %{arch} has unexpected
results for them.
2024-10-25 22:19:41 +02:00
Florian Weimer
1cbb8b9347 Do not build and run xtests explicitly
Upstream builds them unconditionally as part of make check.
2024-10-25 22:18:50 +02:00
Florian Weimer
ba9b5e45af Auto-sync with upstream branch master
Upstream commit: ac73067cb7a328bf106ecd041c020fc61be7e087

- elf: Fix map_complete Systemtap probe in dl_open_worker
2024-10-25 17:53:45 +02:00
Florian Weimer
267a95236f Auto-sync with upstream branch master
Upstream commit: 43db5e2c0672cae7edea7c9685b22317eae25471

- elf: Signal RT_CONSISTENT after relocation processing in dlopen (bug 31986)
- elf: Signal LA_ACT_CONSISTENT to auditors after RT_CONSISTENT switch
- elf: Run constructors on cyclic recursive dlopen (bug 31986)
- Linux: Match kernel text for SCHED_ macros
- libio: Correctly link tst-popen-fork against libpthread
2024-10-25 17:24:49 +02:00
Patsy Griffin
581f21ada7 Auto-sync with upstream branch master
sUpstream commit: c5dd659f22058bf9b371ab1cba07631f1206c674

- Add more tests of pthread_mutexattr_gettype and pthread_mutexattr_settype
- libio: Fix a deadlock after fork in popen
- configure: default to --prefix=/usr on GNU/Linux
- manual: Document stdio.h functions that may be macros
- Check time arguments to pthread_timedjoin_np and pthread_clockjoin_np
- Add .b4-config file
- linux: Fix tst-syscall-restart.c on old gcc (BZ 32283)
- sparc: Fix restartable syscalls (BZ 32173)
- support: Make support_process_state_wait return the found state
- Enable transliteration rules with two input characters in scn_IT [BZ #32280]
2024-10-24 16:57:16 -04:00
DJ Delorie
74a6204fdb Auto-sync with upstream branch master
Upstream commit 9d4b4515a88c5d0bbfc7809374f322c507c2d779

- locale: Fix some spelling typos
- LoongArch: Regenerate loongarch/arch-syscall.h by build-many-glibcs.py update-syscalls.
- manual: Fix and test @deftypef* function formatting
- replace tgammaf by the CORE-MATH implementation
- Add IPPROTO_SMC from Linux 6.11 to netinet/in.h
- misc: Add support for Linux uio.h RWF_ATOMIC flag
- linux: Update stat-generic.h with linux 6.11
- Update kernel version to 6.11 in header constant tests
- linux: Add MAP_DROPPABLE from Linux 6.11
- Update PIDFD_* constants for Linux 6.11
- Update syscall lists for Linux 6.11
- Use Linux 6.11 in build-many-glibcs.py
- Fix header guard in sysdeps/mach/hurd/x86_64/vm_param.h
- rt: more clock_nanosleep tests addendum
- rt: more clock_nanosleep tests
- stdlib: Make abort/_Exit AS-safe (BZ 26275)
- linux: Use GLRO(dl_vdso_time) on time
- linux: Use GLRO(dl_vdso_gettimeofday) on gettimeofday
- S390: Don't use r11 for cu-instructions as used as frame-pointer. [BZ# 32192]
- stdio-common/Makefile: Fix FAIL: lint-makefiles
- Fix whitespace related license issues.
- Add freopen special-case tests: thread cancellation
- hurd: Add missing va_end call in fcntl implementation. [BZ #32234]
2024-10-14 13:30:51 -04:00
Carlos O'Donell
563b4e6c6f Auto-sync with upstream branch master
Upstream commit: a36814e1455093fc9ebfcdf6ef39bb0cf3d447da

- riscv: align .preinit_array (bug 32228)
- linux: sparc: Fix clone for LEON/sparcv8 (BZ 31394)
- linux: sparc: Fix syscall_cancel for LEON
- math: Improve layout of expf data
- Disable _TIME_BITS if the compiler defaults to it
- Disable _FILE_OFFSET_BITS if the compiler defaults to it
- Do not use -Wp to disable fortify (BZ 31928)
- libio: Set _vtable_offset before calling _IO_link_in [BZ #32148]
- Add a new fwrite test that exercises buffer overflow
- x86/string: Fixup alignment of main loop in str{n}cmp-evex [BZ #32212]
- stdio-common: Fix memory leak in tst-freopen4* tests on UNSUPPORTED
- Linux: Block signals around _Fork (bug 32215)
- Update to Unicode 16.0.0 [BZ #32168]
- manual: Document that feof and ferror are mutually exclusive
- stdio-common: Add new test for fdopen
- Fix missing randomness in __gen_tempname (bug 32214)
- arc: Cleanup arcbe
- arc: Remove HAVE_ARC_BE macro and disable big-endian port
- scripts: Remove arceb-linux-gnu from build-many-glibcs.py
- LoongArch: Undef __NR_fstat and __NR_newfstatat.
- Add tests of fread
2024-10-02 16:11:30 -04:00
Arjun Shankar
39bab0c46f Auto-sync with upstream branch master
Upstream commit: da29dc24d419656a4a6d6d61598b767b86b1425d

- nptl: Prefer setresuid32 in tst-setuid2
- elf: Move __rtld_malloc_init_stubs call into _dl_start_final
- elf: Eliminate alloca in open_verify
- elf: Remove version assert in check_match in elf/dl-lookup.c
- elf: In rtld_setup_main_map, assume ld.so has a DYNAMIC segment
- misc: Enable internal use of memory protection keys
- misc: Link tst-mkstemp-fuse-parallel with $(shared-thread-library)
- iconv: Use $(run-program-prefix) for running iconv (bug 32197)
- AArch64: Simplify rounding-multiply pattern in several AdvSIMD routines
- AArch64: Improve codegen in users of ADVSIMD expm1f helper
- AArch64: Improve codegen in users of AdvSIMD log1pf helper
- AArch64: Improve codegen in SVE F32 logs
- AArch64: Improve codegen in SVE expf & related routines
- Linux: readdir64_r should not skip d_ino == 0 entries (bug 32126)
- dirent: Add tst-rewinddir
- dirent: Add tst-readdir-long
- Linux: Use readdir64_r for compat __old_readdir64_r (bug 32128)
- dirent: Add tst-closedir-leaks
- support: Add valgrind instructions to <support/fuse.h>
- support: Fix memory leaks in FUSE tests
- misc: FUSE-based tests for mkstemp
- Add freopen special-case tests: chroot, EFBIG, stdin/stdout/stderr
- Make tst-strtod-underflow type-generic
- Add tests of more strtod special cases
- Add more tests of strtod end pointer
- Make tst-strtod2 and tst-strtod5 type-generic
- Implement run-built-tests=no for make xcheck, always build xtests
- Test that errno is set to 0 at program startup
- Add another test for fclose on an unopened file
2024-09-24 16:03:42 +02:00
Florian Weimer
7d2f238156 Auto-sync with upstream branch master
Upstream commit: fa1b0d5e9f6e0353e16339430770a7a8824c0468

- iconv: Input buffering for the iconv program (bug 6050)
- iconv: Multiple - on command line should not fail (bug 32050)
- iconv: Support in-place conversions (bug 10460, bug 32033)
- iconv: Preserve iconv -c error exit on invalid inputs (bug 32046)
- manual: __is_last is no longer part of iconv internals
- iconv: Do not use mmap in iconv (the program) (bug 17703)
- iconv: Base tests for buffer management
- AArch64: Add vector logp1 alias for log1p
- Linux: Add missing scheduler constants to <sched.h>
- Linux: Add the sched_setattr and sched_getattr functions
- manual: Extract the @manpageurl{func,sec} macro
- AArch64: Remove memset-reg.h
- debug: Fix read error handling in pcprofiledump
- AArch64: Optimize memset
- aarch64: Avoid redundant MOVs in AdvSIMD F32 logs
- Document limitations on streams passed to freopen
- stdlib: Do not use GLIBC_PRIVATE ABI for errno in libc_nonshared.a
- manual: Safety annotations for clock_gettime, clock_getres
- timezone: sync to TZDB 2024b
- Fix freopen handling of ,ccs= (bug 23675)
- powerpc64le: Build new strtod tests with long double ABI flags (bug 32145)
2024-09-20 15:34:02 +02:00
Florian Weimer
3ebbe38af2 Fix typo in rpmbuild.xcheck.log dumping 2024-09-19 13:53:19 +02:00
Florian Weimer
e4aaff0fdb Use make xcheck in such a way that xtests are actually built 2024-09-19 13:22:59 +02:00
Florian Weimer
e2bae39a8f Ensure that xtests can be built 2024-09-19 10:36:00 +02:00
Florian Weimer
88814acb29 Auto-sync with upstream branch master
Upstream commit: 9c0d6f7a1046aba111e25e34ec07242853e859dc

- Fix memory leak on freopen error return (bug 32140)
- Clear flags2 flags set from mode in freopen (bug 32134)
- Linux: readdir_r needs to report getdents failures (bug 32124)
- libio: Attempt wide backup free only for non-legacy code
- Do not set errno for overflowing NaN payload in strtod/nan (bug 32045)
- powerpc64: Fix syscall_cancel build for powerpc64le-linux-gnu [BZ #32125]
- Fix strtod subnormal rounding (bug 30220)
- manual: Add Descriptor-Relative Access section
- x86: Enable non-temporal memset for Hygon processors
- x86: Add cache information support for Hygon processors
- x86: Add new architecture type for Hygon processors
- powerpc64: Optimize strcpy and stpcpy for Power9/10
- nptl: Fix Race conditions in pthread cancellation [BZ#12683]
- x86: Unifies 'strnlen-evex' and 'strnlen-evex512' implementations.
- string: strerror, strsignal cannot use buffer after dlmopen (bug 32026)
- ungetc: Fix backup buffer leak on program exit [BZ #27821]
- ungetc: Fix uninitialized read when putting into unused streams [BZ #27821]
- x86: Add `Avoid_STOSB` tunable to allow NT memset without ERMS
- x86: Use `Avoid_Non_Temporal_Memset` to control non-temporal path
- x86: Fix bug in strchrnul-evex512 [BZ #32078]
- manual: Document dprintf and vdprintf
- manual: Document generic printf error codes
- ARC: Regenerate ULPs
- support: Add options list terminator to the test driver
- Define __libc_initial for the static libc
- Turn on -Wimplicit-fallthrough by default if available
- elf: Remove struct dl_init_args from elf/dl-open.c
- nptl: Fix stray process left by tst-cancel7 blocking testing
- nptl: Reorder semaphore release in tst-cancel7
- sysdeps: Re-flow and sort multiline gnu/Makefile definitions
- login: Re-flow and sort multiline Makefile definitions
- benchtests: Add random memset benchmark
- AArch64: Improve generic strlen
- rtld: Fix handling of '--' option
- manual/stdio: Further clarify putc, putwc, getc, and getwc
- stdlib: Allow concurrent quick_exit (BZ 31997)
- elf: Avoid re-initializing already allocated TLS in dlopen (bug 31717)
- elf: Clarify and invert second argument of _dl_allocate_tls_init
- Fix name space violation in fortify wrappers (bug 32052)
- iconv: Fix matching of multi-character transliterations (bug 31859)
- x86: Tunables may incorrectly set Prefer_PMINUB_for_stringop (bug 32047)
- x86: Add missing switch/case fall-through markers to init_cpu_features
- stdlib: Link tst-concurrent-exit with $(shared-thread-library)
- hurd: Fix missing pthread_ compat symbol in libc
- resolv: Fix tst-resolv-short-response for older GCC (bug 32042)
- Add mremap tests
- mremap: Update manual entry
- linux: Update the mremap C implementation [BZ #31968]
- Enhanced test coverage for strncmp, wcsncmp
- Enhance test coverage for strnlen, wcsnlen
- stdlib: Mark `abort` as `cold`
- stdlib: Allow concurrent exit (BZ 31997)
- Add F_DUPFD_QUERY from Linux 6.10 to bits/fcntl-linux.h
- Add STATX_SUBVOL from Linux 6.10 to bits/statx-generic.h
- Update syscall lists for Linux 6.10
- assert: Mark `__assert_fail` as `cold`
- x86-64: Remove sysdeps/x86_64/x32/dl-machine.h
2024-09-05 13:44:23 +02:00
Patsy Griffin
59ad86c69b Auto-sync with upstream branch release/2.40/master
Upstream commit: 132a72f93cb4ad9f16b8469dc061de5f75f6a44e

- manual: make setrlimit() description less ambiguous
- manual/stdio: Clarify putc and putwc
- malloc: add multi-threaded tests for aligned_alloc/calloc/malloc
- malloc: avoid global locks in tst-aligned_alloc-lib.c
2024-07-31 13:17:16 -04:00
Florian Weimer
03bf7e6cdf Stub resolver configuration updates (RHEL-18039)
- Support clearing options in /etc/resolv.conf, RES_OPTIONS with a - prefix
- Introduce the strict-error/RES_STRICTERR stub resolver option
2024-07-26 14:00:09 +02:00
Florian Weimer
82b4bc76c0 Auto-sync with upstream branch release/2.40/master
Upstream commit: 145b5886379c8de4f0a1bca3556a4c3d7b6c24b2

- manual: Do not mention STATIC_TLS in dynamic linker hardening recommendations
- resolv: Do not wait for non-existing second DNS response after error (bug 30081)
- resolv: Allow short error responses to match any query (bug 31890)
- Increase version number to 2.40
- libc.pot: regenerate (only line number changes)
- x86: Disable non-temporal memset on Skylake Server
2024-07-26 09:48:59 +02:00
Arjun Shankar
c9bf6af606 ppc64le: Build early startup code with -mcpu=power8
The --with-rtld-early-cflags configure option was being passed for ppc64
builds instead of for ppc64le.  This commit fixes that.
2024-07-18 14:32:52 +02:00
DJ Delorie
a9efe40115 Auto-sync with upstream branch master
Upstream commit: a11e15ea0ab1ee8a1947b6be52beca53693f0991

- math: Update alpha ulps
- hurd: Fix restoring message to be retried
- nptl: Convert tst-sem11 and tst-sem12 tests to use the test driver
- nptl: Add copyright notice tst-sem11 and tst-sem12 tests
- tests: XFAIL audit tests failing on all mips configurations, bug 29404
- time/Makefile: Split and sort tests
- s390x: Fix segfault in wcsncmp [BZ #31934]
2024-07-15 21:57:47 -04:00
Zbigniew Jędrzejewski-Szmek
8f78a55fb6 Rebuilt for the bin-sbin merge (again)
https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin
2024-07-13 13:02:45 +02:00
Florian Weimer
04dd5dc667 Auto-sync with upstream branch master
Upstream commit: 2e456ccf0c34a056e3ccafac4a0c7effef14d918

- Linux: Make __rseq_size useful for feature detection (bug 31965)
- po: incorporate translations (bg)
- manual: add syscalls
- libio: handle opening a file when all files are closed (bug 31963)
- ldconfig: Ignore all GDB extension files
- ldconfig: Move endswithn into a new header file
- math: Update m68k ULPs
- stdlib: fix arc4random fallback to /dev/urandom (BZ 31612)
- elf: Make dl-rseq-symbols Linux only
2024-07-10 14:13:57 +02:00
Zbigniew Jędrzejewski-Szmek
2dfb5f35bd Make short-circuit builds work
The build would fail because the target already exists. Use "-f" to
make it work. This is useful because glibc takes a while to build ;)
2024-07-09 14:23:46 +02:00
Zbigniew Jędrzejewski-Szmek
6756999ced Move ldconfig to %{_sbindir}, adjust paths for merged-sbin
This implements https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin
and https://pagure.io/packaging-committee/pull-request/1355.
Since %{_sbindir} will point to /usr/bin, ldconfig is moved first
to /usr/sbin, but then when the merge is implemented, to /usr/bin.

Adjust the handling of zic and iconvconfig. Previously, they were
sorted into the right subpackage based on the location, but now all
files are in /usr/bin, so that doesn't work anymore.

Before the merge, /sbin/ldconfig and /usr/sbin/ldconfig point
to the same file, so both paths work. Virtual Provides:/sbin/ldconfig
allows other rpms to refer to either path. After sbin-merge,
the /usr/sbin/ symlink needs to be created by filesystem, so
add the appropriate Requires.
2024-07-09 14:22:00 +02:00
Arjun Shankar
3928831719 Auto-sync with upstream branch master
Upstream commit: 2b92982e2369d292560793bee8e730f695f48ff3

- nptl: fix potential merge of __rseq_* relro symbols
- riscv: Update nofpu libm test ulps
- manual: Recommendations for dynamic linker hardening
- socket: Add new test for shutdown
- elf/rtld: Fix auxiliary vector for enable_secure
- hppa/vdso: Provide 64-bit clock_gettime() vDSO only
- debug: Fix clang open fortify wrapper (BZ 31927)
- Add --disable-static-c++-tests option [BZ #31797]
- Add --disable-static-c++-link-check option [BZ #31412]
- Update mmap() flags and errors lists
- MIPSr6/math: Use builtin fma and fmaf
- elf: Support recursive use of dynamic TLS in interposed malloc
- Fix conditionals on mtrace-based tests (bug 31892)
- signal/Makefile: Split and sort tests
- x86: Set default non_temporal_threshold for Zhaoxin processors
- x86_64: Optimize large size copy in memmove-ssse3
- x86: Set preferred CPU features on the KH-40000 and KX-7000 Zhaoxin processors
- Aarch64: Add new memset for Qualcomm's oryon-1 core
- Aarch64: Add memcpy for qualcomm's oryon-1 core
- debug: Fix clang open fortify wrapper (BZ 31927)
- debug: Fix clang mq_open fortify wrapper (BZ 31917)
- tests-mbwc: Silence gcc 14 -Werror=format-overflow=
2024-07-04 13:16:14 +02:00
Patsy Griffin
1603139976 Move ANSI_X3.110-1983 support from main package to glibc-gconv-extra. 2024-07-01 14:37:11 -04:00
Patsy Griffin
d1acdb1a5e Auto-sync with upstream branch master
Upstream commit: 21738846a19eb4a36981efd37d9ee7cb6d687494

- time: Avoid memcmp overread in tzset (bug 31931)
- Fix strnlen doc re array size
- arm: Avoid UB in elf_machine_rel()
- LoongArch: Fix tst-gnu2-tls2 test case
- posix: Fix pidfd_spawn/pidfd_spawnp leak if execve fails (BZ 31695)
- INSTALL: regenerate
- Revert "MIPSr6/math: Use builtin fma and fmaf"
- INSTALL: Fix typo ibmlondouble to ibmlongdouble
- RISC-V: Execute a PAUSE hint in spin loops
- MIPSr6/math: Use builtin fma and fmaf
- po: incorporate translations (cs, de, hr, ko, pl, ro, ru, sv, uk, zh_CN)
- mtrace: make shell commands robust against meta characters
- hppa/vdso: Add wrappers for vDSO functions
- Update hppa libm-test-ulps
- Benchtests: Remove broken walk benchmarks
- Update hppa libm-test-ulps
- RISC-V: Update ulps
- MIPS: Update ulps
2024-06-27 10:52:45 -04:00
Florian Weimer
b5cf50002f Auto-sync with upstream branch master
Upstream commit: dd144dce21c864781fade4561581d50fb4549956

- malloc: Replace shell/Perl gate in mtrace
- s390x: Capture grep output in static PIE check
- i386: Update ulps
- malloc: Always install mtrace (bug 31892)
- Translations: Regenerate libc.pot
- s390x: Regenerate ULPs.
- LoongArch: Fix _dl_tlsdesc_dynamic in LSX case
- aarch64: Update ulps
- powerpc: Update ulps
- Linux: Include <dl-symbol-redir-ifunc.h> in dl-sysdep.c
- linux: add definitions for hugetlb page size encodings
- elf: Remove HWCAP_IMPORTANT
- elf: Remove LD_HWCAP_MASK / tunable glibc.cpu.hwcap_mask
- elf: Remove _DL_PLATFORMS_COUNT
- elf: Remove _DL_FIRST_PLATFORM
- elf: Remove _DL_HWCAP_PLATFORM
- elf: Remove platform strings in dl-procinfo.c
- elf: Remove _dl_string_platform
- elf: Remove loading legacy hwcaps/platform entries in dynamic loader
- x86: Remove HWCAP_START and HWCAP_COUNT
- math: Update mips32/mips64 ulps for log2p1
- Convert to autoconf 2.72 (vanilla release, no distribution patches)
- Implement C23 exp2m1, exp10m1
- Implement C23 log10p1
- Implement C23 logp1
- support: Include <limits.h> for NAME_MAX use in temp_file.c
- support: Include <stdlib.h> for atoi use in support_wait_for_thread_exit
- Extend tst-getconf.sh test with NPROCESSORS_CONF and NPROCESSORS_ONLN
- Define ISO 639-3 "ltg" (Latgalian) and add ltg_LV locale
- Minor code improvement to timespec_subtract example
- Modernize and fix doc’s “Date and Time” (BZ 31876)
- manual: minor language fix (bz 31340)
- x86: Fix value for `x86_memset_non_temporal_threshold` when it is undesirable
- elf: Change module-names to modules-names in comments
- resolv: Track single-request fallback via _res._flags (bug 31476)
- x86: Properly set x86 minimum ISA level [BZ #31883]
- tunables: sort tunables list (BZ 30027)
- linux: Remove __stack_prot
2024-06-21 13:25:26 +02:00
DJ Delorie
e8ab643b0a Auto-sync with upstream branch master
Upstream commit: e7ac92e6ca9784b397189df0b2e1fb34f425bab8

- <stdio.h>: Acknowledge that getdelim/getline are in POSIX
- localedata: Lowercase day and abday in cs_CZ
- x86: Properly set MINIMUM_X86_ISA_LEVEL for i386 [BZ #31867]
- x86: Enable non-temporal memset tunable for AMD
- hurd: Fix getxattr/listxattr returning ERANGE
- hurd: Fix setxattr return value on replacing
- hurd: Fix getxattr("gnu.translator") returning ENODATA
- hurd: Fix lsetxattr return value
- localedata: add new locales scn_IT
- support: Fix typo in xgetsockname error message
- getconf: Add NPROCESSORS_{CONF,ONLN} [BZ #31661]
- Linux: Add epoll ioctls
- Improve doc for time_t range (BZ 31808)
- difftime can throw exceptions
- malloc: New test to check malloc alternate path using memory obstruction
- math: Fix exp10 undefined left shift
- libio: Test for fdopen memory leak without SEEK_END support (bug 31840)
- Remove memory leak in fdopen (bug 31840)
- Add new AArch64 HWCAP2 definitions from Linux 6.9 to bits/hwcap.h
- Add more NT_ARM_* constants from Linux kernel to elf.h
- stdlib: Describe __cxa_finalize usage in function comment
- elf: Avoid some free (NULL) calls in _dl_update_slotinfo
- x86: Add seperate non-temporal tunable for memset
- x86: Improve large memset perf with non-temporal stores [RHEL-29312]
- elf: add note identifier for dlopen metadata
- elf: update NT_FDO_PACKAGING_METADATA spec URL
2024-06-12 18:11:36 -04:00
Arjun Shankar
98d57c7f87 Auto-sync with upstream branch master
Upstream commit: 0c1d2c277a59f08fd3232b33d18644ea890190ea

- LoongArch: Use "$fcsr0" instead of "$r0" in _FPU_{GET,SET}CW
- x86_64: Reformat elf_machine_rela
- i386: Disable Intel Xeon Phi tests for GCC 15 and above (BZ 31782)
- difftime is pure, not const
- parse_fdinfo: Don't advance pointer twice [BZ #31798]
- elf/Makefile: Split and sort PIE tests
- Revert "Test fscanf of long double without <stdio.h>"
- sysdeps/ieee754/ldbl-opt/Makefile: Split and sort libnldbl-calls
- Test fscanf of long double without <stdio.h>
- sysdeps/ieee754/ldbl-opt/Makefile: Remove test-nldbl-redirect-static
- sysdeps/ieee754/ldbl-opt/Makefile: Split and sort tests
- s390x: Regenerate ULPs.
- powerpc: Remove duplicated versionsort from libm.a (BZ 31789)
- Update kernel version to 6.9 in header constant tests
- localedata: cv_RU: update translation
2024-05-29 11:05:41 +02:00
Patsy Griffin
e32c8ab95e Auto-sync with upstream branch master
Upstream commit: eaa8113bf0eb599025e3efdbe1bb214ee8dc645a

- math: Provide missing math symbols on libc.a (BZ 31781)
- s390: Make utmp32, utmpx32, and login32 shared only (BZ 31790)
- microblaze: Remove cacheflush from libc.a (BZ 31788)
- powerpc: Remove duplicated llrintf and llrintf32 from libm.a (BZ 31787)
- powerpc: Remove duplicate strchrnul and strncasecmp_l libc.a (BZ 31786)
- loongarch: Remove duplicate strnlen in libc.a (BZ 31785)
- aarch64: Remove duplicate memchr/strlen in libc.a (BZ 31777)
- Update PIDFD_* constants for Linux 6.9
- Define write_profiling functions only in profile library [BZ #31756]
- Don't provide XXXf128_do_not_use aliases [BZ #31757]
- Don't provide scalb/significand _FloatN aliases [BZ #31760]
- math: Fix isnanf128 static build (BZ 31774)
- math: Add support for auto static math tests
- Change _IO_stderr_/_IO_stdin_/_IO_stdout to compat symbols [BZ #31766]
- Obsolete _dl_mcount_wrapper in glibc 2.40 [BZ #31765]
- math: Fix i386 and m68k exp10 on static build (BZ 31775)
- math: Fix i386 and m68k fmod/fmodf on static build (BZ 31488)
- Remove the clone3 symbol from libc.a [BZ #31770]
- aarch64/fpu: Add vector variants of pow
- Compile libmvec with -fno-math-errno
- manual: clarify defintions of floating point exponent bounds (bug 31518)
- LoongArch: Update ulps
- LoongArch: Fix tst-gnu2-tls2 compiler error
- resolv: Make _res_opcodes a compat symbol [BZ #31764]
- i386: Don't define stpncpy alias when used in IFUNC [BZ #31768]
- powerpc: Update ulps
- arm: Update ulps
- aarch64: Update ulps
- math: Add more details to the test driver output.
- Implement C23 log2p1
- Update syscall lists for Linux 6.9
- Rename procutils_read_file to __libc_procutils_read_file [BZ #31755]
- nearbyint: Don't define alias when used in IFUNC [BZ #31759]
- Pass -nostdlib -nostartfiles together with -r [BZ #31753]
2024-05-23 08:57:35 -04:00
Florian Weimer
add3da24f0 Use release instead of baserelease for glibc32 conflict
This is necessary because %{baserelease} < %{release}, so the
previous Obsoletes: clause did not match an installed glibc32
package from the same build.
2024-05-22 11:26:11 +02:00
Florian Weimer
cb26947f73 Add Conflicts:/Obsoletes: for glibc32 to glibc.i686 2024-05-19 18:33:38 +02:00
Florian Weimer
1f7783d16b Auto-sync with upstream branch master
Upstream commit: 8d7b6b4cb27d4dec1dd5f7960298c1699275f962

- socket: Use may_alias on sockaddr structs (bug 19622)
- Use a doubly-linked list for _IO_list_all (bug 27777)
- powerpc64: Fix by using the configure value $libc_cv_cc_submachine [BZ #31629]
- aarch64/fpu: Add vector variants of cbrt
- aarch64/fpu: Add vector variants of hypot
- Use Linux 6.9 in build-many-glibcs.py
- localedata: Fix several issues with the set of characters considered 0-width [BZ #31370]
- math: Add GLIBC_TEST_LIBM_VERBOSE environment variable support.
- malloc: Improve aligned_alloc and calloc test coverage.
- Unify output from backtrace_symbols_fd with backtrace_symbols (bug 31730)
- manual: add dup3
- Force DT_RPATH for --enable-hardcoded-path-in-tests
- powerpc: Fix __fesetround_inline_nocheck on POWER9+ (BZ 31682)
- localedata: add mdf_RU locale
- elf: Make glibc.rtld.enable_secure ignore alias environment variables
- elf: Remove glibc.rtld.enable_secure check from parse_tunables_string
- elf: Only process multiple tunable once (BZ 31686)
2024-05-19 11:58:16 +02:00
Arjun Shankar
e9d072eb64 Move memory tracing libs to appropriate sub-packages
Commit 2d5af83031 moved libc_malloc_debug.so.0 to glibc-utils, but
this made it impossible to install the 32-bit version of the library on
x86_64.

libmemusage.so is a similar tracing library that is currently shipped in
glibc but should also (with the exception of i686) be moved to
glibc-utils.

This commit fixes that by:

1. Moving libc_malloc_debug.so.0 back to glibc on i686.

2. Moving libmemusage.so to glibc-utils, again, except on i686.
2024-05-15 13:49:14 +02:00
Arjun Shankar
2d5af83031 Move libc_malloc_debug.so.0 from glibc to glibc-utils
libc_malloc_debug is a debugging library and therefore should not be
installed by default.  Since it is needed in order to enable mtrace
functionality, it belongs in glibc-utils along with the mtrace log
interpreter.
2024-05-14 12:41:50 +02:00
DJ Delorie
05c725ac55 Auto-sync with upstream master
Upstream commit: 5f245f3bfbe61b2182964dafb94907e38284b806.

- Add crt1-2.0.o for glibc 2.0 compatibility tests
- powerpc: Optimized strncmp for power10
- build-many-glibcs.py: Add openrisc hard float glibc variant
- or1k: Add hard float support
- or1k: Add hard float libm-test-ulps
- nscd: Use time_t for return type of addgetnetgrentX
- Add a test to check for duplicate definitions in the static library
- i686: Fix multiple definitions of __memmove_chk and __memset_chk
- i586: Fix multiple definitions of __memcpy_chk and __mempcpy_chk
- nscd: Typo inside comment in netgroup cache
2024-05-06 15:19:12 -04:00
Carlos O'Donell
79a3dc68ab Auto-sync with upstream master
Upstream commit: 91695ee4598b39d181ab8df579b888a8863c4cab

- Update License tag to match upstream.

- time: Allow later version licensing.
- hurd: Stop mapping AT_NO_AUTOMOUNT to O_NOTRANS
- libio: Sort test variables in Makefile
- AArch64: Remove unused defines of CPU names
- Make sure INSTALL is ASCII plaintext again
- x86: In ld.so, diagnose missing APX support in APX-only builds
- elf: Also compile dl-misc.os with $(rtld-early-cflags)
- CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two buffers in addgetnetgrentX (bug 31680)
- CVE-2024-33600: nscd: Avoid null pointer crashes after notfound response (bug 31678)
- CVE-2024-33600: nscd: Do not send missing not-found response in addgetnetgrentX (bug 31678)
- CVE-2024-33599: nscd: Stack-based buffer overflow in netgroup cache (bug 31677)
- i386: ulp update for SSE2 --disable-multi-arch configurations
2024-05-01 12:48:47 -04:00
Florian Weimer
207f40b766 Enable CPU compatibility diagnostics in ld.so (RHEL-31738) 2024-04-25 17:31:37 +02:00
Florian Weimer
d6a43c7f0a Auto-sync with upstream branch master
Upstream commit: 41903cb6f460d62ba6dd2f4883116e2a624ee6f8

- GLIBC-SA-2024-0004: add commit for 2.31 branch
- benchtests: Add difficult strstr needle for bruteforce algorithms
- x86: Define MINIMUM_X86_ISA_LEVEL in config.h [BZ #31676]
- LoongArch: Add glibc.cpu.hwcap support.
- nptl: Fix tst-cancel30 on kernels without ppoll_time64 support
2024-04-25 11:07:33 +02:00
Arjun Shankar
6b7878d77d Auto-sync with upstream branch master
Upstream commit: 16c8dfba14ff7596ad3aea941a240f8abcdc50e6

- Drop glibc-rh827510.patch, fixed differently upstream.

- Revert "Allow glibc to be compiled without EXEC_PAGESIZE"
- locale: Handle loading a missing locale twice (Bug 14247)
- elf: Do not check for loader mmap on tst-decorate-maps (BZ 31553)
- Use --enable-obsolete in build-many-glibcs.py for nios2-linux-gnu
- login: Use unsigned 32-bit types for seconds-since-epoch
- login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701)
- login: Check default sizes of structs utmp, utmpx, lastlog
- benchtests: Add random() benchmark
- advisories: Add Reported-By
- Fix 'Reported-By' to use Camel Case for commit 6a98f4640ea453f
- Document CVE-2024-2961
- iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961)
- elf/rtld: Count skipped environment variables for enable_secure
2024-04-23 11:18:01 +02:00
Florian Weimer
5a7908398e Update changelog 2024-04-22 11:50:05 +02:00