Commit Graph

1701 Commits

Author SHA1 Message Date
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
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
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
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
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
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
Jens Petersen
0d0f91a2e8 no longer supplement langpacks if all-langpacks installed 2024-01-25 17:33:00 +08:00
Florian Weimer
1f97fe5ae0 Auto-sync with upstream branch master
Upstream commit: 486452affbac684db739b7fcca1e84e8a7ce33d1

- Add crh_RU, gbm_IN, ssy_ER locales.

- manual, NEWS: Document malloc side effect of dynamic TLS changes
- NEWS: Update temporary files ignored by ldconfig
- po: Incorporate translations (sr)
- string: Disable stack protector for memset in early static initialization
- qsort: Fix a typo causing unnecessary malloc/free (BZ 31276)
- riscv: add support for static PIE
- localedata: renamed:    aa_ER@saaho -> ssy_ER
- Define ISO 639-3 "ssy" (Saho)
- localedata: add crh_RU, Crimean Tartar language in the Cyrillic script as used in Russia.
- localedata: tr_TR, ku_TR: Sync with CLDR: “Turkey” -> “Türkiye”
- localedata: miq_NI: Shorten month names in abmon
- Update kernel version to 6.7 in header constant tests
- localedata: add gbm_IN locale
- Define ISO 639-3 "gbm" (Garhwali)
- Update syscall lists for Linux 6.7
- stdlib: Remove unused is_aligned function from qsort.c
2024-01-24 14:55:14 +01:00
Fedora Release Engineering
b11c9771f7 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-19 22:32:17 +00:00
DJ Delorie
0239af7b6c Auto-sync with upstream branch master
Upstream commit: e2803cfd8bb00b54816d1a2c381d2cf82b136da6

- NEWS: Mention PLT rewrite on x86-64
- stdlib: Verify heapsort for two-element cases
- stdlib: Fix heapsort for cases with exactly two elements
- localedata: anp_IN: Fix abbreviated month names
2024-01-16 17:12:40 -05:00
DJ Delorie
9aa434eb3f Auto-sync with upstream branch master
Upstream commit: 709fbd3ec3595f2d1076b4fec09a739327459288

- stdlib: Reinstate stable mergesort implementation on qsort
- x86-64: Check if mprotect works before rewriting PLT
- aarch64: Add NEWS entry about libmvec for 2.39
2024-01-15 17:54:52 -05:00
Carlos O'Donell
5c2b7dda4c Auto-sync with upstream branch master
- Add new locales for kv_RU, su_ID, tok, and zgh_MA.
- Drop glibc-rh2255506.patch; fix applied upstream.
- Enable Intel CET only on x86_64.

Upstream commit: 064c708c78cc2a6b5802dce73108fc0c1c6bfc80

