Upstream commit: f278835f594740f5913001430641cf1da4878670
- Drop glibc-deprecated-selinux-makedb.patch. Upstream has been ported
to new libselinux.
- makedb: fix build with libselinux >= 3.1 (Bug 26233)
- tst-sprintf-errno: Update Hurd message output
- Use C11 atomics instead of atomic_decrement(_val)
- Use C11 atomics instead atomic_add(_zero)
- mktime: improve heuristic for ca-1986 Indiana DST
- Assume HAVE_TZSET in time/mktime.c
- elf: Fix hwcaps string size overestimation
- errlist: add missing entry for EDEADLOCK (bug 29545)
- Do not define static_assert or thread_local in headers for C2x
- malloc: Use C11 atomics rather than atomic_exchange_and_add
- Add NEWS entry for CVE-2022-39046
- elf: Rename _dl_sort_maps parameter from skip to force_first
- scripts/dso-ordering-test.py: Generate program run-time dependencies
- math: x86: Use prefix for FP_INIT_ROUNDMODE
- scripts/build-many-glibcs.py: Use https:// for sourceware.org Git clones
- debug: test for more required cacellation points (BZ# 29274)
- elf.h: Remove duplicate definition of VER_FLG_WEAK
- syslog: Remove extra whitespace between timestamp and message (BZ#29544)
- LoongArch: Add soft float support.
- elf: Restore how vDSO dependency is printed with LD_TRACE_LOADED_OBJECTS (BZ #29539)
- nptl: x86_64: Use same code for CURRENT_STACK_FRAME and stackinfo_get_sp
This commit fixes wrap-find-debuginfo.sh so that:
* the .gnu_debuglink section of libc.so.6 is retained, and
* the redundant debuginfo file generated for ld.so is removed
Co-Authored-By: Benjamin Herrenschmidt <benh@amazon.com>
Reviewed-by: Florian Weimer <fweimer@redhat.com>
Upstream commit: c7509d49c4e8fa494120c5ead21338559dad16f5
- Apply asm redirections in wchar.h before first use
- resolv: Fix building tst-resolv-invalid-cname for earlier C standards
- syslog: Fix large messages (BZ#29536)
- posix: Fix macro expansion producing 'defined' has undefined behavior
- stdlib: Fix macro expansion producing 'defined' has undefined behavior
- S390: Always use svc 0
- nss_dns: Rewrite _nss_dns_gethostbyname4_r using current interfaces
- resolv: Add new tst-resolv-invalid-cname
- nss_dns: In gaih_getanswer_slice, skip strange aliases (bug 12154)
- nss_dns: Rewrite getanswer_r to match getanswer_ptr (bug 12154, bug 29305)
- nss_dns: Remove remnants of IPv6 address mapping
- nss_dns: Rewrite _nss_dns_gethostbyaddr2_r and getanswer_ptr
- nss_dns: Split getanswer_ptr from getanswer_r
- resolv: Add DNS packet parsing helpers geared towards wire format
- resolv: Add internal __ns_name_length_uncompressed function
- resolv: Add the __ns_samebinaryname function
- resolv: Add internal __res_binary_hnok function
- resolv: Add tst-resolv-aliases
- resolv: Add tst-resolv-byaddr for testing reverse lookup
- LoongArch: Use __builtin_{fmax,fmaxf,fmin,fminf} with GCC >= 13
- LoongArch: Fix ptr mangling/demangling features.
- nscd: Fix netlink cache invalidation if epoll is used [BZ #29415]
- Add test for bug 29530
- Makeconfig: Set pie-ccflag to -fPIE by default [BZ# 29514]
- hurd: Fix vm_size_t incoherencies
- mach: Make xpg_strerror_r set a message on error
- mach: Fix incoherency between perror and strerror
- elf: Call __libc_early_init for reused namespaces (bug 29528)
- csu: Change start code license to have link exception
- s390: Move hwcaps/platform names out of _rtld_global_ro
- Revert "Detect ld.so and libc.so version inconsistency during startup"
- Add NT_LOONGARCH_* from Linux 5.19 to elf.h
- Detect ld.so and libc.so version inconsistency during startup
- Merge getopt patch from Gnulib
- Merge _GL_UNUSED C23 patch from Gnulib
- LoongArch: Fix dl-machine.h code formatting.
- scripts/glibcelf.py: Add hashing support
- hurd: Fix starting static binaries with stack protection enabled
- htl: Make pthread*_cond_timedwait register wref before releasing mutex
- htl: make __pthread_hurd_cond_timedwait_internal check mutex is held
- Add AArch64 HWCAP2_* constants from Linux 5.19
Upstream commit: a727220b37efc9d4d558a77c5fc57f3af99a4829
- Add AGROUP from Linux 5.19 to sys/acct.h, remove Alpha version (bug 29502)
- alpha: Fix generic brk system call emulation in __brk_call (bug 29490)
- hurd: Assume non-suid during bootstrap
Upstream commit: 9125e43daf92e3d4e69044a54b9fe9ed88c861ad
- Use binutils 2.39 branch in build-many-glibcs.py
- S390: Fix werror=unused-variable in ifunc-impl-list.c.
- Ensure calculations happen with desired rounding mode in y1lf128
- localedata: Convert French language locales (fr_*) to UTF-8
- Linux: Fix enum fsconfig_command detection in <sys/mount.h>
- elf: Run tst-audit-tlsdesc, tst-audit-tlsdesc-dlopen everywhere
- Move ip_mreqn structure from Linux to generic
- malloc: Do not use MAP_NORESERVE to allocate heap segments
- Linux: Terminate subprocess on late failure in tst-pidfd (bug 29485)
- non-linux: bits/in.h: Add more RFC options
Upstream commit: 453b88efe6fa79f5c7c6fccc3a520c75fdd43074
- arm: Remove nested functionf rom relocate_pc24
- linux: Fix sys/mount.h usage with kernel headers
- linux: Use compile_c_snippet to check linux/mount.h availability
- linux: Mimic kernel defition for BLOCK_SIZE
- linux: Use compile_c_snippet to check linux/pidfd.h availability
- glibcextract.py: Add compile_c_snippet
- LoongArch: Add pointer mangling support.
- AArch64: Fix typo in sve configure check (BZ# 29394)
- libio: Improve performance of IO locks
- tst-process_madvise: Check process_madvise-syscall support.
- elf.h: Add ELFCOMPRESS_ZSTD
- inet: Turn __ivaliduser into a compatibility symbol
- x86: Fix `#define STRCPY` guard in strcpy-sse2.S
- elf: Replace `strcpy` call with `memcpy` [BZ #29454]
- soft-fp: Add fixhf[uns][di|si] and float[uns][di|si]hf
- i386: Use cmpl instead of cmp
- i386: Use fldt instead of fld on e_logl.S
- i386: Replace movzx with movzbl
- dlfcn: Pass caller pointer to static dlopen implementation (bug 29446)
- malloc: Correct the documentation of the top_pad default
- i386: Remove RELA support
- arm: Remove RELA support
- Remove ldd libc4 support
- Assume only FLAG_ELF_LIBC6 suport
- Remove left over LD_LIBRARY_VERSION usages
- Linux: Remove exit system call from _exit
- LoongArch: Add vdso support for gettimeofday.
- Update kernel version to 5.19 in header constant tests
- assert: Do not use stderr in libc-internal assert
- nptl: Remove uses of assert_perror
- stdio: Clean up __libc_message after unconditional abort
- Update syscall lists for Linux 5.19
- Use Linux 5.19 in build-many-glibcs.py
- socket: Check lengths before advancing pointer in CMSG_NXTHDR
- Don't use unsupported format string in ld.so (bug 29427)
- htl: Let pthread_self and cancellability called early
- stdlib: Simplify arc4random_uniform
- malloc: Use __getrandom_nocancel during tcache initiailization
- Remove spurious references to _dl_open_hook
- Open master branch for glibc 2.37 development
Upstream commit: 33f1b4c1452b33991e670f636ebe98b90a405e10
- wcsmbs: Add missing test-c8rtomb/test-mbrtoc8 dependency
- stdlib: Suppress gcc diagnostic that char8_t is a keyword in C++20 in uchar.h.
- Create ChangeLog.old/ChangeLog.25. (tag: glibc-2.36)
- Prepare for glibc 2.36 release.
- Update install.texi, and regenerate INSTALL.
- Update NEWS bug list.
- Update libc.pot for 2.36 release.
- tst-pidfd.c: UNSUPPORTED if we get EPERM on valid pidfd_getfd call
- stdlib: Tuned down tst-arc4random-thread internal parameters
- LoongArch: Add greg_t and gregset_t.
- LoongArch: Fix VDSO_HASH and VDSO_NAME.
- riscv: Update rv64 libm test ulps
- riscv: Update nofpu libm test ulps
No regressions seen in mass-prebuild of critical-path-base packages.
Upstream commit: 49889fb256a7f9b894b2d16fea23de1ac25b65e2
- x86: Add support to build st{p|r}{n}{cpy|cat} with explicit ISA level
- x86: Add support to build wcscpy with explicit ISA level
- x86: Add support to build strcmp/strlen/strchr with explicit ISA level
- elf: Fix wrong fscanf usage on tst-pldd
- Apply asm redirections in stdio.h before first use [BZ #27087]
- S390: Define SINGLE_THREAD_BY_GLOBAL only on s390x
- x86: Add missing rtm tests for strcmp family
- x86: Remove unneeded rtld-wmemcmp
- x86: Move wcslen SSE2 implementation to multiarch/wcslen-sse2.S
- x86: Move wcschr SSE2 implementation to multiarch/wcschr-sse2.S
- x86: Move strcat SSE2 implementation to multiarch/strcat-sse2.S
- x86: Move strchr SSE2 implementation to multiarch/strchr-sse2.S
- x86: Move strrchr SSE2 implementation to multiarch/strrchr-sse2.S
- x86: Move memrchr SSE2 implementation to multiarch/memrchr-sse2.S
- x86: Move strcpy SSE2 implementation to multiarch/strcpy-sse2.S
- x86: Move strlen SSE2 implementation to multiarch/strlen-sse2.S
- x86: Move strcmp SSE42 implementation to multiarch/strcmp-sse4_2.S
- x86: Move wcscmp SSE2 implementation to multiarch/wcscmp-sse2.S
- x86: Move strcmp SSE2 implementation to multiarch/strcmp-sse2.S
- x86: Rename STRCASECMP_NONASCII macro to STRCASECMP_L_NONASCII
- nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore
- x86: Remove __mmask intrinsics in strstr-avx512.c
- x86: Remove generic strncat, strncpy, and stpncpy implementations
- i386: Remove -Wa,-mtune=i686
- x86-64: Remove redundant strcspn-generic/strpbrk-generic/strspn-generic
- elf: Rename tst-audit26 to tst-audit28
- x86-64: Don't mark symbols as hidden in strcmp-XXX.S
- stdlib: Tests for mbrtoc8, c8rtomb, and the char8_t typedef.
- stdlib: Implement mbrtoc8, c8rtomb, and the char8_t typedef.
- gconv: Correct Big5-HKSCS conversion to preserve all state bits. [BZ #25744]
- aarch64: Optimize string functions with shrn instruction
- test-container: return UNSUPPORTED for ENOSPC on clone()
- x86: Add support for building {w}memcmp{eq} with explicit ISA level
- x86: Add support for building {w}memset{_chk} with explicit ISA level
- x86: Add support for building {w}memmove{_chk} with explicit ISA level
- x86: Add support for building str{c|p}{brk|spn} with explicit ISA level
- x86: Add comment explaining no Slow_SSE4_2 check in ifunc-sse4_2
- Replace __libc_multiple_threads with __libc_single_threaded
- linux: Add mount_setattr
- linux: Add tst-mount to check for Linux new mount API
- linux: Add open_tree
- linux: Add fspick
- linux: Add fsconfig
- AArch64: Reset HWCAP2_AFP bits in FPCR for default fenv
- elf: Fix direction of NODELETE log messages during symbol lookup
We'll use baserelease here for two reasons:
- It is known to rpmdev-bumpspec, so it will be properly handled for mass-
rebuilds
- It allows using the Release number without the %%dist tag in the dependency
generator to make the generated requires interchangeable between Rawhide
and ELN (.elnYY < .fcXX).
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
Upstream commit: 7519dee356a0ab21c8990e59ed05dd48a4e573a0
- malloc: Simplify checked_request2size interface
- stdlib: Simplify buffer management in canonicalize
- localedef: Support building for older C standards
- de_DE: Convert to UTF-8
- locale: localdef input files are now encoded in UTF-8
- locale: Introduce translate_unicode_codepoint into linereader.c
- locale: Fix signed char bug in lr_getc
- locale: Turn ADDC and ADDS into functions in linereader.c
- libc-symbols.h: remove unused macros
Upstream commit: 8ee2c043cfb35c48b45c7c5aed4022a8a7352bdc
- Fix hurd namespace issues for internal signal functions
- argp: Remove old includes in !_LIBC case
- Use GCC 12 branch in build-many-glibcs.py
- Refactor internal-signals.h
- riscv: Use memcpy to handle unaligned access when fixing R_RISCV_RELATIVE
- AArch64: Add asymmetric faulting mode for tag violations in mem.tagging tunable
- linux: Fix mq_timereceive check for 32 bit fallback code (BZ 29304)
- x86: Add missing IS_IN (libc) check to strncmp-sse4_2.S
- x86: Add missing IS_IN (libc) check to strcspn-sse4.c
- x86: Add missing IS_IN (libc) check to memmove-ssse3.S
- x86-64: Properly indent X86_IFUNC_IMPL_ADD_VN arguments
- x86-64: Small improvements to dl-trampoline.S
- x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file
- x86: Move and slightly improve memset_erms
- x86: Add definition for __wmemset_chk AVX2 RTM in ifunc impl list
- linux: Remove unnecessary nice.c and signal.c
- nptl: Remove unused members from struct pthread
- Linux: Forward declaration of struct iovec for process_madvise
- x86: Add more feature definitions to isa-level.h
Upstream commit: a3563f3f369878467dd74aeb360448119a7a4b41
- elf: Fix -DNDEBUG warning in _dl_start_args_adjust
- elf: Fix compile error with -Werror and -DNDEBUG
- x86-64: Only define used SSE/AVX/AVX512 run-time resolvers
- x86: Move CPU_FEATURE{S}_{USABLE|ARCH}_P to isa-level.h
- x86: Fix backwards Prefer_No_VZEROUPPER check in ifunc-evex.h
- x86: Rename strstr_sse2 to strstr_generic as it uses string/strstr.c
- x86: Remove unused file wmemcmp-sse4
- x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
- x86: Align entry for memrchr to 64-bytes.
- Makerules: Remove no-op -Wl,-d when linking libc_pic.os
- m68k: optimize RTLD_START
- misc: Optimize internal usage of __libc_single_threaded
- linux: Add move_mount
- linux: Add fsmount
- linux: Add fsopen
- resolv/tst-resolv-noaaaa: Support building for older C standards
- resolv: Implement no-aaaa stub resolver option
- support: Change non-address output format of support_format_dns_packet
- riscv: Use elf_machine_rela_relative to handle R_RISCV_RELATIVE
- x86: Remove faulty sanity tests for RTLD build with no multiarch
- stdlib: Fixup mbstowcs NULL __dst handling. [BZ #29279]
- x86: Replace all sse instructions with vex equivilent in avx+ files
- x86: Add support for compiling {raw|w}memchr with high ISA level
- x86: Add defines / utilities for making ISA specific x86 builds
- stdlib: Remove attr_write from mbstows if dst is NULL [BZ: 29265]
- stdlib: Remove trailing whitespace from Makefile
- debug: make __read_chk a cancellation point (bug 29274)
- s390: use LC_ALL=C for readelf call
- s390: use $READELF
Upstream commit: 999835533bc60fbd0b0b65d2412a6742e5a54b9d
- socket: Fix mistyped define statement in socket/sys/socket.h (BZ #29225)
- Declare timegm for ISO C2X
- Add PT_AARCH64_MEMTAG_MTE from Linux 5.18 to elf.h
- grep: egrep -> grep -E, fgrep -> grep -F
- string.h: Fix boolean spelling in comments
- elf: Add #include <errno.h> for use of E* constants.
- elf: Add #include <sys/param.h> for MAX usage.
- linux: Add process_mrelease
- linux: Add process_madvise
- linux: Set tst-pidfd-consts unsupported for kernels headers older than 5.10
- testrun.sh: Support passing strace and valgrind arguments
- Linux: Adjust struct rseq definition to current kernel version
- iconv: Use 64 bit stat for gconv_parseconfdir (BZ# 29213)
- catgets: Use 64 bit stat for __open_catalog (BZ# 29211)
- inet: Use 64 bit stat for ruserpass (BZ# 29210)
- socket: Use 64 bit stat for isfdtype (BZ# 29209)
- posix: Use 64 bit stat for fpathconf (_PC_ASYNC_IO) (BZ# 29208)
- posix: Use 64 bit stat for posix_fallocate fallback (BZ# 29207)
- misc: Use 64 bit stat for getusershell (BZ# 29203)
- misc: Use 64 bit stat for daemon (BZ# 29203)
- linux: use statx for fstat if neither newfstatat nor fstatat64 is present
- Add MADV_DONTNEED_LOCKED from Linux 5.18 to bits/mman-linux.h
- Add HWCAP2_MTE3 from Linux 5.18 to AArch64 bits/hwcap.h
- i686: Use generic sincosf implementation for SSE2 version
- benchtests: Add workload name for sincosf
- i686: Use generic sinf implementation for SSE2 version
- i686: Use generic cosf implementation for SSE2 version
- benchtests: Add workload name for cosf
- x86_64: Optimize sincos where sin/cos is optimized (bug 29193)
- manual: fix reference to source file
- Add SOL_SMC from Linux 5.18 to bits/socket.h
- elf: Remove _dl_skip_args
- x86_64: Remove _dl_skip_args usage
- sparc: Remove _dl_skip_args usage
- sh: Remove _dl_skip_args usage
- s390: Remove _dl_skip_args usage
- riscv: Remove _dl_skip_args usage
- nios2: Remove _dl_skip_args usage (BZ# 29187)
- mips: Remove _dl_skip_args usage
- microblaze: Remove _dl_skip_args usage
- m68k: Remove _dl_skip_args usage
- ia64: Remove _dl_skip_args usage
- i686: Remove _dl_skip_args usage
- hppa: Remove _dl_skip_args usage (BZ# 29165)
- csky: Remove _dl_skip_args usage
- arc: Remove _dl_skip_args usage
- arm: Remove _dl_skip_args usage
- alpha: Remove _dl_skip_args usage
- benchtests: Improve benchtests for strstr, memmem, and memchr
- dlsym: Make RTLD_NEXT prefer default version definition [BZ #14932]
- x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT
- x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen
- Update kernel version to 5.18 in header constant tests
- String: Improve overflow test coverage for strnlen
Upstream commit: 3d9926663cba19f40d26d8a8ab3b2a7cc09ffb13
- Update syscall-names.list for Linux 5.18
- Fix deadlock when pthread_atfork handler calls pthread_atfork or dlclose
- Use Linux 5.18 in build-many-glibcs.py
- stdio-common: Simplify printf_unknown interface in vfprintf-internal.c
- stdio-common: Move union printf_arg int <printf.h>
- stdio-common: Add printf specifier registry to <printf.h>
- elf/dl-reloc.c: Copyright The GNU Toolchain Authors
- benchtests: Improve bench-strnlen.c
- math: Add math-use-builtins-fabs (BZ#29027)
- linux: Add CLONE_NEWTIME from Linux 5.6 to bits/sched.h
- Revert "[ARM][BZ #17711] Fix extern protected data handling"
- Revert "[AArch64][BZ #17711] Fix extern protected data handling"
- elf: Rewrite long RESOLVE_MAP macro to an always_inline static function
Upstream commit 748df8126ac69e68e0b94e236ea3c2e11b1176cb
- dlfcn: Move RTLD_DEFAULT/RTLD_NEXT outside __USE_GNU
- elf: Optimize _dl_new_hash in dl-new-hash.h
- nss: Optimize nss_hash in nss_hash.c
- benchtests: Add benchtests for dl_elf_hash, dl_new_hash and nss_hash
- nss: Add tests for the nss_hash in nss_hash.h
- elf: Add tests for the dl hash funcs (_dl_new_hash and _dl_elf_hash)
- elf: Refactor dl_new_hash so it can be tested / benchmarked
- locale: Add more cached data to LC_CTYPE
- locale: Remove private union from struct __locale_data
- locale: Remove cleanup function pointer from struct __localedata
- locale: Call _nl_unload_locale from _nl_archive_subfreeres
- stdio-common: Add tst-memstream-string for open_memstream overflow
- __printf_fphex always uses LC_NUMERIC
- vfprintf: Consolidate some multibyte/wide character processing
- vfprintf: Move argument processing into vfprintf-process-arg.c
- stdio-common: Add tst-vfprintf-width-i18n to cover numeric field width
- string.h: fix __fortified_attr_access macro call [BZ #29162]
- Enable DT_RELR in glibc shared libraries and PIEs automatically
- S390: Enable static PIE
- linux: Add tst-pidfd.c
- linux: Add P_PIDFD
- linux: Add pidfd_send_signal
- linux: Add pidfd_getfd
- linux: Add pidfd_open
- aarch64: Move ld.so _start to separate file and drop _dl_skip_args
- linux: Add a getauxval test [BZ #23293]
- rtld: Remove DL_ARGV_NOT_RELRO and make _dl_skip_args const
- rtld: Use generic argv adjustment in ld.so [BZ #23293]
- scripts/glibcelf.py: Add *T_RISCV_* constants
- Remove dl-librecon.h header.
- elf: Remove ldconfig kernel version check
- Remove kernel version check
- linux: Use /sys/devices/system/cpu on __get_nprocs_conf (BZ#28991)
- csu: Implement and use _dl_early_allocate during static startup
- Linux: Introduce __brk_call for invoking the brk system call
- sys/cdefs.h: Do not require C++ compilers to define __STDC__
- fortify: Ensure that __glibc_fortify condition is a constant [BZ #29141]
- Update RISC-V specific ELF definitions
Upstream commit: 9403b71ae97e3f1a91c796ddcbb4e6f044434734
- x86_64: Remove bzero optimization
- RISC-V: Use an autoconf template to produce `preconfigure'
- MIPS: Use an autoconf template to produce `preconfigure'
- m68k: Use an autoconf template to produce `preconfigure'
- C-SKY: Use an autoconf template to produce `preconfigure'
- Remove configure fno_unit_at_a_time
- stdio: Remove the usage of $(fno-unit-at-a-time) for siglist.c
- stdio: Remove the usage of $(fno-unit-at-a-time) for errlist.c
- Add declare_object_symbol_alias for assembly codes (BZ #28128)
- wcrtomb: Make behavior POSIX compliant
Upstream commit: 8162147872491bb5b48e91543b19c49a29ae6b6d
- nptl: Add backoff mechanism to spinlock loop
- Linux: Implement a useful version of _startup_fatal
- ia64: Always define IA64_USE_NEW_STUB as a flag macro
- linux: Fix posix_spawn return code if clone fails (BZ#29109)
- benchtests: Add wcrtomb microbenchmark
- clock_settime/clock_gettime: Use __nonnull to avoid null pointer
- clock_adjtime: Use __nonnull to avoid null pointer
- ntp_xxxtimex: Use __nonnull to avoid null pointer
- adjtimex/adjtimex64: Use __nonnull to avoid null pointer
- hurd spawni: Fix reauthenticating closed fds
- Linux: Define MMAP_CALL_INTERNAL
- i386: Honor I386_USE_SYSENTER for 6-argument Linux system calls
- i386: Remove OPTIMIZE_FOR_GCC_5 from Linux libc-do-syscall.S
- manual: Clarify that abbreviations of long options are allowed
Upstream commit: 8e28aa3a51bf0ef3683f2aed4b5b448744897b66
- elf: Remove fallback to the start of DT_STRTAB for dladdr
- powerpc32: Remove unused HAVE_PPC_SECURE_PLT
- dlfcn: Implement the RTLD_DI_PHDR request type for dlinfo
- manual: Document the dlinfo function
- Do not use --hash-style=both for building glibc shared objects
- benchtests: Better libmvec integration
- benchtests: Add UNSUPPORTED benchmark status
- linux: Fix fchmodat with AT_SYMLINK_NOFOLLOW for 64 bit time_t (BZ#29097)
- Use __ehdr_start rather than _begin in _dl_start_final
- sysdeps: Add 'get_fast_jitter' interace in fast-jitter.h
- posix/glob.c: update from gnulib
- benchtests: Add pthread-mutex-locks bench
- linux: Fix missing internal 64 bit time_t stat usage
- elf: Fix DFS sorting algorithm for LD_TRACE_LOADED_OBJECTS with missing libraries (BZ #28868)
- posix: Remove unused definition on _Fork
- NEWS: Mention DT_RELR support
- elf: Add more DT_RELR tests
- elf: Properly handle zero DT_RELA/DT_REL values
- elf: Support DT_RELR relative relocation format [BZ #27924]
- Add GLIBC_ABI_DT_RELR for DT_RELR support
- elf: Define DT_RELR related macros and types
- elf: Replace PI_STATIC_AND_HIDDEN with opposite HIDDEN_VAR_NEEDS_DYNAMIC_RELOC
- i386: Regenerate ulps
- dlfcn: Do not use rtld_active () to determine ld.so state (bug 29078)
- INSTALL: Rephrase -with-default-link documentation
Upstream commit: 053fe273434056f551ed8f81daf750db9dab5931
- linux: Fix __closefrom_fallback iterates until max int (BZ#28993)
- Remove -z combreloc and HAVE_Z_COMBRELOC
- sparc: Remove s_abs implementations
- ia64: Remove fabs implementations
- x86: Remove fabs{f} implementation
- alpha: Remove s_abs implementations
- Allow for unpriviledged nested containers
- Increase the test timeout of some string tests
- realpath: Bring back GNU extension on ENOENT and EACCES [BZ #28996]
- stdlib: Fix tst-getrandom memcmp call
- stdlib: Fix tst-rand48.c printf types
- elf: Remove unused functions from tst-audit25(a,b)
- nptl: Use libc-diag.h with tst-thread-setspecific
- crypt: Remove unused variable on cert test
- elf: Remove unused variables in tests
- elf: Fix wrong fscanf usage on tst-pldd
- posix: Remove unused variable on tst-_Fork.c
- resolv: Initialize loop variable on tst-resolv-trailing
- locale: Remove set but unused variable on ld-collate.c
- localedate: Fix printf type on tst_mbrtowc
- localedata: Remove unused variables in tests
- x86: Small improvements for wcslen
- x86: Small improvements for wcscpy-ssse3
- debug: Improve fdelt_chk error message
- Add HWCAP2_AFP, HWCAP2_RPRES from Linux 5.17 to AArch64 bits/hwcap.h
- x86: Remove AVX str{n}casecmp
- x86: Add EVEX optimized str{n}casecmp
- x86: Add AVX2 optimized str{n}casecmp
- string: Expand page cross test cases in test-strncmp.c
- string: Expand page cross test cases in test-strcmp.c
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp-sse42.S
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp.S
- string: Expand page cross tests in test-strncasecmp.c
- string: Expand page cross tests in test-strcasecmp.c
- benchtests: Use json-lib in bench-strncasecmp.c
- benchtests: Use json-lib in bench-strcasecmp.c
- x86: Fix fallback for wcsncmp_avx2 in strcmp-avx2.S [BZ #28896]
- x86: Remove strspn-sse2.S and use the generic implementation
- x86: Remove strpbrk-sse2.S and use the generic implementation
- x86: Remove strcspn-sse2.S and use the generic implementation
- x86: Optimize strspn in strspn-c.c
- x86: Optimize strcspn and strpbrk in strcspn-c.c
- benchtests: Use json-lib in bench-strspn.c
- benchtests: Use json-lib in bench-strpbrk.c
- x86: Code cleanup in strchr-evex and comment justifying branch
- x86: Code cleanup in strchr-avx2 and comment justifying branch
- benchtests: Add random benchmark in bench-strchr.c
- benchtests: Use json-lib in bench-strchr.c
- Update kernel version to 5.17 in tst-mman-consts.py
- iconvdata: Fix enum type on UTF-7
- nscd: Remove unused variable
- support: Fix support_process_state_wait path size calculation
- support: Remove unused extract_8 function
- locale: Remove ununsed wctype_table_get function
- gmon: Remove unused sprofil.c functions
- Update syscall lists for Linux 5.17
- Fix ununsed fstatat64_time64_statx
- malloc: Fix duplicate inline for do_set_mxfast
- elf: Remove inline _dl_dprintf
- configure.ac: fix bashisms in configure.ac
- getaddrinfo: Refactor code for readability
- Use Linux 5.17 in build-many-glibcs.py
- resolv: Fix unaligned accesses to fields in HEADER struct
- gai_init: Avoid jumping from if condition to its else counterpart
- gaiconf_init: Refactor some bits for readability
- gethosts: Return EAI_MEMORY on allocation failure
- gaih_inet: Split result generation into its own function
- gaih_inet: split loopback lookup into its own function
- gaih_inet: make gethosts into a function
- gaih_inet: separate nss lookup loop into its own function
- gaih_inet: Split nscd lookup code into its own function.
- gaih_inet: Split simple gethostbyname into its own function
- gaih_inet: make numeric lookup a separate routine
- gaih_inet: Simplify service resolution
- getaddrinfo: Fix leak with AI_ALL [BZ #28852]
- gaih_inet: Simplify canon name resolution
- Simplify allocations and fix merge and continue actions [BZ #28931]
- iconv: Add UTF-7-IMAP variant in utf-7.c
- iconv: make utf-7.c able to use variants
- iconv: Better mapping to RFC for UTF-7
- iconv: Always encode "optional direct" UTF-7 characters
- stdio-common: Add wide stream coverage to tst-vfprintf-user-type
- libio: Flush-only _IO_str_overflow must not return EOF (bug 28949)
- libio: Convert tst_swprintf to the test framework
- scripts/dso-ordering-test.py: Fix C&P error in * callrefs processing
- stdio-common: Generate ja_JP.EUC-JP locale
- stdio-common: Re-flow and sort Makefile variables
- nss: Sort tests and tests-container and put one test per line
- benchtests: Use "=" instead of ":=" [BZ #28970]
- hppa: Use END instead of PSEUDO_END in swapcontext.S
* Tue Mar 15 2022 DJ Delorie <dj@redhat.com> - 2.35.9000-11
- Auto-sync with upstream branch master,
commit d05e6dc8d1032e1732542a48e0fb895432008b6e.
- hppa: Implement swapcontext in assembler (bug 28960)
- associate a deallocator for iconv_open
- associate a deallocation for opendir
- Add access function attributes to epoll_wait
- Add access function attributes to grp and shadow headers
- Define ISO 639-3 "tok" [BZ #28950]
- nss: Protect against errno changes in function lookup (bug 28953)
- nss: Do not mention NSS test modules in <gnu/lib-names.h>
- malloc: Exit early on test failure in tst-realloc
- Add some missing access function attributes
- libio: Ensure output buffer for wchars (bug #28828)
- inet: Return EAI_MEMORY when nrl_domainname() fails to allocate memory
- inet: Remove strdupa from nrl_domainname()
- inet: Fix getnameinfo (NI_NOFQDN) race condition (BZ#28566)
- benchtests: make compare_strings.py accept string as attribute value
Upstream commit: d05e6dc8d1032e1732542a48e0fb895432008b6e
- hppa: Implement swapcontext in assembler (bug 28960)
- associate a deallocator for iconv_open
- associate a deallocation for opendir
- Add access function attributes to epoll_wait
- Add access function attributes to grp and shadow headers
- Define ISO 639-3 "tok" [BZ #28950]
- nss: Protect against errno changes in function lookup (bug 28953)
- nss: Do not mention NSS test modules in <gnu/lib-names.h>
- malloc: Exit early on test failure in tst-realloc
- Add some missing access function attributes
- libio: Ensure output buffer for wchars (bug #28828)
- inet: Return EAI_MEMORY when nrl_domainname() fails to allocate memory
- inet: Remove strdupa from nrl_domainname()
- inet: Fix getnameinfo (NI_NOFQDN) race condition (BZ#28566)
- benchtests: make compare_strings.py accept string as attribute value
Upstream commit: fdc1ae67fef27eea1445bab4bdfe2f0fb3bc7aa1
- Add SOL_MPTCP, SOL_MCTP from Linux 5.16 to bits/socket.h
- elf: Check invalid hole in PT_LOAD segments [BZ #28838]
- realpath: Do not copy result on failure (BZ #28815)
- x86: Fix TEST_NAME to make it a string in tst-strncmp-rtm.c
- x86: Test wcscmp RTM in the wcsncmp overflow case [BZ #28896]
- hppa: Fix swapcontext
- x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896]
- string: Add a testcase for wcsncmp with SIZE_MAX [BZ #28755]
- microblaze: Use the correct select syscall (BZ #28883)
- Update kernel version to 5.16 in tst-mman-consts.py
- pthread: Use 64 bit time_t stat internally for sem_open (BZ #28880)
- x86: Fix bug in strncmp-evex and strncmp-avx2 [BZ #28895]
- String: Strength memset tests in test-memset.c
- x86-64: Define __memcmpeq in ld.so
- htl: Destroy thread-specific data before releasing joins
- htl: Fix initializing the key lock
- mach: Fix LLL_SHARED value
- htl: Make pthread_[gs]etspecific not check for key validity
- x86-64: Remove bzero weak alias in SS2 memset
- hppa: Fix typo
- linux: Use socket-constants-time64.h on tst-socket-timestamp-compat
- x86/configure.ac: Define PI_STATIC_AND_HIDDEN/SUPPORT_STATIC_PIE
- Fix elf/tst-audit2 on hppa
- x86: Use CHECK_FEATURE_PRESENT on PCONFIG
- x86: Don't check PTWRITE in tst-cpu-features-cpuinfo.c
- x86: Set .text section in memset-vec-unaligned-erms
- Linux: Include <dl-auxv.h> in dl-sysdep.c only for SHARED
- Revert "Linux: Consolidate auxiliary vector parsing"
- String: Ensure 'MIN_PAGE_SIZE' is multiple of 'getpagesize'
- Use binutils 2.38 branch in build-many-glibcs.py
- elf: Remove LD_USE_LOAD_BIAS
- malloc: Remove LD_TRACE_PRELINKING usage from mtrace
- elf: Remove prelink support
- Linux: Consolidate auxiliary vector parsing
- Linux: Assume that NEED_DL_SYSINFO_DSO is always defined
- Linux: Remove DL_FIND_ARG_COMPONENTS
- Linux: Remove HAVE_AUX_SECURE, HAVE_AUX_XID, HAVE_AUX_PAGESIZE
- elf: Merge dl-sysdep.c into the Linux version
- hppa: Fix bind-now audit (BZ #28857)
The scriptlet in glibc adds a dependency on bash to glibc-common,
which is required by glibc, so effectively the whole world depends on
bash. By rewriting the script in lua we drop this dependency, and also
to avoid a (bogus?) warning from rpm about a dependency loop.
If the call fails, an error is printed but the transaction is not failed.
(The original script didn't have "|| :", so the return value from
/sbin/ldconfig would be the return value from the script, causing
the transaction to fail.)
Quoting https://bugzilla.redhat.com/show_bug.cgi?id=2018913#c34:
warning: SCC #1: 5 members (5 external dependencies)
warning: glibc-2.35-2.fc37.x86_64
warning: -> glibc-minimal-langpack-2.35-2.fc37.x86_64
warning: -> glibc-common-2.35-2.fc37.x86_64
warning: ncurses-libs-6.2-9.20210508.fc36.x86_64
warning: -> glibc-2.35-2.fc37.x86_64
warning: bash-5.1.16-2.fc36.x86_64
warning: -> ncurses-libs-6.2-9.20210508.fc36.x86_64
warning: -> glibc-2.35-2.fc37.x86_64
warning: glibc-common-2.35-2.fc37.x86_64
warning: -> glibc-2.35-2.fc37.x86_64
warning: -> bash-5.1.16-2.fc36.x86_64
warning: glibc-minimal-langpack-2.35-2.fc37.x86_64
warning: -> glibc-common-2.35-2.fc37.x86_64
warning: -> glibc-2.35-2.fc37.x86_64
If we look into SCC #1, bash obviously requires glibc because it links
to it. The loop is created by glibc → glibc-common → bash, because
glibc-common has %transfiletriggerin and %transfiletriggerpostun using
bash to call /sbin/ldconfig.
https://github.com/coreos/rpm-ostree/pull/3453 provides a workaround
so that rpm-ostree doesn't choke on this.
See https://rpm-software-management.github.io/rpm/manual/lua.html and
298bb60a9f/rpmio/rpmlua.c (L806-L829)
assert() is not used because it seems better to ignore the error. The
old code would assert on exec(), but not on fork(), and it would not
check the return value either. But if the call fails (for any reason),
an error is printed. At least iconvconfig just seems to fail quietly
in case of a problem.
Almost half the LC_CTYPE files in langpacks are identical to the C.utf8
variant which is installed by default. This commit converts these to
symbolic links instead, saving ~350K of installed size per langpack.
Reviewed-by: Florian Weimer <fweimer@redhat.com>
glibc-fedora-localedef.patch was altering the install-locales target so
that it does not generate a locale-archive.
This commit drops the patch and uses the install-locale-files target
instead of install-locales. install-locale-files does not generate
locale-archive, and does not group identical locale files via hardlinks.
hardlink is also passed a -c flag so that it actually compares file
contents and hardlinks identical ones.
Temporary patches to work around gcc 12 vs glibc warning
and ppc64le long double conflicts.
Upstream commit: 5b8e7980c5dabd9aaefeba4f0208baa8cf7653ee
- Linux: Detect user namespace support in io/tst-getcwd-smallbuff
- Fix handling of unterminated bracket expressions in fnmatch (bug 28792)
- realpath: Avoid overwriting preexisting error (CVE-2021-3998)
- elf: Add a test for PT_LOAD segments with invalid p_align [BZ #28688]
- elf: Add a test for PT_LOAD segments with p_align == 1 [BZ #28688]
- elf: Add a test for PT_LOAD segments with mixed p_align [BZ #28676]
- Add and use link-test-modules-rpath-link [BZ #28455]
- tst-realpath-toolong: Fix hurd build
- getcwd: Set errno to ERANGE for size == 1 (CVE-2021-3999)
- Add valgrind smoke test
- htl: Fix cleaning the reply port
- elf: Properly align all PT_LOAD segments [BZ #28676]
- realpath: Set errno to ENAMETOOLONG for result larger than PATH_MAX [BZ #28770]
- support: Add helpers to create paths longer than PATH_MAX
- nptl: Effectively skip CAS in spinlock loop
- mips: Move DT_MIPS into <ldsodefs.h>
- x86_64: Document libmvec vector functions accuracy [BZ #28766]
- x86: Black list more Intel CPUs for TSX [BZ #27398]
- elf: Fix tst-align3
- elf: Move _dl_setup_hash to its own file
- htl: Fix build error in annexc
- elf: Reinstate tst-audit17
- x86: use default cache size if it cannot be determined [BZ #28784]
- rt/tst-mqueue*: Return UNSUPPORTED when mq_open fails with ENOSYS
- Linux: Add epoll_pwait2 (BZ #27359)
- Properly handle --disable-default-pie [BZ #28780]
- elf: Fix 64 time_t support for installed statically binaries
- Revert "elf: Fix 64 time_t support for installed statically binaries"
- CVE-2022-23218: Buffer overflow in sunrpc svcunix_create (bug 28768)
- sunrpc: Test case for clnt_create "unix" buffer overflow (bug 22542)
- CVE-2022-23219: Buffer overflow in sunrpc clnt_create for "unix" (bug 22542)
- socket: Add the __sockaddr_un_set function
- elf/tst-dl_find_object: Disable subtests for non-contiguous maps (bug 28732)
- elf: Set l_contiguous to 1 for the main map in more cases
- elf: Introduce rtld_setup_main_map
- hurd: Make RPC input array parameters const
- hurd: optimize exec cleanup
- hurd: Add __rtld_execve
- hurd: Fix exec() leak on proc_task2proc failure
- htl: Hide __pthread_attr's __schedparam type [BZ #23088]
- htl: Clear kernel_thread field before releasing the thread structure
- hurd: drop SA_SIGINFO availability xfail
- hurd: Fix timer/clock_getres crash on NULL res parameter
- hurd: Fix pthread_kill on exiting/ted thread
- [hurd] Drop spurious #ifdef SHARED
- [hurd] Call _dl_sort_maps_init in _dl_sysdep_start
- elf tst-dl_find_object: Fix typo
- s390x: Use <gcc-macros.h> in early HWCAP check
- x86: Add x86-64-vN check to early startup
- powerpc64le: Use <gcc-macros.h> in early HWCAP check
- Add --with-rtld-early-cflags configure option
- elf: Split dl-printf.c from dl-misc.c
- elf/Makefile: Reflow and sort most variable assignments
- Generate gcc-macros.h
- x86: HAVE_X86_LAHF_SAHF, HAVE_X86_MOVBE and -march=x86-64-vN (bug 28782)
- math: Add more inputs to atan2 accuracy tests [BZ #28765]
- Disable debuginfod in printer tests [BZ #28757]
- Update syscall lists for Linux 5.16
- i386: Remove broken CAN_USE_REGISTER_ASM_EBP (bug 28771)
- stdlib: Fix formatting of tests list in Makefile
- stdlib: Sort tests in Makefile
- x86_64: Fix SSE4.2 libmvec atan2 function accuracy [BZ #28765]
- debug: Synchronize feature guards in fortified functions [BZ #28746]
- debug: Autogenerate _FORTIFY_SOURCE tests
- Do not build libresolv module with 64 bit time_t flags
- Revert "linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ #28350)"
- Revert "support: Add support_socket_so_timestamp_time64"
- timezone: Fix tst-bz28707 Makefile rule
- linux: Fix ancillary 64-bit time timestamp conversion (BZ #28349, BZ #28350)
- support: Add support_socket_so_timestamp_time64
- elf: Fix 64 time_t support for installed statically binaries
- Enable _FORTIFY_SOURCE=3 for gcc 12 and above
- manual: Drop obsolete @refill
- aarch64: Add HWCAP2_ECV from Linux 5.16
- Use Linux 5.16 in build-many-glibcs.py
- x86: Fix __wcsncmp_evex in strcmp-evex.S [BZ# 28755]
- x86: Fix __wcsncmp_avx2 in strcmp-avx2.S [BZ# 28755]
- math: Fix float conversion regressions with gcc-12 [BZ #28713]
- elf: Simplify software TM implementation in _dl_find_object
- Restore ENTRY_POINT definition on hppa, ia64 (bug 28749)
- elf: Fix fences in _dl_find_object_update (bug 28745)
- ttydefaults.h: Fix CSTATUS to control-t
- AArch64: Check for SVE in ifuncs [BZ #28744]
- debug: Remove catchsegv and libSegfault (BZ #14913)
- Documentation for OpenRISC port
- build-many-glibcs.py: add OpenRISC support
- or1k: Build Infrastructure
- or1k: ABI lists
- or1k: Linux ABI
- or1k: Linux Syscall Interface
- or1k: math soft float support
- or1k: Atomics and Locking primitives
- or1k: Thread Local Storage support
- or1k: startup and dynamic linking code
- or1k: ABI Implementation
- linux/syscalls: Add or1k_atomic syscall for OpenRISC
- elf: Add reloc for OpenRISC
- elf: Add a comment after trailing backslashes
- elf: Also try DT_RUNPATH for LD_AUDIT dlopen [BZ #28455]
- elf: Fix tst-linkall-static link when pthread is not in libc
Upstream commit: b99b0f93ee8762fe53ff65802deb6f00700b9924
- nss: Use "files dns" as the default for the hosts database (#2033020)
- arm: Guard ucontext _rtld_global_ro access by SHARED, not PIC macro
- Fix The GNU ToolChain Authors copyright notice
- Remove upper limit on tunable MALLOC_MMAP_THRESHOLD
- localedata: add new locale ab_GE
- Fix __minimal_malloc segfaults in __mmap due to stack-protector
- __glibc_unsafe_len: Fix comment
- malloc: Enable huge page support on main arena
- malloc: Move MORECORE fallback mmap to sysmalloc_mmap_fallback
- malloc: Add Huge Page support to arenas
- malloc: Add Huge Page support for mmap
- malloc: Move mmap logic to its own function
- malloc: Add THP/madvise support for sbrk
- malloc: Add madvise support for Transparent Huge Pages
- powerpc: Use global register variable in <thread_pointer.h>
- Use LFS and 64 bit time for installed programs (swbz#15333)
Since upstream commit 23645707f12f, --enable-static-pie is ignored by
the build system and static PIE is enabled by default on architectures
that support it.
Upstream commit: 4435c29892c43ae9908a42e591747be63102689b
- Drop glibc-fedora-revert-PT_LOAD-segment-align.patch; fix applied upstream
- Support target specific ALIGN for variable alignment test [BZ #28676]
- NEWS: Document LD_PREFER_MAP_32BIT_EXEC as x86-64 only
- elf: Align argument of __munmap to page size [BZ #28676]
Upstream commit: 0884724a95b60452ad483dbe086d237d02ba624d
- Add glibc-fedora-revert-PT_LOAD-segment-align.patch to revert upstream
commits 718fdd87b1b9 and fc2334ab32e0.
- intl: Emit no lines in bison generated files
- hurd: Do not set PIE_UNSUPPORTED
- NEWS: Move LD_PREFER_MAP_32BIT_EXEC
- mach: Fix spurious inclusion of stack_chk_fail_local in libmachuser.a
- Disable DT_RUNPATH on NSS tests [BZ #28455]
- sysdeps: Simplify sin Taylor Series calculation
- math: Remove the error handling wrapper from hypot and hypotf
- math: Use fmin/fmax on hypot
- aarch64: Add math-use-builtins-f{max,min}.h
- math: Add math-use-builtinds-fmin.h
- math: Add math-use-builtinds-fmax.h
- math: Remove powerpc e_hypot
- i386: Move hypot implementation to C
- math: Use an improved algorithm for hypotl (ldbl-128)
- math: Use an improved algorithm for hypotl (ldbl-96)
- math: Improve hypot performance with FMA
- math: Use an improved algorithm for hypot (dbl-64)
- math: Simplify hypotf implementation
- Cleanup encoding in comments
- Replace --enable-static-pie with --disable-default-pie
- hurd: Add rules for static PIE build
- hurd: Fix gmon-static
- x86-64: Remove LD_PREFER_MAP_32BIT_EXEC support [BZ #28656]
- elf: Use errcode instead of (unset) errno in rtld_chain_load
- Add a testcase to check alignment of PT_LOAD segment [BZ #28676]
- elf: Properly align PT_LOAD segments [BZ #28676]
- elf: Install a symbolic link to ld.so as /usr/bin/ld.so
- nptl: Add one more barrier to nptl/tst-create1
- Remove TLS_TCB_ALIGN and TLS_INIT_TCB_ALIGN
- nptl: rseq failure after registration on main thread is fatal
- nptl: Add public rseq symbols and <sys/rseq.h>
- nptl: Add glibc.pthread.rseq tunable to control rseq registration
- Linux: Use rseq to accelerate sched_getcpu
- nptl: Add rseq registration
- nptl: Introduce THREAD_GETMEM_VOLATILE
- nptl: Introduce <tcb-access.h> for THREAD_* accessors
- nptl: Add <thread_pointer.h> for defining __thread_pointer
- String: test-memcpy used unaligned types for buffers [BZ 28572]
- localedef: check magic value on archive load [BZ #28650]
- x86: Don't set Prefer_No_AVX512 for processors with AVX512 and AVX-VNNI
- linux: Add generic ioctl implementation
- linux: Add generic syscall implementation
- misc, nptl: Remove stray references to __condvar_load_64_relaxed
- csu: Always use __executable_start in gmon-start.c
- elf: execve statically linked programs instead of crashing [BZ #28648]
- Add --with-timeoutfactor=NUM to specify TIMEOUTFACTOR
Related to: https://fedoraproject.org/wiki/Changes/Make_Authselect_Mandatory
Users are now expected to use authselect to configure the system and packages
should no longer support non-authselect configurations.
/etc/nsswitch.conf is now owned by authselect.
Resolves: rhbz#2023741
Without this, the glibc build fails if annobin hasn't been bootstrapped
against an updated gcc major version. This will likely never happen in
production builds since _annotated_build is always set through
redhat-rpm-config but when testing with annobin disabled (*and* with a
rebased gcc), it may end up unnecessarily making gcc look for annobin.
Upstream commit: 4df1fa6ddc8925a75f3da644d5da3bb16eb33f02
- x86-64: Use notl in EVEX strcmp (#2026399)
- nptl: Increase default TCB alignment to 32
- elf: add definition for ELF_NOTE_FDO and NT_FDO_PACKAGING_METADATA note
- AArch64: Improve A64FX memcpy
- AArch64: Optimize memcmp
- powerpc64[le]: Fix CFI and LR save address for asm syscalls [BZ #28532]
- linux: Implement pipe in terms of __NR_pipe2
- linux: Implement mremap in C
- linux: Add prlimit64 C implementation
- elf: Include <stdbool.h> in tst-tls20.c
- elf: Include <stdint.h> in tst-tls20.c
- hurd: Let report-wait use a weak reference to _hurd_itimer_thread
Upstream commit: 137ed5ac440a4d3cf4178ce97f349b349a9c2c66
- x86-64: Create microbenchmark infrastructure for libmvec
- linux: Use /proc/stat fallback for __get_nprocs_conf (BZ #28624)
- linux: Add fanotify_mark C implementation
- linux: Only build fstatat fallback if required
- regex: fix buffer read overrun in search [BZ#28470]
- x86-64: Add vector sin/sinf to libmvec microbenchmark
- x86-64: Add vector pow/powf to libmvec microbenchmark
- x86-64: Add vector log/logf to libmvec microbenchmark
- x86-64: Add vector exp/expf to libmvec microbenchmark
- x86-64: Add vector cos/cosf to libmvec microbenchmark
- io: Refactor close_range and closefrom
- nptl: Do not set signal mask on second setjmp return [BZ #28607]
- powerpc: Define USE_PPC64_NOTOC iff compiler supports it
- setjmp: Replace jmp_buf-macros.h with jmp_buf-macros.sym
- Update kernel version to 5.15 in tst-mman-consts.py
- socket: Do not use AF_NETLINK in __opensock
- elf: Move la_activity (LA_ACT_ADD) after _dl_add_to_namespace_list() (BZ #28062)
- Add PF_MCTP, AF_MCTP from Linux 5.15 to bits/socket.h
- malloc: Fix malloc debug for 2.35 onwards
- elf: Introduce GLRO (dl_libc_freeres), called from __libc_freeres
- nptl: Extract <bits/atomic_wide_counter.h> from pthread_cond_common.c
Upstream commit: a43c0b5483da4c5e3796af309864cb44256c02db
- x86-64: Create microbenchmark infrastructure for libmvec
- elf: hidden visibility for __minimal_malloc functions
- elf: Use a temporary file to generate Makefile fragments [BZ #28550]
- dso-ordering-test.py: Put all sources in one directory [BZ #28550]
- elf: Move LAV_CURRENT to link_lavcurrent.h
- Move assignment out of the CAS condition
- Add a comment for --enable-initfini-array [BZ #27945]
- tst-tzset: output reason when creating 4GiB file fails
- Add LLL_MUTEX_READ_LOCK [BZ #28537]
- Avoid extra load with CAS in __pthread_mutex_clocklock_common [BZ #28537]
- Avoid extra load with CAS in __pthread_mutex_lock_full [BZ #28537]
- String: Split memcpy tests so that parallel build is faster
- x86: Shrink memcmp-sse4.S code size
- Support C2X printf %b, %B
- Update syscall lists for Linux 5.15
- s390: Use long branches across object boundaries (jgh instead of jh)
This brings the test container in line with Fedora's filesystem layout
and avoids some test failures. For example, because Fedora's CS_PATH is
/usr/bin, tst-vfork3 will try to execute /usr/bin/echo in the container.
Without this change the container installs `echo' in /bin not /usr/bin,
causing the test to fail.
Reviewed-by: DJ Delorie <dj@redhat.com>
Upstream commit: 0bd356df1afb0591470499813d4ebae9bcedd6a6
- Remove the unused +mkdep/+make-deps/s-proto.S/s-proto-cancel.S
- Fix build a chec failures after b05fae4d8e34
- elf: Use the minimal malloc on tunables_strdup
Upstream commit: d3bf2f5927d51258a51ac7fde04f4805f8ee294a
- elf: Do not run DSO sorting if tunables is not enabled
- riscv: Build with -mno-relax if linker does not support R_RISCV_ALIGN
- x86-64: Replace movzx with movzbl
- regex: Unnest nested functions in regcomp.c
- Use Linux 5.15 in build-many-glibcs.py
- elf: Assume disjointed .rela.dyn and .rela.plt for loader
- i386: Explain why __HAVE_64B_ATOMICS has to be 0
- benchtests: Add hypotf
- benchtests: Make hypot input random
- arm: Use have-mtls-dialect-gnu2 to check for ARM TLS descriptors support
- arm: Use internal symbol for _dl_argv on _dl_start_user
- x86-64: Remove Prefer_AVX2_STRCMP
- x86-64: Improve EVEX strcmp with masked load
Upstream commit: 79d0fc65395716c1d95931064c7bf37852203c66
- benchtests: Add acosf function to bench-math
- benchtests: Improve bench-memcpy-random
- Disable -Waggressive-loop-optimizations warnings in tst-dynarray.c
- Fix compiler issue with mmap_internal
- Check if linker also support -mtls-dialect=gnu2
- Fix LIBC_PROG_BINUTILS for -fuse-ld=lld
- elf: Disable ifuncmain{1,5,5pic,5pie} when using LLD
- Handle NULL input to malloc_usable_size [BZ #28506]
- x86_64: Add memcmpeq.S to fix disable-multi-arch build
- login: Add back libutil as an empty library
- riscv: Fix incorrect jal with HIDDEN_JUMPTARGET
- x86_64: Add evex optimized __memcmpeq in memcmpeq-evex.S
- x86_64: Add avx2 optimized __memcmpeq in memcmpeq-avx2.S
- x86_64: Add sse2 optimized __memcmpeq in memcmp-sse2.S
- x86_64: Add support for __memcmpeq using sse2, avx2, and evex
- Benchtests: Add benchtests for __memcmpeq
- String: Add __memcmpeq as build target
- NEWS: Add item for __memcmpeq
- String: Add tests for __memcmpeq
- String: Add hidden defs for __memcmpeq() to enable internal usage
- String: Add support for __memcmpeq() ABI on all targets
- configure: Don't check LD -v --help for LIBC_LINKER_FEATURE
- elf: Make global.out depend on reldepmod4.so [BZ #28457]
- x86: Replace sse2 instructions with avx in memcmp-evex-movbe.S
- bench-math: Sort and put each bench per line
- x86_64: Add missing libmvec ABI tests
- elf: Fix e6fd79f379 build with --enable-tunables=no
- elf: Fix slow DSO sorting behavior in dynamic loader (BZ #17645)
- elf: Testing infrastructure for ld.so DSO sorting (BZ #17645)
- iconv: Use TIMEOUTFACTOR for iconv test timeout
- posix: Remove alloca usage for internal fnmatch implementation
- Add alloc_align attribute to memalign et al
- linux: Fix a possibly non-constant expression in _Static_assert
- x86-64: Add sysdeps/x86_64/fpu/Makeconfig
- Remove glibc-ld-readonly-revert.patch.
Upstream commit e037274c8ec86ca9d491331984b34f30701b23cf:
- stdlib: Fix tst-canon-bz26341 when the glibc build current working
directory is itself using symlinks.
- powerpc: Remove backtrace implementation
- Correct access attribute on memfrob (bug 28475)
- debug: Add tests for _FORTIFY_SOURCE=3
- Make sure that the fortified function conditionals are constant
- Don't add access size hints to fortifiable functions
- glibcextract.py: Place un-assemblable @@@ in a comment
- nss: Unnest nested function add_key
- ld.so: Initialize bootstrap_map.l_ld_readonly [BZ #28340]
- timex: Use 64-bit fields on 32-bit TIMESIZE=64 systems (BZ #28469)
- manual: Update _TIME_BITS to clarify it's user defined
- nptl: Fix tst-cancel7 and tst-cancelx7 pidfile race
- elf: Fix elf_get_dynamic_info() for bootstrap
- hurd if_index: Explicitly use AF_INET for if index discovery
- hurd: Fix intr-msg parameter/stack kludge
- x86-64: Add test-vector-abi.h/test-vector-abi-sincos.h
- elf: Fix dynamic-link.h usage on rtld.c
Upstream commit: f2e06656d04a9fcb0603802a4f8ce7aa3a1f055e
- S390: Add PCI_MIO and SIE HWCAPs
- support: Also return fd when it is 0
- ld.so: Don't fill the DT_DEBUG entry in ld.so [BZ #28129]
- S390: update libm test ulps
- powerpc: update libm test ulps
- math: Also xfail the new j0f tests for ibm128-libgcc
- y2038: Use a common definition for stat for sparc32
- Fix stdlib/tst-setcontext.c for GCC 12 -Warray-compare
- aarch64: update libm test ulps
- Fixed inaccuracy of j0f (BZ #28185)
- Fix stdio-common tests for GCC 12 -Waddress
- benchtests: Building benchmarks as static executables
- elf: Avoid deadlock between pthread_create and ctors [BZ #28357]
- time: Ignore interval nanoseconds on tst-itimer
- io: Do not skip timestamps tests for 32-bit time_t
- Update to Unicode 14.0.0 [BZ #28390]
Upstream commit: eae81d70574e923ce3c59078b8df857ae192efa6:
- nptl: pthread_kill must send signals to a specific thread [BZ #28407]
- support: Add check for TID zero in support_wait_for_thread_exit
- nptl: Add CLOCK_MONOTONIC support for PI mutexes
- support: Add support_mutex_pi_monotonic
- nptl: Use FUTEX_LOCK_PI2 when available
- Linux: Add FUTEX_LOCK_PI2
- Add C2X _PRINTF_NAN_LEN_MAX
- Add exp10 macro to <tgmath.h> (bug 26108)
- elf: Replace nsid with args.nsid [BZ #27609]
- Add missing braces to bsearch inline implementation [BZ #28400]
- Update alpha libm-test-ulps
- Suppress -Wcast-qual warnings in bsearch
- elf: Copy l_addr/l_ld when adding ld.so to a new namespace
- powerpc: Fix unrecognized instruction errors with recent binutils
Upstream commit: 9bd9978639c2f75dbea5c25226264b1ac11fdf05
- Do not declare fmax, fmin _FloatN, _FloatNx versions for C2X
- Do not define tgmath.h fmaxmag, fminmag macros for C2X (bug 28397)
- Add fmaximum, fminimum functions
- Linux: Simplify __opensock and fix race condition [BZ #28353]
- pthread/tst-cancel28: Fix barrier re-init race condition
- powerpc: Delete unneeded ELF_MACHINE_BEFORE_RTLD_RELOC
- posix: Remove spawni.c
- Disable symbol hack in libc_nonshared.a
- linux: Revert the use of sched_getaffinity on get_nproc (BZ #28310)
- linux: Simplify get_nprocs
- misc: Add __get_nprocs_sched
- htl: Fix sigset of main thread
- htl: make pthread_sigstate read/write set/oset outside sigstate section
- Avoid warning: overriding recipe for .../tst-ro-dynamic-mod.so
- benchtests: Improve reliability of memcmp benchmarks
- Define __STDC_IEC_60559_BFP__ and __STDC_IEC_60559_COMPLEX__
- build-many-glibcs.py: add powerpc64le glibc variant without multiarch
- Fix sysdeps/x86/fpu/s_ffma.c for 32-bit FMA processor case
- Linux: Avoid closing -1 on failure in __closefrom_fallback
- i386: Port elf_machine_{load_address,dynamic} from x86-64
- aarch64: Disable A64FX memcpy/memmove BTI unconditionally
- xsysconf: Only fail on error results and errno set
- powerpc64le: Avoid conflicting types for f64xfmaf128 when IFUNC is not used
- Fix ffma use of round-to-odd on x86
- vfprintf: Unify argument handling in process_arg
- vfprintf: Handle floating-point cases outside of process_arg macro
Upstream commit: 2444ce5421c6036a503842d8dd8d93c27aad59ee
- mach lll_lock/unlock: Explicitly request private locking
- elf: Replace most uses of THREAD_GSCOPE_IN_TCB
- Add MADV_POPULATE_READ and MADV_POPULATE_WRITE from Linux 5.14 to
bits/mman-linux.h
- Update kernel version to 5.14 in tst-mman-consts.py
- configure: Fix check for INSERT in linker script
- iconvconfig: Fix behaviour with --prefix [BZ #28199]
- nptl: Fix race between pthread_kill and thread exit (bug 12889)
- nptl: pthread_kill, pthread_cancel should not fail after exit (bug 19193)
- benchtests: Remove redundant assert.h
- benchtests: Enable scripts/plot_strings.py to read stdin
- Add narrowing square root functions
- _Static_assert needs two arguments for compatibility with GCC before 9
- testrun.sh: Add support for --tool=rpctrace
Upstream commit: 89dc0372a9055e7ef86fe19be6201fa0b16b2f0e
- Update syscall lists for Linux 5.14
- Fix failing nss/tst-nss-files-hosts-long with local resolver
- MIPS: Setup errno for {f,l,}xstat
- Use Linux 5.14 in build-many-glibcs.py
- locale: Add missing second argument to _Static_assert in C-collate-seq.c
- Update hppa libm-test-ulps
- Add generic C.UTF-8 locale (Bug 17318)
- Add 'codepoint_collation' support for LC_COLLATE.
- AArch64: Update A64FX memset not to degrade at 16KB
- Revert "AArch64: Update A64FX memset not to degrade at 16KB"
- Remove "Contributed by" lines
- Port shared code information from the wiki
- AArch64: Update A64FX memset not to degrade at 16KB
- posix: remove some iso-8859-encoded characters
- configure: Allow LD to be LLD 13.0.0 or above [BZ #26558]
- hurd msync: Drop bogus test
- hurd: Fix typo in msync
Upstream commit: 9926f6e2eeb374cf729d4bb3f092dd4b36a8f861
- elf: Skip tst-auditlogmod-* if the linker doesn't support --depaudit [BZ #28151]
- powerpc: Use --no-tls-get-addr-optimize in test only if the linker supports it
- x86-64: Remove assembler AVX512DQ check
- x86-64: Remove compiler -mavx512f check
- Use __executable_start as the lowest address for profiling [BZ #28153]
- hurd: Fix errlist error mapping
- hurd: Remove old test-err_np.c file
- Fix iconv build with GCC mainline
- rtld: copy terminating null in tunables_strdup (bug 28256)
- mtrace: Fix output with PIE and ASLR [BZ #22716]
- x86-64: Optimize load of all bits set into ZMM register [BZ #28252]
- Update string/test-memmove.c to cover 16KB copy
- elf: Fix missing colon in LD_SHOW_AUXV output [BZ #28253]
- x86: fix Autoconf caching of instruction support checks [BZ #27991]
- arm: Simplify elf_machine_{load_address,dynamic}
- riscv: Drop reliance on _GLOBAL_OFFSET_TABLE_[0]
- Remove sysdeps/*/tls-macros.h
Upstream commit: b37b75d269883a2c553bb7019a813094eb4e2dd1
- x86_64: Simplify elf_machine_{load_address,dynamic}
- elf: Drop elf/tls-macros.h in favor of __thread and tls_model attributes [BZ #28152] [BZ #28205]
- hurd: Drop fmh kludge
- time: Fix overflow itimer tests on 32-bit systems
- mips: increase stack alignment in clone to match the ABI
- mips: align stack in clone [BZ #28223]
Upstream commit: 4cc79c217744743077bf7a0ec5e0a4318f1e6641
- librt: add test (bug 28213)
- mtrace: Use a static buffer for printing [BZ #25947]
- hurd mmap: Reduce the requested max vmprot
- hurd mmap: Factorize MAP_SHARED flag check
- aarch64: Make elf_machine_{load_address,dynamic} robust [BZ #28203]
- elf: Unconditionally use __ehdr_start
- hurd: Add support for AT_NO_AUTOMOUNT
- [5/5] AArch64: Improve A64FX memset medium loops
- [4/5] AArch64: Improve A64FX memset by removing unroll32
- [3/5] AArch64: Improve A64FX memset for remaining bytes
- [2/5] AArch64: Improve A64FX memset for large sizes
- [1/5] AArch64: Improve A64FX memset for small sizes
- Use binutils 2.37 branch in build-many-glibcs.py
- Add PTRACE_GET_RSEQ_CONFIGURATION from Linux 5.13 to sys/ptrace.h
- librt: fix NULL pointer dereference (bug 28213)
- powerpc64: Add checks for Altivec and VSX in ifunc selection
- powerpc64: Check cacheline size before using optimised memset routines
- powerpc64: Replace some PPC_FEATURE_HAS_VSX with PPC_FEATURE_ARCH_2_06
- Linux: Fix fcntl, ioctl, prctl redirects for _TIME_BITS=64 (bug 28182)
- Add INADDR_DUMMY from Linux 5.13 to netinet/in.h
- tst-mxfast: Don't run with mcheck
- rt: Set the correct message queue for tst-mqueue10
- Update sparc libm-test-ulps
- linux: Add sparck brk implementation
- test-dlclose-exit-race: avoid hang on pthread_create error
- gethosts: Remove unused argument _type
- hurd: Avoid spurious warning
- gaiconf_init: Avoid double-free in label and precedence lists
- copy_and_spawn_sgid: Avoid double calls to close()
- iconv_charmap: Close output file when done
- gconv_parseconfdir: Fix memory leak
- ldconfig: avoid leak on empty paths in config file
- Fix build of nptl/tst-thread_local1.cc with GCC 12
- nis: Fix leak on realloc failure in nis_getnames [BZ #28150]
- Remove obsolete comments/name from several benchtest input files.
- Remove obsolete comments/name from acos-inputs, since slow path was removed.
- Open master branch for glibc 2.35 development
Upstream commit: 77ede5f010f1b144e067ec035e422a13bb57c55d
- socket: Add time64 alias for sendmsg
- socket: Add time64 alias for recvmsg
- socket: Add time64 alias for sendmmsg
- Linux: Add time64 alias for prctl
- io: Add time64 alias for fcntl
- misc: Add time64 alias for ioctl
- RISC-V: Update rv64 ULPs
- resolv: Do not install libnss_dns.a, libnss_dns.so
- hurd: Add support for spawn_do_closefrom
- elf: Fix tst-cpu-features-cpuinfo on some AMD systems (BZ #28090)
- i386: Add the clone3 wrapper
Upstream commit: ee5ed99922ca90bcea4a2f9a48a0c9ae4b534ece
- nss: Directly load nss_dns, without going through dlsym/dlopen
- resolv: Move nss_dns into libc
- resolv: Move res_query functions into libc
- resolv: Move res_mkquery, res_nmkquery into libc
- resolv: Move res_send, res_nsend into libc
- resolv: Move res_hostalias into its own file, along with hostalias
- resolv: Move __res_context_hostalias into its own file and into libc
- resolv: Move res_queriesmatch to its own file and into libc
- resolv: Move res_nameinquery to its own file and into libc
- resolv: Move ns_samename into its own file, and into libc
- resolv: Move ns_makecanon into its own file, and into libc
- resolv: Move res_isourserver to its own file and reformat to GNU style
- resolv: Move __res_get_nsaddr to its own file and into libc
- resolv: Rename res_comp.c to res-name-checking.c and move into libc
- resolv: Move dn_skipname to its own file and into libc
- resolv: Move dn_comp to its own file and into libc
- resolv: Move _getlong, _getshort, __putlong, __putshort to res-putget
- resolv: Move dn_expand to its own file and into libc
- resolv: Move ns_name_compress into its own file and into libc
- resolv: Move ns_name_pack into its own file and into libc
- resolv: Move ns_name_pton into its own file and into libc
- resolv: Move ns_name_uncompress into its own file and into libc
- resolv: Move ns_name_skip to its own file and into libc (bug 28091)
- resolv: Deprecate legacy interfaces in libresolv
- tst-safe-linking: make false positives even more improbable
- htl: Do not expose pthread hidden proto outside libpthread
- elf: Fix a wrong array access on tst-tls20
- elf: Add -Wl,--no-as-needed for tst-tls-manydynamic*mod-dep-bad.so (BZ #28089)
- resolv: Move ns_name_unpack to its own file and into libc
- resolv: Remove unnecessary res_isourserver_p call from send_dg
- resolv: Move ns_name_ntop to its own file and into libc
- nss_dns: Do not use deprecated packet parsing functions
- resolv: Sort Makefile routines and Versions lexicographically
- socket: Add hidden prototype for setsockopt
- elf: Fix DTV gap reuse logic (BZ #27135)
- Fix linknamespace errors and local-plt-usages in nss_files.
- Add static tests for __clone_internal
- x86-64: Add the clone3 wrapper
- Add an internal wrapper for clone, clone2 and clone3
- nss: Fix build error with --disable-nscd
- htl: Fix linking static examples against libpthread
- htl: Let libc call __pthread_mutex_{,try,un}lock
- posix: Ignore non opened files on tst-spawn5
- mcheck: Align struct hdr to MALLOC_ALIGNMENT bytes [BZ #28068]
- Run postun only if the main gconv-modules configuration file exists.
Resolves: #1981013.
- Own %{libdir}/gconv/gconv-modules.d
- Rearrange file list command so that gconv-modules.cache is no longer
marked as %config
Upstream commit: 72e84d1db22203e01a43268de71ea8669eca2863
- Linux: Use 32-bit vDSO for clock_gettime, gettimeofday, time (BZ# 28071)
- Reduce <limits.h> pollution due to dynamic PTHREAD_STACK_MIN
- Fix failing nss/tst-nss-files-hosts-long.
- nis: nis_local_group may read from __nisgroup[-1] (bug 28075)
- hurd _Fork: Drop duplicate malloc_fork_lock calls
- support: Replace _SC_MINSIGSTKSZ with _SC_SIGSTKSZ
- support: Replace MINSIGSTKSZ with sysconf (_SC_MINSIGSTKSZ)
- Define PTHREAD_STACK_MIN to sysconf(_SC_THREAD_STACK_MIN)
- Force building with -fno-common
- Add a generic malloc test for MALLOC_ALIGNMENT
- Properly run tst-spawn5 directly [BZ #28067]
- build-many-glibcs.py: Add glibcs-arm-linux-gnueabihf-thumb
- nptl: Use out-of-line wake function in __libc_lock_unlock slow path
- powerpc64le: Fix typo in configure
- powerpc64: Remove strcspn ifunc from the loader
- x86: Remove wcsnlen-sse4_1 from wcslen ifunc-impl-list [BZ #28064]
- x86-64: Test strlen and wcslen with 0 in the RSI register [BZ #28064]
- x86_64: Remove unneeded static PIE check for undefined weak diagnostic
- Add NT_ARM_PAC_ENABLED_KEYS to elf.h
- posix: Add posix_spawn_file_actions_addclosefrom_np
- io: Add closefrom [BZ #10353]
- linux: Add close_range
- support: Add support_stack_alloc
- _int_realloc is static
- Move mcheck symbol from stdlib to malloc
- nss: Do not install static linker input files for libnss_files
- elf/tests: Make thrlock and noload depend on libm
- Harden tcache double-free check
- nss: Access nss_files through direct references
- nss_files: Move into libc
- nss_files: Add generic code for set*ent, end*ent and file open
- nss_files: Allocate nscd file registration data on the heap
- libio: Replace internal _IO_getdelim symbol with __getdelim
- libio: Add hidden prototype for ungetc
- inet: Add hidden prototype for __inet_network
- Update MIPS libm-test-ulps
- Update powerpc-nofpu libm-test-ulps
- soft-fp: Add __extendhfsf2/__extendhfdf2, __truncsfhf2/__truncdfhf2,
__eqhf2/__nehf2
- Update kernel version to 5.13 in tst-mman-consts.py
- tests-exclude-mcheck: Fix typo
Upstream commit: 7a5db2e82fbb6c3a6e3fdae02b7166c5d0e8c7a8
- elf: Clean up GLIBC_PRIVATE exports of internal libdl symbols
- nptl: Reduce the GLIBC_PRIVATE ABI
- nptl: Remove GLIBC_2.34 versions of __pthread_mutex_lock,
__pthread_mutex_unlock
- nptl: Use internal low-level lock type for !IS_IN (libc)
- glibc.malloc.check: Fix nit in documentation
- Exclude tst-realloc from tests-mcheck
- linux: Fix setsockopt fallback
- linux: Use the expected size for SO_TIMESTAMP{NS} convertion
- linux: Consolidate Linux setsockopt implementation
- linux: Consolidate Linux getsockopt implementation
- manual: fix description for preadv()
Upstream commit: 832f50be6c9c010e46180d14126bbb81f35e808c
- linux: Check for null value msghdr struct before use
- elf: Call free from base namespace on error in dl-libc.c [BZ #27646]
Upstream commit: 91fb0f17a5779da6e7877eb74119a83dbe8bf167
- hooks.c: Remove incorrect comment
- mtrace: Add attribute nocommon to mallwatch
- Move glibc.malloc.check implementation into its own file
- mtrace: Deprecate mallwatch and tr_break
- Drop source dependencies on hooks.c and arena.c
- malloc: Initiate tcache shutdown even without allocations [BZ #28028]
- Add mcheck tests to malloc
- iconvconfig: Use the public feof_unlocked
- resolv: Move libanl into libc (if libpthread is in libc)
- powerpc: optimize strcpy/stpcpy for POWER9/10
- soft-fp: Add __extendhfxf2 and __truncxfhf2
- x86: Check RTM_ALWAYS_ABORT for RTM [BZ #28033]
- Update syscall lists for Linux 5.13
- s390: Fix MEMCHR_Z900_G5 ifunc-variant if n>=0x80000000 [BZ #28024]
- Fix extra PLT reference in libc.so due to __glob64_time64 if build with gcc 7.5 on 32bit.
- AArch64: Add hp-timing.h
- AArch64: Improve strnlen performance
Upstream commit: eb68d7d23cc411acdf68a60f194343a6774d6194
- Linux: Avoid calling malloc indirectly from __get_nprocs (#1975693)
- Use Linux 5.13 in build-many-glibcs.py
Upstream commit: 2c16cb88a6e5ace0fb7cedca86860ea7bde522a7
- Linux: Move timer helper routines from librt to libc
- Linux: Move mq_unlink from librt to libc
- Linux: Move mq_send, mq_timedsend, __mq_timedsend_time64 to libc
- Linux: Move mq_receive, mq_timedreceive, __mq_timedreceive_time64 to libc
- Linux: Move mq_open, __mq_open_2 from librt to libc
- Linux: Move mq_notify from librt to libc
- Linux: Move mq_getattr from librt to libc
- Linux: Move mq_setattr from librt to libc
- Linux: Move mq_close from librt to libc
- Linux: Move lio_listio, lio_listio64 from librt to libc
- rt: Rework lio_listio implementation
- Linux: Move aio_write, aio_write64 into libc
- Linux: Move aio_suspend, aio_suspend64, __aio_suspend_time64 to libc
- Linux: Move aio_return, aio_return64 into libc
- Linux: Move aio_read, aio_read64 into libc
- Linux: Move aio_fsync, aio_fsync64 into libc
- Linux: Move aio_error, aio_error64 into libc
- Linux: Move aio_cancel, aio_cancel64 into libc
- Linux: Move aio_init from librt into libc
- support: Fix xclone build failures on ia64 and hppa
- elf: Disable most of TLS modid gaps processing [BZ #27135]
- elf: Fix glibc-hwcaps priorities with cache flags mismatches [BZ #27046]
- * NEWS: Clarify _TIME_BITS change.
- x86: Remove unnecessary overflow check from wcsnlen-sse4_1.S
- String: Add three more overflow tests cases to test-strnlen.c
- Consolidate pthread_atfork
- posix: Do not clobber errno by atfork handlers
- posix: Consolidate fork implementation
- support: Add xclone
- x86: Fix tst-cpu-features-cpuinfo on Ryzen 9 (BZ #27873)
- x86: Copy IBT and SHSTK usable only if CET is enabled
- x86: Fix overflow bug in wcsnlen-sse4_1 and wcsnlen-avx2 [BZ #27974]
- x86: Fix overflow bug with wmemchr-sse2 and wmemchr-avx2 [BZ #27974]
- String: Add overflow tests for strnlen, memchr, and strncat [BZ #27974]
- x86-64: Add wcslen optimize for sse4.1
- x86-64: Move strlen.S to multiarch/strlen-vec.S
- hurd: Fix build after 52a5fe70a2
- nptl: Use SA_RESTART for SIGCANCEL handler
- doc: _TIME_BITS defaults may change
- More mcheck -> malloc-check refactoring
- Add NEWS item for gconv-modules.d change
- Handle DT_UNKNOWN in gconv-modules.d
- iconvconfig: Use common gconv module parsing function
- gconv_conf: Split out configuration file processing
- gconv_conf: Remove unused variables
- iconv: Remove alloca use in gconv-modules configuration parsing
- Remove unsused symbols from nptl/Versions
- linux: Only use 64-bit syscall if required for clock_nanosleep
- linux: Only use 64-bit syscall if required for internal futex
- linux: Only use 64-bit syscall if required for utimensat family
- linux: Only use 64-bit syscall if required for sigtimedwait
- linux: Only use 64-bit syscall if required for mq_timedsend
- linux: Only use 64-bit syscall if required for mq_timedreceive
- linux: Only use 64-bit syscall if required for timerfd_settime
- linux: Only use 64-bit syscall if required for semtimedop
- linux: timerfd_gettime minor cleanup
- linux: Remove time64-support
- linux: Remove supports_time64 () from clock_gettime
- linux: Remove supports_time64 () from clock_getres
- linux: Only use 64-bit syscall if required for select
- linux: Only use 64-bit syscall if required for pselect
- linux: Only use 64-bit syscall if required for ppoll
- support: Add support_create_timer
- Use 64 bit time_t stat internally
- malloc: Drop __malloc_initialized from Versions
- tst-mcheck: Rename to tst-malloc-check
- Add hidden prototypes for fsync, fdatasync
- nptl: Move pthreadP.h into sysdeps directory
- rt: Move generic implementation from sysdeps/pthread to rt
- rt: Move shm_unlink into libc
- rt: Move shm_open into libc
- rt: Replace generic stub of shm_unlink with the posix version
- rt: Replace generic stub of shm_open with the posix version
- Fix librt-routines-var issues for !PTHREAD_IN_LIBC
- rt: Lexicographically sort Versions file; librt-routines in Makefile
- elf: Use _dl_catch_error from base namespace in dl-libc.c [BZ #27646]
- Makeconfig: Fix time64-compat.mk target
Apparently, debugedit changes the build ID, so the separated debuginfo
no longer matches the specially crafted copy of libc.so.6 with its
minimal .symtab.
Upstream commit: aa9a7f629632c9180de89632d4f2c1e6039f7781
- nptl: Export _pthread_cleanup_push, _pthread_cleanup_pop again
- s390x: Align child stack while clone. [BZ #27968]
- y2038: Add test coverage
- libsupport: Add 64-bit time_t support for stat functions
- libsupport: Add 64-bit time_t support for time functions
- io: Add ftw64 with 64-bit time_t support
- io: Add fts64 with 64-bit time_t support
- posix: Add glob64 with 64-bit time_t support
- y2038: Add support for 64-bit time on legacy ABIs
- time: Add 64-bit time support for getdate
- y2038: Add __USE_TIME_BITS64 support for socket-constants.h
- y2038: Use a common definition for shmid_ds
- y2038: Use a common definition for semid_ds
- y2038: Use a common definition for msqid_ds
- y2038: Use a common definition for stat
- y2038: linux: Add __USE_TIME_BITS64 support for struct timex
- y2038: Add __USE_TIME_BITS64 support for struct utimbuf
- y2038: Add __USE_TIME_BITS64 support for struct timespec
- y2038: Add __USE_TIME_BITS64 support for struct timeval
- y2038: Add __USE_TIME_BITS64 support for time_t
- linux: Add recvvmsg fallback for 64-bit time_t SO_TIMESTAMP{NS}
- linux: Add fallback for 64-bit time_t SO_TIMESTAMP{NS}
- linux: Add fallback for 64-bit time_t SO_{RCV,SND}TIMEO
- linux: s390: Add libanl.abilist in s390 and s390x
- linux: mips: Split libanl.abilist in n32 and n64
- linux: mips: Split librt.abilist in n32 and n64
- Reinstate gconv-modules as the default configuration file
This adds patches proposed upstream to enable downgrades across
major glibc versions.
File list construction and the find-debuginfo.sh wrapper had
to be adjusted to cope with the changed file name patterns.
Auto-sync Upstream commit: ebae2f5a6f971a8f0b6c99e00f9c45ef7433924a
Changes in addition to the sync:
Add a downstream patch[1] to reinstate gconv-modules file and apply
glibc-rh697421.patch after it. Also update spec file to create a new
package glibc-gconv-extra with iconv converter modules that are not
commonly used so that they can be removed in minimal or hardened
installations.
[1] https://sourceware.org/pipermail/libc-alpha/2021-June/127497.html
Auto-sync commits:
- Add build option to disable usage of scv on powerpc
- io: Fix sporadic test failures in io/tst-stat
- nptl: Avoid async cancellation to wrongly update __nptl_nthreads (BZ #19366)
- nptl: Use pthread_kill on pthread_cancel
- nptl: Implement raise in terms of pthread_kill
- nptl: Move cancel type out of cancelhandling
- nptl: Move cancel state out of cancelhandling
- nptl: Remove CANCELING_BITMASK
- nptl: Install cancellation handler on pthread_cancel
- nptl: Deallocate the thread stack on setup failure (BZ #19511)
- Remove stale references to libdl.a
- Fix elf/tst-tls9-static after libdl cleanups.
- iconvdata: Split out non-essential gconv module configuration
- iconvdata: Move gconv-modules configuration to gconv-modules.conf
- gconv_conf: Read configuration files in gconv-modules.d
- iconvconfig: Read configuration from gconv-modules.d subdirectory
- iconvconfig: Make file handling more general purpose
- AArch64: Add support for roundeven[f]
- configure: Replaced obsolete AC_TRY_COMPILE
- libio: Assume _IO_lock_inexpensive
- nptl: Remove exit-thread.h
- Improve test coverage of strnlen function
Upstream commit: ac0353af81a23535f517586a5d04427120a157ac
- This removes libpthread as a separate shared object. New programs
will depend on the GLIBC_2.34 symbol version. Upstream development
brings in the following noteworthy bug fixes:
- ppc64le: scv ABI error handling fails to check IS_ERR_VALUE (#1962971)
- CVE-2021-27645 glibc: Use-after-free in addgetnetgrentX function in
netgroupcache.c (#1932590)
- Linking the main program with jemalloc causes sysconf to deadlock in
audit mode (#1909920)
Glibc on arm has a memory tagging option that can be enabled
via GLIBC_TUNABLES="glibc.mem.tagging=$SOMETHING" when glibc
is built with memory tagging support and the kernel/HW supports
MTE. This should be side effect free unless the user turns it
on with approprate HW support.
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>