Commit Graph

1990 Commits

Author SHA1 Message Date
Eduard Abdullin
49b3f84f7c Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-08-12 01:41:12 +00:00
Frédéric Bérat
46a31fdf25 Updated glibc to support Linux 6.15 kernel system calls and constants.
- Backport: Update syscall lists for Linux 6.8
- Backport: Update kernel version to 6.8 in header constant tests
- Backport: Update syscall lists for Linux 6.9
- Backport: Update PIDFD_* constants for Linux 6.9
- Backport: Update kernel version to 6.9 in header constant tests
- Backport: linux: add definitions for hugetlb page size encodings
- Backport: Update syscall lists for Linux 6.10
- Backport: Update kernel version to 6.10 in header constant tests
- Backport: Linux: Add missing scheduler constants to <sched.h>
- Backport: Update syscall lists for Linux 6.11
- Backport: Update PIDFD_* constants for Linux 6.11
- Backport: linux: Add MAP_DROPPABLE from Linux 6.11
- Backport: Update kernel version to 6.11 in header constant tests
- Backport: Update syscall lists for Linux 6.12
- Backport: Update kernel version to 6.12 in header constant tests
- Backport: Add SCHED_EXT from Linux 6.12 to bits/sched.h
- Backport: Update syscall lists for Linux 6.13
- Backport: Update kernel version to 6.13 in header constant tests
- Backport: Update syscall lists for Linux 6.14
- Backport: Update syscall lists for Linux 6.15

Resolves: RHEL-107695
2025-08-08 10:42:54 +02:00
Frédéric Bérat
22e43fce78 Fix changelog for RHEL-58357
The changelog didn't meet the standard.

Related: RHEL-58357
2025-08-08 10:17:26 +02:00
Eduard Abdullin
f4a9441531 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-08-08 01:34:55 +00:00
Frédéric Bérat
f8b71945b7 Added sched_setattr and sched_getattr functions to glibc.
- Backport: stdlib: Do not use GLIBC_PRIVATE ABI for errno in libc_nonshared.a
- Backport: manual: Extract the @manpageurl{func,sec} macro
- Backport: Linux: Add the sched_setattr and sched_getattr functions
  Note: The patch has been adapted downstream to avoid ABI changes
- Backport: Linux: Add missing scheduler constants to <sched.h>
- Backport: Linux: Do not check unused bytes after sched_getattr in tst-sched_setattr
- Backport: Linux: Add the pthread_gettid_np function (bug 27880)
  Note: The patch has been adapted downstream to avoid ABI changes
- Backport: Linux: Remove attribute access from sched_getattr (bug 32781)
- Backport: Linux: Add new test misc/tst-sched_setattr-thread
- Backport: nptl: Include <stdbool.h> in tst-pthread_gettid_np.c
- Backport: Makefile: Clean up pthread_atfork integration
- Backport: manual: fix typo for sched_[sg]etattr

Resolves: RHEL-58357
2025-08-07 16:07:09 +02:00
Frédéric Bérat
5a17d40420 Enhanced glibc documentation for core descriptor APIs.
- Backport: manual: add dup3
- Backport: manual: add syscalls
- Adapt man pages version downstream

Resolves: RHEL-107861
2025-08-07 14:24:15 +02:00
Eduard Abdullin
e8277f2064 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-08-07 01:35:21 +00:00
Arjun Shankar
5e0f6b30b8 Improve test coverage (RHEL-106562)
Resolves: RHEL-106562
2025-08-06 15:02:01 +02:00
Eduard Abdullin
837373cb30 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-08-06 01:36:33 +00:00
Florian Weimer
0d5bc43414 x86_64, aarch64: More CPU output in ld.so --list-diagnostics (RHEL-107540)
Resolves: RHEL-107540
2025-08-05 16:30:24 +02:00
Frédéric Bérat
3dd56eab8d Add support for new IBM Z17 hardware capabilities
- Backport: S390: Add new s390 platform z17.
- Add downstream patch for legacy hwcap/platform mechanism
- Acknowledge `struct cpu_features` layout change: the size of the
  structure didn't change, members where renamed.

Resolves: RHEL-72564
2025-08-04 14:22:06 +02:00
Eduard Abdullin
cb2332351e Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-08-02 01:33:20 +00:00
Frédéric Bérat
edbaed16b1 test: Add ld.so ABI layout verification
Introduce `verify-ldso-abi.sh` script and architecture-specific baseline
files to the build.

This new verification step is integrated into the `%check` phase of the
glibc build process. It uses `gdb` to dump the internal ABI layout of
critical dynamic linker data structures (`_rtld_global_ro`,
`_rtld_global`, `struct link_map`, `struct pthread`) and compares them
against a predefined baseline.

