Commit Graph

1921 Commits

Author SHA1 Message Date
Martin Coufal
4720899564 CI Tests: disable Regression/bz863384-getaddrinfo-fails-to-return-FQDN-for-AF_INET-and-AF_INET6 on rhel10
* package perl-Net-DNS-Nameserver removed from rhel-10, test needs to be
  rewritten, disable for rhel10 until then
2024-04-26 13:11:40 +00: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
Tulio Magno Quites Machado Filho
09d1856f52 Enable power10 multilib
Co-authored-by: Florian Weimer <fweimer@redhat.com>
2024-04-14 17:11:20 +02:00
Tulio Magno Quites Machado Filho
34d1409178 Move the removal of multilibs to %pre 2024-04-14 17:11:20 +02:00
Florian Weimer
7749ea58a9 Hard-code ld.so paths for all architectures
This supports multiple ld.so files in a cleaner way.  Also
forward-port multiple libc.so.6 file handling in
wrap-find-debuginfo.sh from downstream.  This also incorporates
the “nm --format=posix“ change from #2115831 downstream.

Co-authored-by: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
2024-04-14 17:11:20 +02:00
Florian Weimer
0d17d18a88 Remove remnants of 32-bit Arm support 2024-04-14 17:11:20 +02:00
Florian Weimer
114492e2a8 Rewrite flags inheritance in Lua
And simplify the invocation of the build shell function.
2024-04-14 17:11:20 +02:00
Florian Weimer
7a3e1914e0 Auto-sync with upstream branch master
Upstream commit: 14e56bd4ce15ac2d1cc43f762eb2e6b83fec1afe

- powerpc: Fix ld.so address determination for PCREL mode (bug 31640)
- Revert "x86_64: Suppress false positive valgrind error"
- wcsmbs: Ensure wcstr worst-case linear execution time (BZ 23865)
- wcsmbs: Add test-wcsstr
- posix: Sync tempname with gnulib
- socket: Add new test for connect
- libsupport: Add xgetpeername
2024-04-14 17:09:50 +02:00
Patsy Griffin
b2452ec760 Auto-sync with upstream branch master
Upstream commit: 42e48e720c78ab75eb8def9e866da52b0ac278df

- nptl: Add tst-pthread-key1-static for BZ #21777
- elf: Add ld.so test with non-existing program name
- elf: Check objname before calling fatal_error
- Use crtbeginT.o and crtend.o for non-PIE static executables
- aarch64: Enhanced CPU diagnostics for ld.so
- x86: Add generic CPUID data dumper to ld.so --list-diagnostics
- elf: Add CPU iteration support for future use in ld.so diagnostics
- timezone: sync to TZDB 2024a
- Fix bsearch, qsort doc to match POSIX better
- x86-64: Exclude FMA4 IFUNC functions for -mapxf
- Reinstate generic features-time64.h
- Cleanup __tls_get_addr on alpha/microblaze localplt.data
- arm: Remove ld.so __tls_get_addr plt usage
- aarch64: Remove ld.so __tls_get_addr plt usage
- math: x86 trunc traps when FE_INEXACT is enabled (BZ 31603)
- math: x86 floor traps when FE_INEXACT is enabled (BZ 31601)
- math: x86 ceill traps when FE_INEXACT is enabled (BZ 31600)
- aarch64/fpu: Add vector variants of erfc
- aarch64/fpu: Add vector variants of tanh
- aarch64/fpu: Add vector variants of sinh
- aarch64/fpu: Add vector variants of atanh
- aarch64/fpu: Add vector variants of asinh
- aarch64/fpu: Add vector variants of acosh
- aarch64/fpu: Add vector variants of cosh
- aarch64/fpu: Add vector variants of erf
- misc: Add support for Linux uio.h RWF_NOAPPEND flag
- manual: significand() uses FLT_RADIX, not 2
- manual: Clarify return value of cbrt(3)
- manual: floor(log2(fabs(x))) has rounding errors
- manual: logb(x) is floor(log2(fabs(x)))
- powerpc: Add missing arch flags on rounding ifunc variants
- math: Reformat Makefile.
- Always define __USE_TIME_BITS64 when 64 bit time_t is used
- benchtests: Improve benchtests for strstr
- x86_64: Remove avx512 strstr implementation
- signal: Avoid system signal disposition to interfere with tests
2024-04-09 18:02:09 -04:00
Martin Coufal
86c3f272ad CI Tests: make Regression/ESTALE-error-message-translation-regression-from-RHEL7 rhel-10 compatible 2024-03-28 16:28:21 +01:00
DJ Delorie
b2dcb43f05 Auto-sync with upstream branch master
Upstream commit: 96d1b9ac2321b565f340ba8f3674597141e3450d