- localedata/unicode-gen/utf8_gen.py: fix Hangul syllable name
- x86_64: Optimize ffsll function code size.
- localedata: Remove redundant comments
- RISC-V: Enable static-pie.
- linux: Fix fstat64 on alpha and sparc64
- math: remove exp10 wrappers
- Benchtests: Increase benchmark iterations
- debug/getwd_chk.c: warning should be emitted for the __getwd_chk symbol.
- Make __getrandom_nocancel set errno and add a _nostatus version
- x86-64/cet: Make CET feature check specific to Linux/x86
- Incorporate translations (zh_CN)
- Define ISO 639-3 "glk" (Gilaki)
- resolv: Fix endless loop in __res_context_query
- localedata: revert all the remaining locale sources to UTF-8
- localedata: am_ET ber_DZ en_GB en_PH en_US fil_PH kab_DZ om_ET om_KE ti_ET tl_PH: convert to UTF-8
- localedata: resolve cyclic dependencies
- localedata: kv_RU: convert to UTF-8
- localedata: add new locale kv_RU
- elf: Fix tst-nodeps2 test failure.
- localedata: Sort Makefile variables.
- locale: Sort Makefile variables.
- i386: Remove CET support bits
- x86-64/cet: Move check-cet.awk to x86_64
- x86-64/cet: Move dl-cet.[ch] to x86_64 directories
- x86: Move x86-64 shadow stack startup codes
- Fix deprecated utcnow() usage in build-many-glibcs.py
- Fix invalid escape sequence in build-many-glibcs.py
- math: Fix test-fenv.c feupdateenv tests
- Remove installed header rule on $(..)include/%.h
- i386: Fail if configured with --enable-cet
- i386: Remove CET support
- x86: Move CET infrastructure to x86_64
- localedata: su_ID: make lang_name agree with CLDR
- localedata: add new locale su_ID
- localedata: add new locale zgh_MA
- INSTALL: regenerate
- localedata: add tok/UTF-8 to SUPPORTED
- localedata: tok: add yY and nN to yesexpr and noexpr
- localedata: tok: convert to UTF-8
- localedata: add data for tok (Toki Pona)
- Remove ia64-linux-gnu
- localedata: dz_BT, bo_CN: convert to UTF-8
- localedata: dz_BT, bo_CN: Fix spelling of "phur bu" in both Tibetan and Dzongkha
- localedata: bo_CN: Fix spelling errors in Tibetan data
- localedata: bo_CN: Fix incomplete edit in Tibetan yesexpr
- localedata: dz_BT: Fix spelling errors in Dzongha data
- localedata: unicode-gen: Remove redundant \s* from regexp, fix comments
- localedata: convert the remaining *_RU locales to UTF-8
- Incorporate translations
- x32: Handle displacement overflow in PLT rewrite [BZ #31218]
- x86: Fixup some nits in longjmp asm implementation
- stdlib: Fix stdbit.h with -Wconversion for clang
- stdlib: Fix stdbit.h with -Wconversion for older gcc
- elf: Add ELF_DYNAMIC_AFTER_RELOC to rewrite PLT
- aarch64: Make cpu-features definitions not Linux-specific
- hurd: Initializy _dl_pagesize early in static builds
- hurd: Only init early static TLS if it's used to store stack or pointer guards
- hurd: Make init-first.c no longer x86-specific
- hurd: Drop x86-specific assembly from init-first.c
- hurd: Pass the data pointer to _hurd_stack_setup explicitly
- x86-64/cet: Check the restore token in longjmp
- localedata: ru_RU, ru_UA: convert to UTF-8
- localedata: es_??: convert to UTF-8
- localedata: miq_NI: convert to UTF-8
- i386: Ignore --enable-cet
- mach: Drop SNARF_ARGS macro
- mach: Drop some unnecessary vm_param.h includes
- hurd: Declare _hurd_intr_rpc_msg* with protected visibility
- hurd: Add some missing includes
- localedata: fy_DE: make this "Western Frisian" to agree with the language code "fy"
- localedata: fy_DE, fy_NL: convert to UTF-8
- localedata: ast_ES: convert to UTF-8
- localedata: ast_ES: Remove wrong copyright text
- localedata: de_{AT,BE,CH,IT,LU}: convert to UTF-8
- localedata: lv_LV, it_IT, it_CH: convert to UTF-8
- localedata: it_IT, lv_LV: currency symbol should follow the amount
- Implement C23 <stdbit.h>
- localedata: ms_MY should not use 12-hour format
- localedata: es_ES: convert to UTF-8
- localedata: es_ES: Add am_pm strings
- aarch64: Add longjmp test for SME
- aarch64: Add setcontext support for SME
- aarch64: Add longjmp support for SME
- aarch64: Add SME runtime support
- localedata: convert uz_UZ and uz_UZ@cyrillic to UTF-8
- localedata: uz_UZ and uz_UZ@cyrillic: Fix decimal point and thousands separator
- libio: Check remaining buffer size in _IO_wdo_write (bug 31183)
- getaddrinfo: translate ENOMEM to EAI_MEMORY (bug 31163)
- string: Add additional output in test-strchr failure
- Add a setjmp/longjmp test between user contexts
- x86/cet: Add -fcf-protection=none before -fcf-protection=branch
- Regenerate libc.pot
- Omit regex.c pragmas no longer needed
- Update copyright dates not handled by scripts/update-copyrights
- Update copyright in generated files by running "make"
- Update copyright dates with scripts/update-copyrights
- x86/cet: Run some CET tests with shadow stack
- x86/cet: Don't set CET active by default
- x86/cet: Check feature_1 in TCB for active IBT and SHSTK
- x86/cet: Enable shadow stack during startup
- elf: Always provide _dl_get_dl_main_map in libc.a
- x86/cet: Sync with Linux kernel 6.6 shadow stack interface
- RISC-V: Add support for dl_runtime_profile (BZ #31151)
- debug: Add fortify wprintf tests
- debug: Add fortify syslog tests
- debug: Add fortify dprintf tests
- debug: Increase tst-fortify checks for compiler without __va_arg_pack support
- debug: Adapt fortify tests to libsupport
- localedata: yo_NT: remove redundant comments
- localedata: convert en_AU, en_NZ, mi_NZ, niu_NZ to UTF-8
- localedata: First day of the week in AU is Monday, LC_TIME in en_NZ is identical to LC_TIME in en_AU then
- localedata: convert yo_NG to UTF-8, check that language name in Yoruba agrees with CLDR
- x86-64: Fix the tcb field load for x32 [BZ #31185]
- x86-64: Fix the dtv field load for x32 [BZ #31184]
2024-01-15 08:15:54 -05:00
Florian Weimer
d6f60005eb Infinite loop in res_mkquery with malformed domain name (#2255506) 2024-01-03 16:42:48 +01:00