This ensures that unintentional ABI breaks in `ld.so` are detected
early, maintaining stability for internal glibc components. The script
also supports generating new baselines when changes are intentional.

Resolves: RHEL-72564
2025-07-31 16:29:47 +02:00
Eduard Abdullin
a44e4c4cac Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-07-29 17:14:50 +00:00
Florian Weimer
7c2d760e4f CVE-2025-8058: Double free in regcomp (RHEL-105324)
Resolves: RHEL-105324
2025-07-24 20:26:33 +02:00
Florian Weimer
cac5195e9e Reduce spurious rebuilds while running tests (RHEL-95246)
Resolves: RHEL-95246
2025-07-24 13:25:18 +02:00
Florian Weimer
e8f76ede2b iconv: Do not create executable output files (RHEL-104151)
Resolves: RHEL-104151
2025-07-23 17:07:28 +02:00
Eduard Abdullin
5388cdfac0 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-07-10 01:36:10 +00:00
Florian Weimer
4e827a476b Rebuild due to SIGNSERVER-1997 (RHEL-102555)
Resolves: RHEL-102555
2025-07-09 11:27:43 +02:00
Eduard Abdullin
481a95e1b5 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-07-05 01:33:24 +00:00
Florian Weimer
392c65a97d Restore _rtld_global_layout on x86-64, freeze tunables order (RHEL-101754)
Resolves: RHEL-101754
2025-07-03 18:14:49 +02:00
Eduard Abdullin
7525f08177 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-07-02 01:35:21 +00:00
Florian Weimer
8e16d819de Downstream ABI adjustment for pthread_cond_t (RHEL-82285)
Resolves: RHEL-82285
2025-07-01 14:21:47 +02:00
Arjun Shankar
70ebc1f0c6 Sync with upstream branch release/2.39/master (RHEL-87416)
Upstream commit: cff1042cceec3502269947e96cf7023451af22f3

Resolves: RHEL-87416

Resolves: RHEL-71923
Resolves: RHEL-82285
Resolves: RHEL-82286
Resolves: RHEL-84837
Resolves: RHEL-86433
Resolves: RHEL-95485
2025-07-01 11:39:21 +02:00
Martin Coufal
55a8279a3b tests/Regression/bz863384-getaddrinfo-fails-to-return-FQDN-for-AF_INET-and-AF_INET6: update relevancy 2025-06-19 13:30:21 +02:00
Eduard Abdullin
ffaf184ca8 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-06-18 01:33:07 +00:00
Florian Weimer
369f3972b7 langpacks: Use symlinks for LC_NAME, LC_NUMERIC files if possible (RHEL-97433)
Resolves: RHEL-97433
2025-06-17 13:51:26 +02:00
Eduard Abdullin
77d592e1a7 Overwrite target for x86_64_v2
Add /usr/lib64/lp64d to ricv64
2025-05-07 01:38:10 +00:00
Andrea Bolognani
64d489ff04 Update riscv64 handling
The /usr/lib64/lp64d symlink is part of the filesystem package
starting with version 3.18-39, so we no longer need (or want)
to handle it here. This means that we can drop all existing
symlink handling and replace it with a file move operation.

