Commit Graph

1599 Commits

Author SHA1 Message Date
Arjun Shankar d9759bc576 Auto-sync with upstream branch master
Upstream commit: 8b014a1b1f7aee1e3348db108aeea396359d481e

- Drop glibc-printf-grouping-swbz30068.patch; fix applied upstream

- s390: Fix build for -march=z13
- arm: Support gcc older than 10 for find_zero_all
- Linux: Remove generic Implies
- Linux: Remove unused generic Makefile
- Linux: Assume and consolidate getpeername wire-up syscall
- Linux: Assume and consolidate getsockname wire-up syscall
- Linux: Move wordsize-32 Version to default
- __glob64_time64: Fix typo for stub_warning call (BZ #30146)
- elf: Restore ldconfig libc6 implicit soname logic [BZ #30125]
- stdlib: Undo post review change to 16adc58e73f3 [BZ #27749]
- Define PC, SP and SYSRETURN for hurd x86_64
- mach: Use PAGE_SIZE
- hurd: Simplify init-first.c a bit
- hurd: Make timer_t pointer-sized
- hurd: Fix xattr function return type
- hurd: Use proper integer types
- hurd: Move thread state manipulation into _hurd_tls_new ()
- glob64_time64: Fix typo for stub_warning call (BZ #30146)
- Use uintptr_t instead of performing pointer subtraction with a null pointer
- ARC:fpu: add extra capability check before use of sqrt and fma builtins
- ARC: align child stack in clone
- string: Remove string_private.h
- iconv: Remove _STRING_ARCH_unaligned usage
- iconv: Remove _STRING_ARCH_unaligned usage for get/set macros
- resolv: Remove _STRING_ARCH_unaligned usage
- nscd: Remove _STRING_ARCH_unaligned usage
- stdlib: Simplify getenv
- crypto: Remove _STRING_ARCH_unaligned usage
- Fix ifunc-impl-list.c build for s390
- [hurd] Fix i686 build breakage caused by 4fedebc91108
- C2x strtol binary constant handling
- [hurd] Add MTU_DISCOVER values
- hurd: Fix unwinding over INTR_MSG_TRAP in shared too
- mach: undef ENTRY2
- hurd: i386 TLS tweaks
- stdio: Do not ignore posix_spawn error on popen (BZ #29016)
- update auto-libm-test-out-hypot
- added pair of inputs for hypotf in binary32
- Naming the parameter of dummy_sa_handler
- hurd: Fix tcflag_t and speed_t types on 64-bit
- htl: Remove ./sysdeps/htl/bits/types/struct___pthread_mutex.h
- hurd, htl: Add some x86_64-specific code
- Fix typos in comments
- htl: Generalize i386 pt-machdep.h to x86
- hurd: Set up the basic tree for x86_64-gnu
- mach: Look for mach_i386.defs on x86_64 too
- htl: Fix semaphore reference
- hurd: Fix xattr error value
- mach, hurd: Cast through uintptr_t
- hurd: Use mach_msg_type_number_t where appropriate
- hurd: Refactor readlinkat()
- Use __builtin_FILE instead of __FILE__ in assert in C++.
- hurd: Fix unwinding over INTR_MSG_TRAP
- powerpc64: Add the clone3 wrapper
- string: Disable stack protector in early static initialization
- string: Add libc_hidden_proto for memrchr
- string: Add libc_hidden_proto for strchrnul
- elf: Smoke-test ldconfig -p against system /etc/ld.so.cache
- NEWS: Document CVE-2023-25139.
- Use 64-bit time_t interfaces in strftime and strptime (bug 30053)
- C-SKY: Strip hard float abi from hard float feature.
- S390: Influence hwcaps/stfle via GLIBC_TUNABLES.
- string: Hook up the default implementation on test-strrchr
- string: Hook up the default implementation on test-memrchr
- string: Hook up the default implementation on test-memchr
- string: Hook up the default implementation on test-strcpy
- string: Hook up the default implementation on test-stpcpy
- string: Hook up the default implementation on test-strncmp
- string: Hook up the default implementation on test-strcmp
- string: Hook up the default implementation on test-strchr
- string: Hook up the default implementation on test-strnlen
- string: Hook up the default implementation on test-strlen
- riscv: Add string-fza.h and string-fzi.h
- sh: Add string-fzb.h
- powerpc: Add string-fza.h
- arm: Add string-fza.h
- alpha: Add string-fza, string-fzb.h, string-fzi.h, and string-shift.h
- hppa: Add string-fza.h, string-fzc.h, and string-fzi.h
- hppa: Add memcopy.h
- string: Improve generic strrchr with memrchr and strlen
- string: Improve generic memrchr
- string: Improve generic strnlen with memchr
- string: Improve generic memchr
- string: Improve generic strcpy
- string: Improve generic stpcpy
- string: Improve generic strncmp
- string: Improve generic strcmp
- string: Improve generic strchr
- string: Improve generic strchrnul
- string: Improve generic strlen
- Add string vectorized find and detection functions
- Parameterize OP_T_THRES from memcopy.h
- Parameterize op_t from memcopy.h
- Replace rawmemchr (s, '\0') with strchr
- AArch64: Improve SVE memcpy and memmove
- Account for grouping in printf width (bug 30068)
- Move RETURN_TO to x86/sysdep.h and implement x86_64 version.
- Remove pthread-pi-defines.sym
- stdlib: tests: don't double-define _FORTIFY_SOURCE
- LoongArch: Add new relocation types.
- Remove sysdeps/mach/i386/machine-sp.h
- cdefs: Limit definition of fortification macros
- hurd: Move some i386 bits to x86
- Remove support setting custom demuxers during signal handling.
- hurd: Implement SHM_ANON
- hurd: Implement O_TMPFILE
- hurd: Consolidate file_name_lookup implementation
- Linux: optimize clone3 internal usage
- aarch64: Add the clone3 wrapper
- linux: Add clone3 CLONE_CLEAR_SIGHAND optimization to posix_spawn
- Linux: Do not align the stack for __clone3
- linux: Extend internal clone3 documentation
- linux: Do not reset signal handler in posix_spawn if it is already SIG_DFL
- Open master branch for glibc 2.38 development
2023-02-20 21:34:56 +01:00
Carlos O'Donell 97c044f99a Auto-sync with upstream branch release/2.37/master
Upstream commit: a704fd9a133bfb10510e18702f48a6a9c88dbbd5:

- Create ChangeLog.old/ChangeLog.26. (tag: glibc-2.37)
- Prepare for glibc 2.37 release.
- x86: Fix strncat-avx2.S reading past length [BZ #30065]
- Update install.texi, and regenerate INSTALL.
- Update manual/contrib.texi.
- Update NEWS file with bug fixes.
- Regenerate configure.
- Update all PO files in preparation for release.
- doc: correct _FORTIFY_SOURCE doc in features.h
- libio: Update number of written bytes in dprintf implementation

- Drop already included glibc-dprintf-length.patch patch.
- Apply glibc-printf-grouping-swbz30068.patch to fix swbz#30068.
2023-02-04 14:23:17 -05:00
Florian Weimer 5583ed7061 Auto-sync with upstream branch master
Upstream commit: 2f39e44a8417b4186a7f15bfeac5d0b557e63e03

- Account for octal marker in %#o format (rhbz#2165869)
- Use binutils 2.40 branch in build-many-glibcs.py
- Use MPFR 4.2.0, MPC 1.3.1 in build-many-glibcs.py

- Apply glibc-dprintf-length.patch to fix dprintf return value
  regression.
2023-01-31 17:00:06 +01:00
Florian Weimer 009042dd24 Auto-sync with upstream branch master
Upstream commit: 0d50f477f47ba637b54fb03ac48d769ec4543e8d

- stdio-common: Handle -1 buffer size in __sprintf_chk & co (bug 30039)
- Document '%F' format specifier
- sparc (64bit): Regenerate ulps
- ia64: Regenerate ulps
- Update libc.pot for 2.37 release.
- x86: Cache computation for AMD architecture.
- manual: Fix typo
- Add STATX_DIOALIGN from Linux 6.1 to bits/statx-generic.h
- Add IPPROTO_L2TP from Linux 6.1 to netinet/in.h
- AArch64: Improve strrchr
- AArch64: Optimize strnlen
- AArch64: Optimize strlen
- AArch64: Optimize strcpy
- AArch64: Improve strchrnul
- AArch64: Optimize strchr
- AArch64: Improve strlen_asimd
- AArch64: Optimize memrchr
- AArch64: Optimize memchr
2023-01-25 09:14:47 +01:00
Fedora Release Engineering a37e67f1e1 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 05:05:08 +00:00
Florian Weimer 8a01f7cacb Auto-sync with upstream branch master
Upstream commit: 569cfcc6bf35c28112ca8d7112e9eb4a22bed5b8

- hurd: Fix _NOFLSH value
- elf: Fix GL(dl_phdr) and GL(dl_phnum) for static builds [BZ #29864]
- string: Suppress -Wmaybe-unitialized for wordcopy [BZ #19444]
- scripts/build-many-glibcs.py: Remove unused RANLIB and STRIP option
- configure: Move nm, objdump, and readelf to LIBC_PROG_BINUTILS
2023-01-17 10:01:24 +01:00
Patsy Griffin d000e6b3e6 Auto-sync with upstream branch master
Upstream commit: 2d2d7e1a8f2e62b442ae8978f0a6c17f385575c4

- configure: Allow user override LD, AR, OBJCOPY, and GPROF
- math: Suppress -O0 warnings for soft-fp fsqrt [BZ #19444]
- sunrpc: Suppress GCC -O1 warning on user2netname [BZ #19444]
- locale: Use correct buffer size for utf8_sequence_error [BZ #19444]
- Add HWCAP2_SVE_EBF16 from Linux 6.1 to AArch64 bits/hwcap.h
- Add _FORTIFY_SOURCE implementation documentation [BZ #28998]
- Update copyright dates not handled by scripts/update-copyrights
- Update copyright dates with scripts/update-copyrights
- Remove trailing whitespace in gmp.h
- Remove trailing whitespace
- C2x semantics for <tgmath.h>
- time: Set daylight to 1 for matching DST/offset change (bug 29951)
- Fix ldbl-128 built-in function use
- x86: Check minimum/maximum of non_temporal_threshold [BZ #29953]
- i686: Regenerate ulps
2023-01-11 22:26:53 -05:00
Arjun Shankar 2ceebf21f1 Auto-sync with upstream branch master
Upstream commit: 5f55b22f4b3ea14c777a60f239d25dc4555eb804

- Drop glibc-rh2155825.patch; fix applied upstream

- hurd getcwd: Fix memory leak on error
- hurd fcntl: Make LOCKED macro more robust
- hurd: Make dl-sysdep __sbrk check __vm_allocate call
- htl: Drop duplicate check in __pthread_stack_alloc
- hurd hurdstartup: Initialize remaining fields of hurd_startup_data
- hurd _S_msg_add_auth: Initialize new arrays to 0
- htl: Check error returned by __getrlimit
- getdelim: ensure error indicator is set on error (bug 29917)
- htl: Fix sem_wait race between read and gsync_wait
- Avoid use of atoi in malloc
- Linux: Pass size argument of epoll_create to the kernel
- Simplify scripts/cross-test-ssh.sh configuration.
- Define MADV_COLLAPSE from Linux 6.1
- powerpc64: Increase SIGSTKSZ and MINSIGSTKSZ
- Update all PO files in preparation for release.
- Update kernel version to 6.1 in header constant tests
- Update syscall lists for Linux 6.1
- libio: Convert __vswprintf_internal to buffers (bug 27857)
- libio: Convert __obstack_vprintf_internal to buffers (bug 27124)
- libio: Convert __vdprintf_internal to buffers
- libio: Convert __vasprintf_internal to buffers
- libio: Convert __vsprintf_internal to buffers
- stdio-common: Add lock optimization to vfprintf and vfwprintf
- stdio-common: Convert vfprintf and related functions to buffers
- stdio-common: Add __translated_number_width
- stdio-common: Add __printf_function_invoke
- stdio-common: Introduce buffers for implementing printf
- locale: Implement struct grouping_iterator
- Use Linux 6.1 in build-many-glibcs.py
- Avoid use of atoi in some places in libc
2023-01-02 14:17:02 +01:00
Florian Weimer c3dda3d423 Fix epoll_create regression (#2155825) 2022-12-22 17:23:51 +01:00
Florian Weimer 4024998b40 Auto-sync with upstream branch master
Upstream commit c1c0dea38833751f36a145c322ce53c9a08332e1

- Linux: Remove epoll_create, inotify_init from syscalls.list (#2154747)
- Linux: Reflow and sort some Makefile variables
- mach: Drop remnants of old_CFLAGS
- mach: Fix passing -ffreestanding when checking for gnumach headers
- Force use of -ffreestanding when checking for gnumach headers
- elf: Fix tst-relro-symbols.py argument passing
- x86: Prevent SIGSEGV in memcmp-sse2 when data is concurrently modified [BZ #29863]
- Allow _Qp_fgt in sparc64 localplt.data
2022-12-19 13:32:55 +01:00
DJ Delorie 36c95d06a5 Auto-sync with upstream branch master
Upstream commit: 5dcd2d0ad02ff12c76355ef4f40947c1857ac482

- stdlib: Move _IO_cleanup to call_function_static_weak
- elf: Do not assume symbol order on tst-audit25{a,b}
- time: Use 64 bit time on tzfile
- nscd: Use 64 bit time_t on libc nscd routines (BZ# 29402)
- nis: Build libnsl with 64 bit time_t
- realloc: Return unchanged if request is within usable size
- Linux: Consolidate typesizes.h
- Linux: Make generic fcntl.h the default one
- Linux: make generic xstatver.h the default one
- Linux: Remove generic sysdep
- Linux: Assume and consolidate shutdown wire-up syscall
- Linux: Assume and consolidate listen wire-up syscall
- Linux: Assume and consolidate socketpair wire-up syscall
- Linux: Assume and consolidate socket wire-up syscall
- Linux: Assume and consolidate bind wire-up syscall
- Linux: consolidate ____longjmp_chk
- Linux: consolidate sendfile implementation
- Linux: consolidate unlink implementation
- Linux: consolidate symlink implementation
- Linux: consolidate rmdir implementation
- Linux: consolidate readlink implementation
- Linux: consolidate mkdir implementation
- Linux: consolidate link implementation
- Linux: consolidate lchown implementation
- Linux: consolidate inotify_init implementation
- Lninux: consolidate epoll_create implementation
- Linux: consolidate dup2 implementation
- Linux: consolidate chown implementation
- Linux: consolidate chmod implementation
- linux: Consolidate dl-origin.c
- linux: Use long int for syscall return value
- LoongArch: Use medium cmodel build libc_nonshared.a.
- x86_64: State assembler is being tested on sysdeps/x86/configure
- configure: Remove AS check
- configure: Remove check if ld is GNU
- configure: Remove check if as is GNU
- configure: Move locale tools early
2022-12-12 23:54:54 -05:00
Arjun Shankar 1e3db499d6 Auto-sync with upstream branch master
Upstream commit: 8fb923ddc38dd5f4bfac4869d70fd80483fdb87a

- hurd: Make getrandom cache the server port
- powerpc64: Remove old strncmp optimization
- x86-64 strncpy: Properly handle the length parameter [BZ# 29839]
- x86-64 strncat: Properly handle the length parameter [BZ# 24097]
- ARC: update definitions in elf/elf.h
- scripts: Add "|" operator support to glibcpp's parsing
- Apply asm redirections in syslog.h before first use [BZ #27087]
- LoongArch: Add support for ilogb[f]
- LoongArch: Add support for scalb[f]
- LoongArch: Add support for scalbn[f]
- LoongArch: Use __builtin_logb{,f} with GCC >= 13
- Use GCC builtins for logb functions if desired.
- LoongArch: Use __builtin_llrint{,f} with GCC >= 13
- Use GCC builtins for llrint functions if desired.
- LoongArch: Use __builtin_lrint{,f} with GCC >= 13
- Use GCC builtins for lrint functions if desired.
- LoongArch: Use __builtin_rint{,f} with GCC >= 13
2022-12-05 17:09:03 +01:00
Florian Weimer bbbda714f9 Auto-sync with upstream branch master
Upstream commit: f704192911c6c7b65a54beab3ab369fca7609a5d

- x86/fpu: Factor out shared avx2/avx512 code in svml_{s|d}_wrapper_impl.h
- x86/fpu: Cleanup code in svml_{s|d}_wrapper_impl.h
- x86/fpu: Reformat svml_{s|d}_wrapper_impl.h
- x86/fpu: Fix misspelled evex512 section in variety of svml files
- x86/fpu: Add missing ISA sections to variety of svml files
- stdio-common: Add missing dependencies (bug 29780)
- i386: Avoid rely on linker optimization to avoid relocation
- elf: Fix rtld-audit trampoline for aarch64
- Define in_int32_t_range to check if the 64 bit time_t syscall should be used
2022-11-28 08:11:24 +01:00
Arjun Shankar 7a70647c21 Auto-sync with upstream branch master
Upstream commit: 94628de77888c3292fc103840731ff85f283368e

- elf/tst-tlsopt-powerpc fails when compiled with -mcpu=power10 (BZ# 29776)
- LoongArch: Hard Float Support for fmaximum_mag_num{f/ }, fminimum_mag_num{f/ }.
- LoongArch: Hard Float Support for fmaximum_mag{f/ }, fminimum_mag{f/ }.
- LoongArch: Hard Float Support for fmaxmag{f/ }, fminmag{f/ }.
- LoongArch: Hard Float Support for fmaximum_num{f/ }, fminimum_num{f/ }.
- LoongArch: Hard Float Support for fmaximum{f/ }, fminimum{f/ }.
- LoongArch: Hard Float Support for float-point classification functions.
- LoongArch: Use __builtin_{fma, fmaf} to implement function {fma, fmaf}.
2022-11-14 15:56:37 +01:00
Florian Weimer c22dc5e2f0 Auto-sync with upstream branch master
Upstream commit: 22a46dee24351fd5f4f188ad80554cad79c82524

- Linux: Support __IPC_64 in sysvctl *ctl command arguments (bug 29771)
- riscv: Get level 3 cache's information
- debug: Fix typo in tests-unsupported rule
- iconvdata/tst-table-charmap.sh: remove handling of old, borrowed format
- Makerules: Generate shlib.lds with -fuse-ld=bfd
- x86: Add avx2 optimized functions for the wchar_t strcpy family
- x86: Add evex optimized functions for the wchar_t strcpy family
- x86: Optimize and shrink st{r|p}{n}{cat|cpy}-avx2 functions
- x86: Optimize and shrink st{r|p}{n}{cat|cpy}-evex functions
- benchtests: Make str{n}{cat|cpy} benchmarks output json
- x86: Use VMM API in memcmpeq-evex.S and minor changes
- x86: Use VMM API in memcmp-evex-movbe.S and minor changes
- string: Add len=0 to {w}memcmp{eq} tests and benchtests
- Linux: Add ppoll fortify symbol for 64 bit time_t (BZ# 29746)
- hurd: Add sigtimedwait and sigwaitinfo support
2022-11-10 21:43:41 +01:00
DJ Delorie 1f9fbacd82 Auto-sync with upstream branch master
Upstream commit: 8d291eabd541029d7ac705cc1ea112c58dfbb05f

- Apply asm redirection in gmp.h before first use
- Rewrite find_cxx_header config configure.ac
- elf/tlsdeschtab.h: Add the Malloc return value check in _dl_make_tlsdesc_dynamic()
- elf: Disable some subtests of ifuncmain1, ifuncmain5 for !PIE
- posix: Make posix_spawn extensions available by default
- x86_64: Implement evex512 version of strrchr and wcsrchr
- elf: Introduce <dl-call_tls_init_tp.h> and call_tls_init_tp (bug 29249)
- LoongArch: Fix ABI related macros in elf.h to keep consistent with binutils[1].
- scripts/glibcelf.py: Properly report <elf.h> parsing failures
- elf: Rework exception handling in the dynamic loader [BZ #25486]
- linux: Drop useless include from fstatat.c
- Fix OOB read in stdlib thousand grouping parsing [BZ #29727]
- linux: Fix fstatat on MIPSn64 (BZ #29730)
- elf: Remove allocate use on _dl_debug_printf
- nptl: Fix pthread_create.c build with clang
- allocate_once: Apply asm redirection before first use
- alloc_buffer: Apply asm redirection before first use
- configure: Use -Wno-ignored-attributes if compiler warns about multiple aliases
- Disable use of -fsignaling-nans if compiler does not support it
- intl: Fix clang -Wunused-but-set-variable on plural.c
- Apply asm redirection in not-cancel before first use
- malloc: Use uintptr_t for pointer alignment
- Use uintptr_t in fts for pointer alignment
- Fix build with GCC 13 _FloatN, _FloatNx built-in functions
- elf: Build tst-relr-mod[34]a.so with $(LDFLAGS-rpath-ORIGIN)
- x86-64: Improve evex512 version of strlen functions
- Correctly determine libc.so 'OUTPUT_FORMAT' when cross-compiling.
- Remove unused scratch_buffer_dupfree
- Fix elf/tst-dlmopen-twice not to exhaust static TLS
- Use uintptr_t in string/tester for pointer alignment
- stdlib/strfrom: Add copysign to fix NAN issue on riscv (BZ #29501)
- Fix resource/bug-ulimit1 test
- Fix missing NUL terminator in stdio-common/scanf13 test
- Fix off-by-one OOB read in elf/tst-tls20
- elf: Fix alloca size in _dl_debug_vdprintf
- malloc: Use uintptr_t in alloc_buffer
- Fix invalid pointer dereference in wcpcpy_chk
- Fix invalid pointer dereference in wcscpy_chk
- aarch64: Fix the extension header write in getcontext and swapcontext
- aarch64: Don't build wordcopy
- scripts: Use bool in tunables initializer
- longlong.h: update from GCC for LoongArch clz/ctz support
2022-11-07 16:46:05 -05:00
Patsy Griffin 84cb4d0635 Auto-sync with upstream branch master
Upstream commit: 6f360366f7f76b158a0f4bf20d42f2854ad56264

- elf: Introduce to _dl_call_fini
- ld.so: Export tls_init_tp_called as __rtld_tls_init_tp_called
- scripts/localplt.awk: Handle DT_JMPREL with empty PLT (for C-SKY)
- Remove lingering libSegfault Makefile entries
- aarch64: Use memcpy_simd as the default memcpy
- aarch64: Cleanup memset ifunc
- elf: Reinstate on DL_DEBUG_BINDINGS _dl_lookup_symbol_x
- x86_64: Implement evex512 version of strchrnul, strchr and wcschr
- linux: Fix generic struct_stat for 64 bit time (BZ# 29657)
- manual: Add missing % in int conversion list
- Avoid undefined behaviour in ibm128 implementation of llroundl (BZ #29488)
- Remove all assembly optimizations for htonl and htons
- Remove htonl.S for i386/x86_64
- Fix BZ #29463 in the ibm128 implementation of y1l too
- Add ADDRB from Linux 6.0 to bits/termios-c_cflag.h
- x86: Use `testb` for FSRM check in memmove-vec-unaligned-erms
- x86: Use `testb` for case-locale check in str{n}casecmp-sse42
- x86: Use `testb` for case-locale check in str{n}casecmp-sse2
- x86: Use `testb` for case-locale check in str{n}casecmp-avx2
- x86: Add support for VEC_SIZE == 64 in strcmp-evex.S impl
- x86: Remove AVX512-BVMI2 instruction from strrchr-evex.S
- sysdeps: arm: Fix preconfigure script for ARMv8/v9 targets [BZ #29698]
- nis: Fix nis_print_directory
- linux: Avoid shifting a negative signed on POSIX timer interface
- Bench: Improve benchtests for memchr, strchr, strnlen, strrchr
- x86: Optimize strrchr-evex.S and implement with VMM headers
- x86: Optimize memrchr-evex.S
- x86: Optimize strnlen-evex.S and implement with VMM headers
- x86: Shrink / minorly optimize strchr-evex and implement with VMM headers
- x86: Optimize memchr-evex.S and implement with VMM headers
- x86_64: Implement evex512 version of memchr, rawmemchr and wmemchr
- String: Improve test coverage for memchr
- Use PTR_MANGLE and PTR_DEMANGLE unconditionally in C sources
- Introduce <pointer_guard.h>, extracted from <sysdep.h>
- x86-64: Move LP_SIZE definition to its own header
- math: Fix asin and acos invalid exception with old gcc
- x86: Update strlen-evex-base to use new reg/vec macros.
- x86: Remove now unused vec header macros.
- x86: Update memset to use new VEC macros
- x86: Update memmove to use new VEC macros
- x86: Update memrchr to use new VEC macros
- x86: Update VEC macros to complete API for evex/evex512 impls
- elf: Do not completely clear reused namespace in dlmopen (bug 29600)
- malloc: Switch global_max_fast to uint8_t
- Add NT_S390_PV_CPU_DATA from Linux 6.0 to elf.h
- Add AArch64 HWCAP2_EBF16 from Linux 6.0 to bits/hwcap.h
- String: Improve test coverage for memchr
- elf: Remove -fno-tree-loop-distribute-patterns usage on dl-support
- socket: Use offsetof in SUN_LEN (bug 29578)
- Expose all MAP_ constants in <sys/mman.h> unconditionally (bug 29375)
- LoongArch: Fix the condition to use PC-relative addressing in start.S
- arm: Enable USE_ATOMIC_COMPILER_BUILTINS (BZ #24774)
- csu: Disable stack protector for static-reloc for static-pie
- NEWS: Fix grammar
- elf: Simplify output of hwcap subdirectories in ld.so help
- elf: Remove _dl_string_hwcap
- Add NEWS entry for legacy hwcaps removal
- elf: Remove hwcap and bits_hwcap fields from struct cache_entry
- elf: Remove hwcap parameter from add_to_cache signature
- elf: Remove legacy hwcaps support from ldconfig
- elf: Remove legacy hwcaps support from the dynamic loader
- x86_64: Remove platform directory library loading test
- Update to Unicode 15.0.0 [BZ #29604]
- Update kernel version to 6.0 in header constant tests
- x86: Fix -Os build (BZ #29576)
- sunrpc: Suppress GCC -Os warning on user2netname
- rt: Initialize mq_send input on tst-mqueue{5,6}
- posix: Suppress -Os may be used uninitialized warnings on regexec
- posix: Suppress -Os warnings on fnmatch
- locale: prevent maybe-uninitialized errors with -Os [BZ #19444]
- Regenerate sysdeps/mach/hurd/bits/errno.h
- Update syscall lists for Linux 6.0
- nscd: Drop local address tuple variable [BZ #29607]
- Use Linux 6.0 in build-many-glibcs.py
- x86-64: Require BMI1/BMI2 for AVX2 strrchr and wcsrchr implementations
- x86-64: Require BMI2 and LZCNT for AVX2 memrchr implementation
- x86-64: Require BMI2 for AVX2 (raw|w)memchr implementations
- x86-64: Require BMI2 for AVX2 wcs(n)cmp implementations
- x86-64: Require BMI2 for AVX2 strncmp implementation
- x86-64: Require BMI2 for AVX2 strcmp implementation
- x86-64: Require BMI2 for AVX2 str(n)casecmp implementations
- x86: include BMI1 and BMI2 in x86-64-v3 level
- x86: Cleanup pthread_spin_{try}lock.S
- Benchtests: Add bench for pthread_spin_{try}lock and mutex_trylock
2022-10-27 15:03:13 -04:00
Carlos O'Donell 1cd731cf29 Enable ELF DT_HASH for shared objects and the dynamic loader (#2129358)
Resolves: #2129358
2022-10-17 15:13:38 -04:00
DJ Delorie d4efcab16d Auto-sync with upstream branch master
Upstream commit: 114e299ca66353fa7be1ee45bb4e1307d3de1fa2

- x86: Remove .tfloat usage
- nptl: Convert tst-setuid2 to test-driver
- support: Add xpthread_cond_signal wrapper
- hppa: Fix initialization of dp register [BZ 29635]
- Fix iseqsig for _FloatN and _FloatNx in C++ with GCC 13
- malloc: Do not clobber errno on __getrandom_nocancel (BZ #29624)
- stdlib: Fix __getrandom_nocancel type and arc4random usage (BZ #29638)
- LoongArch: Add static PIE support
- Benchtest: Add additional benchmarks for strlen and strnlen
- x86: Fix wcsnlen-avx2 page cross length comparison [BZ #29591]
- Update _FloatN header support for C++ in GCC 13
- hurd: Fix typo
- get_nscd_addresses: Fix subscript typos [BZ #29605]
- hurd: Increase SOMAXCONN to 4096
- Use atomic_exchange_release/acquire
2022-10-03 14:40:27 -04:00
Patsy Griffin 464d5f14a2 Auto-sync with upstream branch master
Upstream commit: c02e29a0ba47d636281e1a026444a1a0a254aa12

- nss: Use shared prefix in IPv4 address in tst-reload1
- nss: Enhance tst-reload1 coverage and logging
- Use C11 atomics instead of atomic_decrement_and_test
- Use C11 atomics instead of atomic_increment(_val)
- Use C11 atomics instead of atomic_and/or
- malloc: Print error when oldsize is not equal to the current size.
- Use '%z' instead of '%Z' on printf functions
- elf: Extract glibcelf constants from <elf.h>
- scripts: Enhance glibcpp to do basic macro processing
- scripts: Extract glibcpp.py from check-obsolete-constructs.py
- riscv: Remove RV32 floating point functions
- riscv: Consolidate the libm-test-ulps
- hurd: Fix SIOCADD/DELRT ioctls
- hurd: Drop struct rtentry and in6_rtmsg
- hurd: Add _IOT_ifrtreq to <net/route.h>
- elf: Use C11 atomics on _dl_mcount
- hurd: Use IF_NAMESIZE rather than IFNAMSIZ
- hurd: Add ifrtreq structure to net/route.h
- hppa: undef __ASSUME_SET_ROBUST_LIST
- linux: Use same type for MMAP2_PAGE_UNIT
- m68k: Enforce 4-byte alignment on internal locks (BZ #29537)
- nss: Fix tst-nss-files-hosts-long on single-stack hosts (bug 24816)
- nss: Implement --no-addrconfig option for getent
- gconv: Use 64-bit interfaces in gconv_parseconfdir (bug 29583)
- elf: Implement force_first handling in _dl_sort_maps_dfs (bug 28937)
- Linux: Do not skip d_ino == 0 entries in readdir, readdir64 (bug 12165)
- hurd: Factorize at/non-at functions
- tst-sprintf-errno: Update Hurd message length
- RISC-V: Allow long jumps to __syscall_error
- hurd: Make readlink* just reopen the file used for stat
- hurd: Fix readlink() hanging on fifo
- Fix BRE typos in check-safety.sh
- Makerules: fix MAKEFLAGS assignment for upcoming make-4.4 [BZ# 29564]
- Use relaxed atomics since there is no MO dependence
2022-09-24 23:14:57 -04:00
Florian Weimer aa0d1b7d9f Bump release 2022-09-14 14:00:17 +02:00
Florian Weimer b400cead41 Remove .annobin* symbols from ld.so (#2126477) 2022-09-14 13:59:13 +02:00
Florian Weimer 885b520a6d Auto-sync with upstream branch master
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
2022-09-13 13:20:15 +02:00
Arjun Shankar 8e2d77f734 Retain libc.so.6 debuglink section, remove ld.so debuginfo file (#2090744)
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>
2022-09-05 16:24:44 +02:00
DJ Delorie cfb2790658 Auto-sync with upstream branch master
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
2022-08-30 17:21:40 -04:00
Arjun Shankar 318ee02db8 Auto-sync with upstream branch master
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
2022-08-22 16:28:04 +02:00
Patsy Griffin c6f93d2f6d Auto-sync with upstream branch master
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
2022-08-18 15:19:38 -04:00
Florian Weimer 6c465d0ed7 Rotate changelog 2022-08-15 07:24:44 +02:00
Florian Weimer ae30d62333 Auto-sync with upstream branch master
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
2022-08-15 07:24:29 +02:00
Carlos O'Donell f6ffd58424 Auto-sync with upstream branch release/2.36/master
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.
2022-08-05 10:24:15 -04:00
Arjun Shankar 78f6644069 Auto-sync with upstream branch master
Upstream commit: eaad4f9e8f07fc43618f6c8635a7e82831a423dd

- arc4random: simplify design for better safety
- LoongArch: Update NEWS and README for the LoongArch port.
- LoongArch: Update build-many-glibcs.py for the LoongArch Port.
- LoongArch: Hard Float Support
- LoongArch: Build Infrastructure
- LoongArch: Add ABI Lists
- LoongArch: Linux ABI
- LoongArch: Linux Syscall Interface
- LoongArch: Atomic and Locking Routines
- LoongArch: Generic <math.h> and soft-fp Routines
- LoongArch: Thread-Local Storage Support
- LoongArch: ABI Implementation
- LoongArch: Add relocations and ELF flags to elf.h and scripts/glibcelf.py
- LoongArch: Add LoongArch entries to config.h.in
- struct stat is not posix conformant on microblaze with __USE_FILE_OFFSET64
- Linux: dirent/tst-readdir64-compat needs to use TEST_COMPAT (bug 27654)
- manual: Add documentation for arc4random functions
- s390x: Add optimized chacha20
- powerpc64: Add optimized chacha20
- x86: Add AVX2 optimized chacha20
- x86: Add SSE2 optimized chacha20
- aarch64: Add optimized chacha20
- benchtests: Add arc4random benchtest
- stdlib: Add arc4random tests
- stdlib: Add arc4random, arc4random_buf, and arc4random_uniform (BZ #4417)
- locale: Optimize tst-localedef-path-norm
- malloc: Simplify implementation of __malloc_assert
- Update scripts/config.* files from upstream GNU config version
- linux: return UNSUPPORTED from tst-mount if entering mount namespace fails
2022-07-27 15:50:14 +02:00
Fedora Release Engineering 6501ce7544 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 06:26:14 +00:00
Patsy Griffin 8cafb3e464 Auto-sync with upstream branch master
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
2022-07-17 23:02:38 -04:00
Stephen Gallagher 1bfc6912f1 Modify glibc autorequires to exclude %dist
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>
2022-07-08 13:48:36 +02:00
Florian Weimer 70cb41fd34 ppc64le: Increase Clang compatibility of float128 redirects (#2100546) 2022-07-05 12:17:25 +02:00
Florian Weimer 5d92a61711 Auto-sync with upstream branch master
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
2022-07-05 11:07:58 +02:00
Florian Weimer 5c27a7014b Remove egrep uses that have crept back in
egrep will start to warn in the next coreutils release.
2022-07-05 11:03:37 +02:00
Florian Weimer 9d11138b6b Inherit -fno-omit-frame-pointer, -mno-omit-leaf-frame-pointer flags
This is in support of a potential performance experiment.
2022-07-05 11:03:37 +02:00
Carlos O'Donell f83c4f6ffc Auto-sync with upstream branch master
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
2022-07-04 15:08:51 -04:00
DJ Delorie 0ce8105155 Rebuild for fixed CI test for bz699724
Bumped NVR to rerun CI/CD against fixed regression test.
2022-06-29 16:59:29 -04:00
DJ Delorie d760d0071f Auto-sync with upstream branch master
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
2022-06-28 17:30:04 -04:00
Arjun Shankar 4dd3af9227 Auto-sync with upstream branch master
Upstream commit: e5446dfea11e969212939197b606424a718d9b65

- i386: Fix include paths for strspn, strcspn, and strpbrk
- elf: Silence GCC 11/12 false positive warning
- x86: Rename generic functions with unique postfix for clarity
- x86: Add BMI1/BMI2 checks for ISA_V3 check
- x86-64: Handle fewer relocation types for RTLD_BOOTSTRAP
- aarch64: Handle fewer relocations for RTLD_BOOTSTRAP
- riscv: Change the relocations handled for RTLD_BOOTSTRAP
- x86: Cleanup bounds checking in large memcpy case
- x86: Add bounds `x86_non_temporal_threshold`
- Remove remnant reference to ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA
- elf: Remove ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA
- x86: Add sse42 implementation to strcmp's ifunc
- x86: Fix misordered logic for setting `rep_movsb_stop_threshold`
- elf: Refine direct extern access diagnostics to protected symbol
- Avoid -Wstringop-overflow= warning in iconv module.
- Add bounds check to __libc_ifunc_impl_list
- libio: Avoid RMW of flags2 outside lock (BZ #27842)
- x86: Optimize svml_s_tanhf4_core_sse4.S
- x86: Optimize svml_s_tanhf8_core_avx2.S
- x86: Add data file that can be shared by tanhf-avx2 and tanhf-sse4
- x86: Optimize svml_s_tanhf16_core_avx512.S
- x86: Improve svml_s_atanhf4_core_sse4.S
- x86: Improve svml_s_atanhf8_core_avx2.S
- x86: Improve svml_s_atanhf16_core_avx512.S
- x86: Align varshift table to 32-bytes
- x86: Add copyright to strpbrk-c.c
2022-06-20 17:20:35 +02:00
Florian Weimer c048a40645 Auto-sync with upstream branch master
Upstream commit: ace9e3edbca62d978b1e8f392d8a5d78500272d9

- nss: handle stat failure in check_reload_and_get (BZ #28752)
- nss: add assert to DB_LOOKUP_FCT (BZ #28752)
- x86: Fix page cross case in rawmemchr-avx2 [BZ #29234]
- nptl_db: disable DT_RELR on libthread_db.so
- elf: add missing newlines in lateglobal test
- nptl: Fix __libc_cleanup_pop_restore asynchronous restore (BZ#29214)
- x86: ZERO_UPPER_VEC_REGISTERS_RETURN_XTEST expect no transactions
- x86: Shrink code size of memchr-evex.S
- x86: Shrink code size of memchr-avx2.S
- x86: Optimize memrchr-avx2.S
- x86: Optimize memrchr-evex.S
- x86: Optimize memrchr-sse2.S
- Benchtests: Improve memrchr benchmarks
- x86: Add COND_VZEROUPPER that can replace vzeroupper if no `ret`
- x86: Create header for VEC classes in x86 strings library
- powerpc: Fix VSX register number on __strncpy_power9 [BZ #29197]
- AArch64: Sort makefile entries
- AArch64: Add SVE memcpy
- x86_64: Add strstr function with 512-bit EVEX
- scripts/glibcelf.py: Add PT_AARCH64_MEMTAG_MTE constant
2022-06-09 09:46:58 +02:00
Carlos O'Donell 6dd1d1f29e Auto-sync with upstream branch master
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
2022-06-06 12:29:45 -04:00
Arjun Shankar 221d1d8371 Auto-sync with upstream branch master
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
2022-05-26 00:15:13 +02:00
DJ Delorie 9a389a777e Auto-sync with upstream branch master
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
2022-05-23 14:48:40 -04:00
Arjun Shankar eb33d47394 Auto-sync with upstream branch master
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
2022-05-16 15:16:02 +02:00
Patsy Griffin deac763a04 Auto-sync with upstream branch master
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
2022-05-10 17:42:01 -04:00
Florian Weimer e07803b911 Auto-sync with upstream branch master
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
2022-05-03 09:27:11 +02:00
Carlos O'Donell 1be721e225 Auto-sync with upstream branch master
Upstream commit: 1305edd42c44fee6f8660734d2dfa4911ec755d6

- elf: Move post-relocation code of _dl_start into _dl_start_final
- misc: Fix rare fortify crash on wchar funcs. [BZ 29030]
- elf: Remove unused enum allowmask
- scripts/glibcelf.py: Mark as UNSUPPORTED on Python 3.5 and earlier
- x86: Optimize {str|wcs}rchr-evex
- x86: Optimize {str|wcs}rchr-avx2
- x86: Optimize {str|wcs}rchr-sse2
- benchtests: Improve bench-strrchr
- x86-64: Fix SSE2 memcmp and SSSE3 memmove for x32
- Default to --with-default-link=no (bug 25812)
- scripts: Add glibcelf.py module
- Add locale for syr_SY
- elf: Move elf_dynamic_do_Rel RTLD_BOOTSTRAP branches outside
- m68k: Handle fewer relocations for RTLD_BOOTSTRAP (#BZ29071)
- nptl: Fix pthread_cancel cancelhandling atomic operations
- x86: Fix missing __wmemcmp def for disable-multiarch build
- elf: Remove __libc_init_secure
2022-04-26 09:21:36 -04:00