- RISC-V: Fix the static-PIE non-relocated object check
- htl: Implement some support for TLS_DTV_AT_TP
- htl: Respect GL(dl_stack_flags) when allocating stacks
- hurd: Use the RETURN_ADDRESS macro
- hurd: Disable Prefer_MAP_32BIT_EXEC on non-x86_64 for now
- Allow glibc to be compiled without EXEC_PAGESIZE
- hurd: Stop relying on VM_MAX_ADDRESS
- hurd: Move internal functions to internal header
- stdlib: Fix tst-makecontext2 log when swapcontext fails
- or1k: Add prctl wrapper to unwrap variadic args
- or1k: Only define fpu rouding and exceptions with hard-float
- or1k: Update libm test ulps
- AArch64: Check kernel version for SVE ifuncs
2024-03-26 13:51:42 -04:00
Florian Weimer
b102601d3e Auto-sync with upstream branch master
Upstream commit: 1ea051145612f199d8716ecdf78b084b00b5a727

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

-powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
- powerpc: Add HWCAP3/HWCAP4 data to TCB for Power Architecture.
- elf: Enable TLS descriptor tests on aarch64
- arm: Update _dl_tlsdesc_dynamic to preserve caller-saved registers (BZ 31372)
- Ignore undefined symbols for -mtls-dialect=gnu2
- Add tst-gnu2-tls2mod1 to test-internal-extras
- x86-64: Allocate state buffer space for RDI, RSI and RBX (#2269799)
- riscv: Update nofpu libm test ulps
- Add STATX_MNT_ID_UNIQUE from Linux 6.8 to bits/statx-generic.h
- linux: Use rseq area unconditionally in sched_getcpu (bug 31479)
- aarch64: fix check for SVE support in assembler
- Update kernel version to 6.8 in header constant tests
- Update syscall lists for Linux 6.8
- Use Linux 6.8 in build-many-glibcs.py
- powerpc: Remove power8 strcasestr optimization
- riscv: Fix alignment-ignorant memcpy implementation
- linux/sigsetops: fix type confusion (bug 31468)
- LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf
- duplocale: protect use of global locale (bug 23970)
2024-03-20 09:35:34 +01:00
Florian Weimer
136bbceed9 Global dynamic TLS access may clobber RBX (#2269799) 2024-03-16 15:38:14 +01:00
Florian Weimer
01911dc70e Do not generate ELF dependency information for glibc32 2024-03-15 09:07:24 +01:00
Joseph Myers
e025effd84 Build glibc32 binary package from glibc sources as part of x86_64 build
GCC for x86_64 includes 32-bit multilib support, requiring a 32-bit
glibc to be present when GCC is built.  That 32-bit glibc cannot come
from an i686 RPM because of limitations in Koji, so there is a hack
including a glibc32 "source" package that actually contains binaries
from an i686 build (and thus needs additional manual update steps).

Set up glibc.spec to build a glibc32 binary package directly when
building for x86_64, so avoiding the need for the separate glibc32
source package.  This improvement is tracked in
<https://fedoraproject.org/wiki/Changes/glibc32_Build_Adjustments> and
<https://bugzilla.redhat.com/show_bug.cgi?id=1598524>.

The list of files in the glibc32 package has been compared to that in
the previous package (the gnu/lib-names-32.h header is added, as its
previous omission appears to be a bug).  And the lists of files in the
other packages built from glibc.spec have also been compared before
and after this change, to make sure there aren't inappropriate changes
to those lists.
2024-03-14 15:40:51 +00:00
Sergey Kolosov
205275b675 CI Tests: makes tests/Regression/ESTALE-error-message-translation-regression-from-RHEL7 compatible with RHEL 2024-03-12 18:32:23 +01:00
Sergey Kolosov
9d961552f7 CI Tests: tests/Regression/bz2115831-glibc-missing-gnu-debuglink-section-in: disabled until the bug will be fixed 2024-03-06 14:57:01 +01:00
Sergey Kolosov
60e20f67b6 CI Tests: tests/Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries: set order to 1000 to avoid removing glibc-debuginfo package for other tests 2024-03-06 14:44:49 +01:00
Sergey Kolosov
4246727bc0 CI Tests: tests/Regression/bz2115831-glibc-missing-gnu-debuglink-section-in: fixes libc.so.6 search path 2024-03-05 11:43:40 +01:00
Sergey Kolosov
51fcca6292 CI Tests: tests/Regression/bz2115831-glibc-missing-gnu-debuglink-section-in: require glibc-debuginfo 2024-03-05 11:43:40 +01:00
Sergey Kolosov
c7aa4fc83f CI Tests: tests/Regression/bz2115831-glibc-missing-gnu-debuglink-section-in: adjust test for future RHEL versions 2024-03-05 11:43:40 +01:00
Sergey Kolosov
fa5d2d58b2 CI Tests: updates zh_CN translation for tests/Regression/ESTALE-error-message-translation-regression-from-RHEL7 2024-03-05 11:43:40 +01:00
Sergey Kolosov
71d41742d1 CI Tests: fix Fedora support for tests/Regression/bz2115831-glibc-missing-gnu-debuglink-section-in 2024-03-05 11:43:40 +01:00
Sergey Kolosov
b07a1b7660 CI Tests: test coverage improvement 2024-03-05 11:43:40 +01:00
Patsy Griffin
a084b04ccf Auto-sync with upstream branch master
Upstream commit: b6e3898194bbae78910bbe9cd086937014961e45

- x86-64: Simplify minimum ISA check ifdef conditional with if
- manual/tunables - Add entry for enable_secure tunable.
- NEWS: Move enable_secure_tunable from 2.39 to 2.40.
- riscv: Add and use alignment-ignorant memcpy
- riscv: Add ifunc helper method to hwprobe.h
- riscv: Enable multi-arg ifunc resolvers
- riscv: Add __riscv_hwprobe pointer to ifunc calls
- riscv: Add hwprobe vdso call support
- linux: Introduce INTERNAL_VSYSCALL
- riscv: Add Linux hwprobe syscall support
- rtld: Add glibc.rtld.enable_secure tunable.
- x86-64: Update _dl_tlsdesc_dynamic to preserve AMX registers
- x86_64: Suppress false positive valgrind error
- x86: Don't check XFD against /proc/cpuinfo
- x86-64: Don't use SSE resolvers for ISA level 3 or above
- x86: Update _dl_tlsdesc_dynamic to preserve caller-saved registers
- sysdeps/unix/sysv/linux/x86_64/Makefile: Add the end marker
- cdefs: Drop access attribute for _FORTIFY_SOURCE=3 (BZ #31383)
- s390: Improve static-pie configure tests
- x86: Change ENQCMD test to CHECK_FEATURE_PRESENT
- debug: Improve mqueue.h fortify warnings with clang
- debug: Improve fcntl.h fortify warnings with clang
- wcsmbs: Improve fortify with clang
- syslog: Improve fortify with clang
- socket: Improve fortify with clang
- unistd: Improve fortify with clang
- stdlib: Improve fortify with clang
- string: Improve fortify with clang
- libio: Improve fortify with clang
- cdefs.h: Add clang fortify directives
- Update SHARED-FILES and license for Unicode 15.1.0.
- aarch64/fpu: Sync libmvec routines from 2.39 and before with AOR
- S390: Do not clobber r7 in clone [BZ #31402]
- x86_64: Exclude SSE, AVX and FMA4 variants in libm multiarch
- hurd: Reformat Makefile.
- htl/tests: Reformat Makefile.
- htl: Reformat Makefile.
- hesiod: Reformat Makefile.
- gmon: Reformat Makefile.
- dlfcn: Reformat Makefile.
- dirent: Reformat Makefile.
- ctype: Reformat Makefile.
- csu: Reformat Makefile.
- conform: Reformat Makefile.
- Support compiling .S files with additional options
- x86-64: Save APX registers in ld.so trampoline
- benchtests: Add more benchtests for rounding functions.
- tests: gracefully handle AppArmor userns containment
- treewide: python-scripts: use `is None` for none-equality
- powerpc: Remove power7 strstr optimization
- arm: Use _dl_find_object on __gnu_Unwind_Find_exidx (BZ 31405)
- math: Update mips64 ulps
2024-03-04 10:36:20 -05:00
Martin Coufal
51c6ed86e2 CI tests: fix Regression/bz1661513-glibc-Adjust-to-rpms-find-debuginfo-sh-changes-to-keep-stripping-binaries
Destination (name) of ld.so symlink can change and assert fails. Use
readlink to get proper filename to be checked.
2024-02-28 09:55:29 +01:00
Arjun Shankar
1061be84f7 Migrate License field to SPDX identifiers (#2222074)
This commit (a) expands on and corrects some errors in the long
comment describing various licenses used in glibc preceding the
License field; and (b) migrates the License field to SPDX identifiers
based on an analysis of glibc-2.39 sources done using the ScanCode
toolkit.

Licenses Allowed in Fedora:
https://docs.fedoraproject.org/en-US/legal/allowed-licenses

Adoption of SPDX in Fedora:
https://docs.fedoraproject.org/en-US/legal/update-existing-packages

Repository of Fedora License Data:
https://gitlab.com/fedora/legal/fedora-license-data

ScanCode toolkit:
https://github.com/nexB/scancode-toolkit
2024-02-27 18:56:04 +01:00
Arjun Shankar
dc38b4582d Correct a past changelog entry 2024-02-26 22:38:05 +01:00
DJ Delorie
f58422e787 Auto-sync with upstream branch master
Upstream commit: b881f1efcd1b30c2afab3599b41ce9cd4864c823

- elf: Add new LoongArch reloc types (110 to 126) into elf.h
- build-many-glibcs.py: Add s390 --disable-multi-arch / multi-arch configurations.
- sparc: Treat the version field in the FPU control word as reserved
- Implement setcontext/getcontext/makecontext/swapcontext for Hurd x86_64
- Use proc_getchildren_rusage when available in getrusage and times.
- Linux: Switch back to assembly syscall wrapper for prctl (bug 29770)
- i386: Use generic memrchr in libc (bug 31316)
2024-02-22 13:27:32 -05:00
Carlos O'Donell
f7655efa95 Auto-sync with upstream branch master
Upstream commit: ef7f4b1fef67430a8f3cfc77fa6aada2add851d7

- Apply the Makefile sorting fix
- sysdeps/x86_64/Makefile (tests): Add the end marker
- sort-makefile-lines.py: Allow '_' in name and "^# name"
- trivial doc fix: remove weird phrase "syscall takes zero to five arguments"
- mips: Use builtins for ffs and ffsll
- x86: Expand the comment on when REP STOSB is used on memset
- x86: Do not prefer ERMS for memset on Zen3+
- x86: Fix Zen3/Zen4 ERMS selection (BZ 30994)
- x86/cet: fix shadow stack test scripts
- test_printers_common.py: Remove invalid escape sequence
- elf: Remove attempt at env handling in elf/tst-rtld-list-diagnostics.py
- Add SOL_VSOCK from Linux 6.7 to bits/socket.h
- localedata: ssy_ER: Fix syntax error
- localedata: hr_HR: change currency to EUR/€
- Change lv_LV collation to agree with the recent change in CLDR
- Add new AArch64 HWCAP2 definitions from Linux 6.7 to bits/hwcap.h
- string: Add hidden builtin definition for __strcpy_chk.
- arm: Remove wrong ldr from _dl_start_user (BZ 31339)
- LoongArch: Use builtins for ffs and ffsll
- Remove sysdeps/ia64/math-use-builtins-ffs.h
- Fix stringop-overflow warning in tst-strlcat2.
- mips: FIx clone3 implementation (BZ 31325)
- stdlib: fix qsort example in manual
- soft-fp: Add brain format support
- Rename c2x / gnu2x tests to c23 / gnu23
- manual: Fix up stdbit.texi
- string: Use builtins for ffs and ffsll
- misc: tst-poll: Proper synchronize with child before sending the signal
- math: Remove bogus math implementations
- Refer to C23 in place of C2X in glibc
- elf: Remove _dl_sysdep_open_object hook function
- build-many-glibcs: relax version check to allow non-digit characters
- Use gcc __builtin_stdc_* builtins in stdbit.h if possible
- Open master branch for glibc 2.40 development
2024-02-15 18:30:01 -05:00
Florian Weimer
797647f2a8 Ignore symbolic links to . in sysroot construction 2024-02-07 09:24:40 +01:00
Carlos O'Donell
385a689f17 Switch to upstream 2.39 release
Upstream commit: ef321e23c20eebc6d6fb4044425c00e6df27b05f

- Document CVE-2023-6246, CVE-2023-6779, and CVE-2023-6780
- Update advisory format and introduce some automation
- manual/io: Fix swapped reading and writing phrase.
- Fix typo
- S390: Fix building with --disable-mutli-arch [BZ #31196]
- NEWS: insert advisories and fixed bugs for 2.39
- contrib.texi: update
- INSTALL, install.texi: minor updates, regenerate
- libc.pot: regenerate
- version.h, include/features.h: Bump version to 2.39
- Create ChangeLog.old/ChangeLog.28
2024-02-06 17:46:04 -05:00
Martin Coufal
7ce2803ac6 CI Test: fix /tests/Regression/bz488748-inet6-opt-init-sets-incorrect-header-len
* add '-D_GNU_SOURCE' to compilation as 'inet6_opt_init' is a GNU
  extension
2024-02-02 14:30:22 +00:00
Martin Coufal
ea742f068a CI Tests: fix /tests/Standardscompliance/bz531160-ldd-Vulnerable-to-Social-Engineering-Exploits
* include 'unistd.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
cace4f829d CI Tests: fix /tests/Sanity/basic-linking-sanity
* use 'fclose'
* add missing includes
2024-02-02 14:30:22 +00:00
Martin Coufal
82e9f5dfc6 CI Tests: fix /tests/Regression/double_free_exploit
* add missing casts to int
* add missing includes
2024-02-02 14:30:22 +00:00
Martin Coufal
9b8bc360e1 CI Tests: fix /tests/Regression/bz827362-RHEL6-2-ftell-after-fseek-moves-the-offset-on-a
* include 'wchar.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
306c1b65fa CI Tests: fix /tests/Regression/bz600457-locally-defined-symbol-resolving-failure
* add includes
2024-02-02 14:30:22 +00:00
Martin Coufal
9ba57dfb0e CI Tests: fix /tests/Regression/bz549813-dl-close-race-with-C-destructor
* include 'unistd.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
ec13b9b33e CI Tests: fix /tests/Regression/bz529997-sem_timedwait-with-invalid-time
* include 'unistd.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
d1b1cc9c26 CI Tests: fix Regression/bz455360-RHEL4-vfprintf-call-goes-into-recursive
* add 'gcc' to required packages
* include 'unistd.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
3eb443a2d1 CI Tests: fix Regression/bz1563046-getlogin-r-return-early-when-linux-sentinel-value
* add gcc to required packages
* include 'unistd.h'
2024-02-02 14:30:22 +00:00
Martin Coufal
1b6496d171 CI Tests: add Regression/bz1577212-glibc-Remove-stray-Sun-RPC-exports
test
2024-02-02 14:30:22 +00:00
Martin Coufal
53a0744ff2 CI Tests: add
Regression/bz1430477-glibc-Missing-else-branch-in-libc-calloc test
2024-02-02 14:30:22 +00:00
Florian Weimer
0bd93c5697 Add noarch sysroot subpackages
Exclude the /sys-root/ tree in various places and prevent
debuginfo extract and dependency generation.

Forward-port of the feature from Fedora 35, with subsequent fixes:
Add kernel header files, and do not use = in linker scripts.
2024-01-31 17:27:51 +01:00
Patsy Griffin
23dbf2db00 Auto-sync with upstream branch master
Upstream commit: ddf542da94caf97ff43cc2875c88749880b7259b

- syslog: Fix integer overflow in __vsyslog_internal (CVE-2023-6780)
- syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6779)
- syslog: Fix heap buffer overflow in __vsyslog_internal (CVE-2023-6246)
- Use binutils 2.42 branch in build-many-glibcs.py
- elf: correct relocation statistics for !ELF_MACHINE_START_ADDRESS
2024-01-30 13:18:43 -05:00
Arjun Shankar
9a84f6d280 Auto-sync with upstream branch master
Upstream commit: ae49a7b29acc184b03c2a6bd6ac01b5e08efd54f

- Relicense IBM portions of resolv/base64.c resolv/res_debug.c.
- localedata: Use consistent values for grouping and mon_grouping
- manual: fix order of arguments of memalign and aligned_alloc (Bug 27547)
2024-01-29 15:10:24 +01:00