Thanks: David Abdurachmanov <davidlt@rivosinc.com>
Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2025-04-18 15:15:24 +02:00
Eduard Abdullin
17af3daff4 Overwrite target for x86_64_v2 2025-02-11 13:13:25 +03:00
Eduard Abdullin
7005c9e39e Overwrite target for x86_64_v2
Apply patch from upstream BZ #32470
2025-02-11 11:07:31 +03:00
Florian Weimer
2fac143e74 setenv: Rework free(environ) compatibility support (#2341908)
Resolves: RHEL-75809
2025-01-24 23:16:09 +01:00
Florian Weimer
b76546a663 CVE-2025-0577: vDSO getrandom predictable randomness after fork (RHEL-75555)
Resolves: RHEL-75555
2025-01-23 22:35:42 +01:00
Florian Weimer
95d5cf3a67 Restore compatibility with environ/malloc usage pattern (RHEL-75809) 2025-01-23 21:17:23 +01:00
Florian Weimer
7e7241f620 Sync with upstream branch release/2.39/master (CVE-2025-0395)
Upstream commit: 808a84a8b81468b517a4d721fdc62069cb8c211f

- Fix underallocation of abort_msg_s struct (CVE-2025-0395)
- x86/string: Fixup alignment of main loop in str{n}cmp-evex [BZ #32212]
- x86: Improve large memset perf with non-temporal stores [RHEL-29312]
- x86: Avoid integer truncation with large cache sizes (bug 32470)
- math: Exclude internal math symbols for tests [BZ #32414]
- malloc: add indirection for malloc(-like) functions in tests [BZ #32366]
- Pass -nostdlib -nostartfiles together with -r [BZ #31753]
- nptl: initialize cpu_id_start prior to rseq registration
- nptl: initialize rseq area prior to registration
2025-01-23 09:08:39 +01:00
eabdullin
b1dc97bdda Merge branch 'c10s' into a10s 2025-01-08 12:22:40 +03:00
Florian Weimer
071446cc90 Support in-place file conversion in the iconv tool (RHEL-71530) 2024-12-23 14:59:23 +01:00
f01ffa82fe Merge pull request 'Backport patch from upstream BZ #32470' (#4) from metalefty/glibc:a10s into a10s
Reviewed-on: #4
2024-12-23 08:53:11 +00:00
6165f2d6a0 Backport patch from upstream BZ #32470 2024-12-23 15:15:01 +09:00
Florian Weimer
f0a7516eb0 Make getenv thread-safe in more cases (RHEL-42410) 2024-12-16 19:32:20 +01:00
Bruno Goncalves
b7ddd38a92 add gating on kernel tests for rhel-10
Related: RHELMISC-7545
2024-12-16 17:26:35 +00:00
Florian Weimer
6440988290 Minor update to getrandom vDSO handshake 2024-12-15 17:30:28 +01:00
Florian Weimer
308f336d61 CVE-2024-12455: Incorrect getrandom return value on ppc64le 2024-12-11 19:57:07 +01:00
04a3c0d8b9 Merge tag 'imports/c10s/glibc-2.39-23.el10' into a10s 2024-12-06 15:30:41 +03:00
f4602d2393 - Revert: x86: Fix Zen3/Zen4 ERMS selection 2024-12-03 17:34:31 +03:00
Arjun Shankar
2a30b8f4b2 Sync with upstream branch release/2.39/master
Upstream commit: dcaf51b41e259387602774829c45222d0507f90a

- elf: Change ldconfig auxcache magic number (bug 32231)
- Make tst-strtod-underflow type-generic
- Add crt1-2.0.o for glibc 2.0 compatibility tests
- Add tests of more strtod special cases
- Add more tests of strtod end pointer
- Make tst-strtod2 and tst-strtod5 type-generic
- powerpc64le: Build new strtod tests with long double ABI flags (bug 32145)
- Do not set errno for overflowing NaN payload in strtod/nan (bug 32045)
- Improve NaN payload testing
- Make __strtod_internal tests type-generic
- Fix strtod subnormal rounding (bug 30220)
- More thoroughly test underflow / errno in tst-strtod-round
- Test errno setting on strtod overflow in tst-strtod-round
- Add tests of fread
- stdio-common: Add new test for fdopen
- libio: Attempt wide backup free only for non-legacy code
- debug: Fix read error handling in pcprofiledump
- elf: Fix tst-dlopen-tlsreinit1.out test dependency
- elf: Avoid re-initializing already allocated TLS in dlopen (bug 31717)
- elf: Clarify and invert second argument of _dl_allocate_tls_init
- elf: Support recursive use of dynamic TLS in interposed malloc
- nptl: Use <support/check.h> facilities in tst-setuid3
- posix: Use <support/check.h> facilities in tst-truncate and tst-truncate64
- ungetc: Fix backup buffer leak on program exit [BZ #27821]
- ungetc: Fix uninitialized read when putting into unused streams [BZ #27821]
- Make tst-ungetc use libsupport
- stdio-common: Add test for vfscanf with matches longer than INT_MAX [BZ #27650]
- support: Add FAIL test failure helper
- string: strerror, strsignal cannot use buffer after dlmopen (bug 32026)
- Define __libc_initial for the static libc
- x86: Fix bug in strchrnul-evex512 [BZ #32078]
- Adjust check-local-headers test for libaudit 4.0
- x32/cet: Support shadow stack during startup for Linux 6.10
- x86-64: Remove sysdeps/x86_64/x32/dl-machine.h
- support: Add options list terminator to the test driver
- manual/stdio: Further clarify putc, putwc, getc, and getwc
- Fix name space violation in fortify wrappers (bug 32052)
- 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

Resolves: RHEL-57776
Resolves: RHEL-57777
Resolves: RHEL-61392
2024-11-20 17:12:17 +01:00
Arjun Shankar
107e77d871 Add support for getrandom vDSO (RHEL-12867) 2024-11-15 14:12:38 +01:00
Florian Weimer
dcd95b1bb8 Eliminate glibc-headers and related packages
The headers are identical except for <gnu/lib-names-*.h> and
<gnu/stubs-*.h>, which are specific to the arch-full glibc-devel
packages.

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.

(This version of this change preserves the glibc-devel.x86_64
contents.)
2024-11-06 14:12:56 +01:00
Florian Weimer
33b0330cd6 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-11-05 13:57:28 +01:00
Florian Weimer
2adb452981 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-11-04 15:02:33 +01:00