From a4c56122fa1b97d165556a3b2fe82a5f74c8dec8 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Tue, 22 Jun 2021 20:28:13 +0200 Subject: [PATCH] Import first glibc 2.34 snapshot (#1958224) This merges rawhide commit 063fe63eafa95997fdb27c1015629aa64c21758 (glibc-2.33.9000-24.fc35). Resolves: #1870027 Resolves: #1924207 Resolves: #1948645 Resolves: #1950057 Resolves: #1958224 Resolves: #1966471 --- ChangeLog.old | 9595 ------------------------------- glibc-cpu-check-1.patch | 64 - glibc-cpu-check-2.patch | 73 - glibc-cpu-check-3.patch | 62 - glibc-libthread_db-dynsym.patch | 191 + glibc-nosymlink-1.patch | 31 + glibc-nosymlink-2.patch | 78 + glibc-nosymlink-3.patch | 129 + glibc-nosymlink-4.patch | 158 + glibc-rh697421.patch | 21 - glibc-rh819430.patch | 93 - glibc-upstream-2.33-1.patch | 42 - glibc-upstream-2.33-10.patch | 165 - glibc-upstream-2.33-11.patch | 179 - glibc-upstream-2.33-12.patch | 40 - glibc-upstream-2.33-13.patch | 241 - glibc-upstream-2.33-14.patch | 193 - glibc-upstream-2.33-15.patch | 162 - glibc-upstream-2.33-16.patch | 77 - glibc-upstream-2.33-17.patch | 196 - glibc-upstream-2.33-18.patch | 42 - glibc-upstream-2.33-19.patch | 102 - glibc-upstream-2.33-2.patch | 364 -- glibc-upstream-2.33-20.patch | 100 - glibc-upstream-2.33-21.patch | 32 - glibc-upstream-2.33-22.patch | 62 - glibc-upstream-2.33-23.patch | 110 - glibc-upstream-2.33-24.patch | 128 - glibc-upstream-2.33-25.patch | 80 - glibc-upstream-2.33-26.patch | 72 - glibc-upstream-2.33-27.patch | 171 - glibc-upstream-2.33-28.patch | 96 - glibc-upstream-2.33-29.patch | 122 - glibc-upstream-2.33-3.patch | 35 - glibc-upstream-2.33-30.patch | 55 - glibc-upstream-2.33-31.patch | 24 - glibc-upstream-2.33-32.patch | 462 -- glibc-upstream-2.33-33.patch | 244 - glibc-upstream-2.33-34.patch | 154 - glibc-upstream-2.33-35.patch | 164 - glibc-upstream-2.33-36.patch | 34 - glibc-upstream-2.33-37.patch | 28 - glibc-upstream-2.33-38.patch | 295 - glibc-upstream-2.33-39.patch | 131 - glibc-upstream-2.33-4.patch | 67 - glibc-upstream-2.33-40.patch | 22 - glibc-upstream-2.33-41.patch | 32 - glibc-upstream-2.33-5.patch | 62 - glibc-upstream-2.33-6.patch | 52 - glibc-upstream-2.33-7.patch | 580 -- glibc-upstream-2.33-8.patch | 113 - glibc-upstream-2.33-9.patch | 146 - glibc.spec | 2754 ++++++++- sources | 2 +- template.patch | 11 - wrap-find-debuginfo.sh | 120 +- 56 files changed, 3297 insertions(+), 15561 deletions(-) delete mode 100644 glibc-cpu-check-1.patch delete mode 100644 glibc-cpu-check-2.patch delete mode 100644 glibc-cpu-check-3.patch create mode 100644 glibc-libthread_db-dynsym.patch create mode 100644 glibc-nosymlink-1.patch create mode 100644 glibc-nosymlink-2.patch create mode 100644 glibc-nosymlink-3.patch create mode 100644 glibc-nosymlink-4.patch delete mode 100644 glibc-rh697421.patch delete mode 100644 glibc-rh819430.patch delete mode 100644 glibc-upstream-2.33-1.patch delete mode 100644 glibc-upstream-2.33-10.patch delete mode 100644 glibc-upstream-2.33-11.patch delete mode 100644 glibc-upstream-2.33-12.patch delete mode 100644 glibc-upstream-2.33-13.patch delete mode 100644 glibc-upstream-2.33-14.patch delete mode 100644 glibc-upstream-2.33-15.patch delete mode 100644 glibc-upstream-2.33-16.patch delete mode 100644 glibc-upstream-2.33-17.patch delete mode 100644 glibc-upstream-2.33-18.patch delete mode 100644 glibc-upstream-2.33-19.patch delete mode 100644 glibc-upstream-2.33-2.patch delete mode 100644 glibc-upstream-2.33-20.patch delete mode 100644 glibc-upstream-2.33-21.patch delete mode 100644 glibc-upstream-2.33-22.patch delete mode 100644 glibc-upstream-2.33-23.patch delete mode 100644 glibc-upstream-2.33-24.patch delete mode 100644 glibc-upstream-2.33-25.patch delete mode 100644 glibc-upstream-2.33-26.patch delete mode 100644 glibc-upstream-2.33-27.patch delete mode 100644 glibc-upstream-2.33-28.patch delete mode 100644 glibc-upstream-2.33-29.patch delete mode 100644 glibc-upstream-2.33-3.patch delete mode 100644 glibc-upstream-2.33-30.patch delete mode 100644 glibc-upstream-2.33-31.patch delete mode 100644 glibc-upstream-2.33-32.patch delete mode 100644 glibc-upstream-2.33-33.patch delete mode 100644 glibc-upstream-2.33-34.patch delete mode 100644 glibc-upstream-2.33-35.patch delete mode 100644 glibc-upstream-2.33-36.patch delete mode 100644 glibc-upstream-2.33-37.patch delete mode 100644 glibc-upstream-2.33-38.patch delete mode 100644 glibc-upstream-2.33-39.patch delete mode 100644 glibc-upstream-2.33-4.patch delete mode 100644 glibc-upstream-2.33-40.patch delete mode 100644 glibc-upstream-2.33-41.patch delete mode 100644 glibc-upstream-2.33-5.patch delete mode 100644 glibc-upstream-2.33-6.patch delete mode 100644 glibc-upstream-2.33-7.patch delete mode 100644 glibc-upstream-2.33-8.patch delete mode 100644 glibc-upstream-2.33-9.patch delete mode 100644 template.patch diff --git a/ChangeLog.old b/ChangeLog.old index 00fddaf..2afbfc5 100644 --- a/ChangeLog.old +++ b/ChangeLog.old @@ -1,9598 +1,3 @@ -* Wed Jan 27 2021 Arjun Shankar - 2.32.9000-29 -- Auto-sync with upstream branch master, - commit df359a25ba6f6bda06104229fbfe284c1fb30915: -- Revert "Make libc symbols hidden in static PIE" [BZ #27237] -- benchtests: Do not build bench-timing-type with MODULE_NAME=libc -- aarch64: Fix the list of tested IFUNC variants [BZ #26818] -- Update INSTALL with package versions that are known to work -- aarch64: Move and update the definition of MTE_ENABLED -- Fix misplaced const -- Update C-SKY libm-test-ulps -- manual: Correct argument order in mount examples [BZ #27207] -- linux: mips: Fix getdents64 fallback on mips64-n32 -- x86: Properly match CPU features in /proc/cpuinfo [BZ #27222] -- x86-64: Update tst-glibc-hwcaps-2.c for x86-64 baseline -- powerpc64: Select POWER9 machine for the scv instruction -- x86: Check ifunc resolver with CPU_FEATURE_USABLE [BZ #27072] -- Revert "linux: Move {f}xstat{at} to compat symbols" for static build -- aarch64: revert memcpy optimze for kunpeng to avoid performance degradation -- Make libc symbols hidden in static PIE -- csu: Move static pie self relocation later [BZ #27072] -- Use hidden visibility for early static PIE code -- csu: Avoid weak ref for __ehdr_start in static PIE -- configure: Check for static PIE support -- elf: Avoid RELATIVE relocs in __tunables_init -- elf: Make the tunable struct definition internal only -- : Remove the C preprocessor magic -- posix: Fix fnmatch.c on bootstrap -- stdlib: Add testcase for BZ #26241 -- posix: Fix regex_internal.h on bootstrap -- Use in __libc_init_secure -- elf: Avoid RELATIVE relocation for _dl_sysinfo -- libmvec: Add extra-test-objs to test-extras -- Hurd: Add rtld-strncpy-c.c -- Update MIPS libm-test-ulps. -- Update arm libm-test-ulps. -- Update powerpc-nofpu libm-test-ulps. -- Update hppa libm-test-ulps -- ARC: nofpu: Regenerate ulps -- ld.so: Add --list-tunables to print tunable values -- math/test-tgmath2: Fix fabs failure when no long double -- x86: Move x86 processor cache info to cpu_features -- Fix x86 build with --enable-tunable=no -- ifuncmain6pie: Remove the circular IFUNC dependency [BZ #20019] - -* Tue Jan 26 2021 Fedora Release Engineering - 2.32.9000-28 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Sat Jan 23 2021 Arjun Shankar - 2.32.9000-27 -- Introduce new glibc-doc.noarch subpackage (#1346925) -- Move the reference manual info pages from glibc-devel to glibc-doc -- Move debugger interface documentation from glibc to glibc-doc -- Remove unnecessary README, INSTALL, NEWS files from glibc -- Remove unnecessary README.timezone and gai.conf files from glibc-common - -* Thu Jan 14 2021 Arjun Shankar - 2.32.9000-26 -- Deprecate nscd (#1905135) -- https://fedoraproject.org/wiki/Changes/DeprecateNSCD - -* Wed Jan 13 2021 Carlos O'Donell - 2.32.9000-25 -- Auto-sync with upstream branch master, - commit cf1290064598def8dfeddec3d86d98495aee1fba: -- Use the right argument code in unnormal tests -- ldconfig/x86: Store ISA level in cache and aux cache -- elf: work around a gcc bug in elf_get_dynamic_info -- x86: Set header.feature_1 in TCB for always-on CET [BZ #27177] -- posix: consume less entropy on tempname -- Makerules: Do not require startup files for format.lds probe object -- install: Replace scripts/output-format.sed with objdump -f [BZ #26559] -- math: Add BZ#18980 fix back on dbl-64 cosh -- posix: Sync tempname with gnulib [BZ #26648] -- posix: Fix return value of system if shell can not be executed [BZ #27053] -- support: Add xchmod wrapper -- Update STATX_ATTR_DAX value from Linux 5.10. -- riscv: Initialize $gp before resolving the IRELATIVE relocation -- riscv: support GNU indirect function -- posix: Correct attribute access mode on readlinkat [BZ #27024]. -- Add xfchmod to libsupport -- Add xchdir to libsupport. -- POSIX locale: Fix typo in comment -- ARC: Regenerate ulps -- mntent: Use __putc_unlocked instead of fputc_unlocked -- aarch64: define PI_STATIC_AND_HIDDEN -- Update NEWS for CVE-2019-25013. -- x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker [BZ #26717] -- Remove dbl-64/wordsize-64 (part 2) -- Remove dbl-64/wordsize-64 -- Add SEGV_MTEAERR and SEGV_MTESERR from Linux 5.10. -- support: Add support_small_thread_stack_size -- stdlib: Sync canonicalize with gnulib [BZ #10635] [BZ #26592] [BZ #26341] [BZ #24970] -- malloc: Add scratch_buffer_dupfree -- Import filename.h from gnulib -- Import idx.h from gnulib -- alpha: Provide wait4 for static library [BZ #27150] -- aarch64: push the set of rules before falling into slow path -- nptl: Fix comment typo in pthread_cond_wait.c -- x86: Check IFUNC definition in unrelocated executable [BZ #20019] -- hurd: Fix mmap(!MAP_FIXED) on bogus address - -* Mon Jan 04 2021 Florian Weimer - 2.32.9000-24 -- Drop glibc-fedora-__libc_multiple_libcs.patch. Replaced by upstream's - __libc_initial flag. -- Adjust glibc-rh819430.patch to upstream's gnulib merge of fnmatch. -- Disable -Werror again due to GCC PR98512. -- Auto-sync with upstream branch master, - commit 3ec5d83d2a237d39e7fd6ef7a0bc8ac4c171a4a5: -- x86-64: Avoid rep movsb with short distance [BZ #27130] -- aarch64: fix stack missing after sp is updated -- nptl: Remove set*id, set*gid files which are not built -- Drop nan-pseudo-number.h usage from tests -- posix: Sync fnmatch with gnulib -- Sync flexmember.h with gnulib -- Sync intprops.h with gnulib -- posix: Sync glob code with gnulib -- posix: Sync regex code with gnulib -- Move generic nan-pseudo-number.h to ldbl-96 -- Sync FDL from https://www.gnu.org/licenses/fdl-1.3.texi -- Sync move-if-change from Gnulib -- Update automatically-generated copyright dates -- Update copyright dates not handled by scripts/update-copyrights. -- Update copyright dates with scripts/update-copyrights -- aarch64: use PTR_ARG and SIZE_ARG instead of DELOUSE -- nonstring: Enable __FORTIFY_LEVEL=3 -- string: Enable __FORTIFY_LEVEL=3 -- Introduce _FORTIFY_SOURCE=3 -- Warn on unsupported fortification levels -- powerpc: Use scv instruction on clone when available -- powerpc: Runtime selection between sc and scv for syscalls -- malloc: preserve errno on mcheck hooks [BZ #17924] -- x86 long double: Add tests for pseudo normal numbers -- x86 long double: Consider pseudo numbers as signaling -- io: Remove xmknod{at} implementations -- io: Remove xstat implementations -- free: preserve errno [BZ#17924] -- hurd: Accept including hurd/version.h -- hurd: Add WSTOPPED/WCONTINUED/WEXITED/WNOWAIT support [BZ #23091] -- support: Make support_process_state_wait wait less -- hurd: set sigaction for signal preemptors in arch-independent file -- hurd: Fix spawni SPAWN_XFLAGS_TRY_SHELL with empty argv -- hurd: Try shell in posix_spawn* only in compat mode -- Remove _ISOMAC check from -- x86: Remove the duplicated CPU_FEATURE_CPU_P -- Partially revert 681900d29683722b1cb0a8e565a0585846ec5a61 -- x86 long double: Support pseudo numbers in isnanl -- x86 long double: Support pseudo numbers in fpclassifyl -- MTE: Do not pad size in realloc_check -- tests-mcheck: New variable to run tests with MALLOC_CHECK_=3 -- elf: Account for glibc-hwcaps/ prefix in _dl_important_hwcaps -- misc: Use __ferror_unlocked instead of ferror -- s390x: Regenerate ulps -- powerpc: Regenerate ulps -- addmntent: Remove unbounded alloca usage from getmntent [BZ#27083] -- : Add Intel LAM support -- i386: Regenerate ulps -- aarch64: update ulps. -- aarch64: Add aarch64-specific files for memory tagging support -- aarch64: Add sysv specific enabling code for memory tagging -- linux: Add compatibility definitions to sys/prctl.h for MTE -- malloc: Basic support for memory tagging in the malloc() family -- elf: Add a tunable to control use of tagged memory -- config: Allow memory tagging to be enabled when configuring glibc -- alpha: Remove anonymous union in struct stat [BZ #27042] -- add inputs to auto-libm-test-in yielding larger errors (binary64, x86_64) -- m68k: fix clobbering a5 in setjmp() [BZ #24202] -- iconv add iconv_close before the function returned with bad value. -- iconv: use iconv_close after iconv_open -- Fix buffer overrun in EUC-KR conversion module (bz #24973) -- hurd: Make trampoline fill siginfo ss_sp from sc_uesp -- Hurd: make sigstates hold a reference on thread ports -- profil-counter: Add missing SIGINFO case -- hurd: implement SA_SIGINFO signal handlers. -- hurd: Fix ELF_MACHINE_USER_ADDRESS_MASK value -- hurd: Note when the vm_map kernel bug was fixed -- hurd: Also turn KERN_INVALID_ADDRESS to EINVAL -- ieee754: Remove unused __sin32 and __cos32 -- ieee754: Remove slow paths from asin and acos -- getenv: Move call to strlen to the branch it's used in. -- Update kernel version to 5.10 in tst-mman-consts.py. -- s390x: Require GCC 7.1 or later to build glibc. -- malloc: Use __libc_initial to detect an inner libc -- Replace __libc_multiple_libcs with __libc_initial flag -- {nptl,htl}/semaphoreP.h: clean up -- htl: Get sem_open/sem_close/sem_unlink support [BZ #25524] -- pthread: Move semaphore initialization for open to semaphoreP.h -- Mark __libc_freeres_fn as used [BZ #27002] -- Update syscall lists for Linux 5.10. -- htl: Add pshared semaphore support -- hurd: Add LLL_PRIVATE and LLL_SHARED -- hurd: Add __libc_open and __libc_close -- htl: Add futex-internal.h -- hurd: Add __lll_abstimed_wait_intr -- hurd: make lll_* take a variable instead of a ptr -- hurd: Rename LLL_INITIALIZER to LLL_LOCK_INITIALIZER -- Use Linux 5.10 in build-many-glibcs.py. - -* Wed Dec 16 2020 DJ Delorie - 2.32.9000-23 -- Fix conditionals for _enable_debug_packages and benchtests [BZ #1902514] - -* Tue Dec 15 2020 Patsy Griffin - 2.32.9000-22 -- Auto-sync with upstream branch master, - commit 4d0985543f479a6f421d4d8a9e0d1dc71c9c2c53. -- elf: Record libc.so link map when it is the main program (bug 20972) -- Use GMP 6.2.1 in build-many-glibcs.py. -- aarch64: remove the strlen_asimd symbol -- aarch64: fix static PIE start code for BTI [BZ #27068] -- elf: Fix failure handling in _dl_map_object_from_fd -- elf: inline lose for error handling -- Remove strtoimax, strtoumax, wcstoimax, wcstoumax inlines -- nsswitch: handle missing actions properly -- x86: Remove the default REP MOVSB threshold tunable value [BZ #27061] -- elf.h: Remove SHF_GNU_BUILD_NOTE. -- elf.h: fix spelling typos in comments -- Fix spelling and grammar in several comments -- malloc: Detect infinite-loop in _int_free when freeing tcache [BZ#27052] -- elf: Fix dl-load.c -- elf: Include libc.so.6 as main program in dependency sort (bug 20972) -- support: Add support_slibdir_prefix variable -- aarch64: Use mmap to add PROT_BTI instead of mprotect [BZ #26831] -- elf: Pass the fd to note processing -- elf: Move note processing after l_phdr is updated -- aarch64: align address for BTI protection [BZ #26988] -- aarch64: Fix missing BTI protection from dependencies [BZ #26926] -- Fix linknamespace errors in nss_database.c if build with -Os. -- treewide: fix incorrect spelling of indices in comments -- linux: Consolidate brk implementation -- elf: Include in cache.c -- s390x: Add glibc-hwcaps support -- elf: Fix run-time dependencies of tst-dlopen-fail-2 -- Handle out-of-memory case in svc_tcp.c/svc_unix.c:rendezvous_request. -- elf: Fix incorrect comparison in sort_priorities_by_name -- S390: Derive float_t from FLT_EVAL_METHOD -- Fix parsing of /sys/devices/system/cpu/online (bug 25859) -- Make strtoimax, strtoumax, wcstoimax, wcstoumax into aliases -- Fixed typos in "NEWS for version 2.32" -- Add NEWS entry for CVE-2020-29562 (BZ #26923) -- iconv: Fix incorrect UCS4 inner loop bounds (BZ#26923) -- Drop glibc-rh1906066 and glibc-rh741105 patches fixed by sync. - -* Mon Dec 14 2020 Florian Weimer - 2.32.9000-21 -- Re-enable -Werror everywhere (#1888246) - -* Wed Dec 09 2020 DJ Delorie - 2.32.9000-20 -- nsswitch: handle missing actions properly (temporary fix for 1906066) - -* Mon Dec 07 2020 Arjun Shankar - 2.32.9000-19 -- Auto-sync with upstream branch master, - commit 088e9625378f25607acff3daf7a79cbdee497043: -- x86: Rename readelflib.c -- nsswitch: use new internal API (callers) -- nsswitch: user new internal API (tests) -- nsswitch: use new internal API (core) -- nss: Implement -- : New abstraction for combining NSS modules and NSS actions -- nss: Introduce -- Add scripts/move-symbol-to-libc.py - -* Fri Dec 04 2020 Arjun Shankar - 2.32.9000-18 -- Drop glibc-revert-fxstat-compat.patch; applied upstream. -- Drop glibc-revert-mknod-compat.patch; applied upstream. -- Auto-sync with upstream branch master, - commit 4c38c1a229bc3628269ad98bd7e8d31d118d91f6: -- powerpc64le: Add glibc-hwcaps support -- x86: Adjust tst-cpu-features-supports.c for GCC 11 -- x86: Set RDRAND usable if CPU supports RDRAND -- elf: Add missing header to elf/dl-hwcaps.h -- lowlevellock-futex: Remove not used macros -- futex: Remove not used futex_reltimed_wait{_cancelable} -- y2038: Convert gai_suspend to support 64 bit time -- symbols: Add defines for libanl's libanl_hidden_{def|proto} -- x86_64: Add glibc-hwcaps support -- elf: Add glibc-hwcaps subdirectory support to ld.so cache processing -- elf: Process glibc-hwcaps subdirectories in ldconfig -- elf: Implement tail merging of strings in ldconfig -- elf: Implement a string table for ldconfig, with tail merging -- elf: Add extension mechanism to ld.so.cache -- elf: Add endianness markup to ld.so.cache (bug 27008) -- elf: Add glibc-hwcaps support for LD_LIBRARY_PATH -- elf: Synchronize section header flags with binutils -- x86: Fix THREAD_SELF definition to avoid ld.so crash (bug 27004) -- htl: Add hidden def for __pthread_create/detach -- manual: Clarify File Access Modes section and add O_PATH -- htl: Add missing symbols -- Revert "linux: Move xmknod{at} to compat symbols" -- Revert "linux: Move {f}xstat{at} to compat symbols" -- elf.h: Fix spelling of EM_TILE64 comment -- nptl: Fix __futex_clocklock64 return error check [BZ #26964] -- powerpc64le: ifunc select *f128 routines in multiarch mode -- y2038: Convert aio_suspend to support 64 bit time -- Fix typo in NEWS file -- nptl: Add EOVERFLOW checks for futex calls -- nptl: Fix PTHREAD_PRIO_PROTECT timed lock -- sh: Add sh4 fpu Implies folder -- io: nftw/ftw: Fix stack overflow with large nopenfd [BZ #26353] -- elf: Introduce enum opt_format in the ldconfig implementation -- support: Add support_copy_file -- NEWS entry for commit b4f020c9b408fb3d1d3d4901c4a71839145f8791 -- timezone: Change zdump installation to bin directory -- nptl: Return EINVAL for invalid clock for pthread_clockjoin_np -- nptl: Return EINVAL for pthread_mutex_clocklock/PI with CLOCK_MONOTONIC [BZ #26801] -- nptl: Replace lll_futex_wake with futex-internal.h -- nptl: Replace lll_futex_supported_clockid with futex-internal.h -- nptl: Replace lll_futex_{timed_}wait by futex-internal.h -- nptl: Replace lll_timedwait with __futex_abstimed_wait64 -- nptl: Replace __futex_clocklock_wait64 with __futex_abstimed_wait64 -- nptl: Remove _futex_clock_wait_bitset64 -- nptl: Consolidate __futex_abstimed_wait_{cancelable}64 -- nptl: Extend __futex_abstimed_wait_cancelable64 comment -- nptl: Remove clockwait_tid -- nptl: Remove futex_wait_cancelable -- nptl: Remove unused internal futex functions -- Mark mtrace tests UNSUPPORTED if bug-ga2.mtrace or tst-leaks2.mtrace are missing -- elf: Fix uninitialized variable for _dl_write -- powerpc: Make PT_THREAD_POINTER available to assembly code -- Use libnss_files.so for tests posix/bug-ga2 and resolv/tst-leaks2 [BZ #26821] -- hurd report-wait: Fix stpcpy usage -- hurd S_msg_report_wait: Fix detecting fd ports -- hurd S_msg_report_wait: Fix reporting ports -- hurd: Fix strcpy calls -- hurd: Fix _S_msg_get/set_env_variable prototype -- hurd: Enable using ifunc -- Add {,sysdep-}ld-library-path make variable -- nptl: Move stack list variables into _rtld_global -- hurd: let _dl_argv and __libc_stack_end be relro -- hurd: Remove some remnants of cthreads -- nanosleep: Pass NULL when rem == NULL on ports with __TIMESIZE != 64 -- y2038: Convert thrd_sleep to support 64 bit time -- y2038: Convert mtx_timedlock to support 64 bit time -- y2038: Convert cnd_timedwait to support 64 bit time -- hurd: Drop CLOCK_MONOTONIC change which slipped in -- hurd: make ptsname fail with ENOTTY on non-master-pty -- mach: Add missing assert.h include -- hurd: break relocation loop between libc.so and lib{mach,hurd}user.so -- Remove obsolete defines for HPUX support from fcntl.h and update O_NONBLOCK. -- Remove tls.h inclusion from internal errno.h -- nptl: Eliminate and __is_smp -- powerpc: Eliminate UP macro conditionals -- x86: Remove UP macro. Define LOCK_PREFIX unconditionally. -- alpha: Remove UP preprocessor conditionals -- hurd: Make sure signals get started -- hurd: initialize libpthread before starting the signal thread -- hurd: Make _hurd_libc_proc_init idempotent -- powerpc: Add optimized stpncpy for POWER9 -- powerpc: Add optimized strncpy for POWER9 -- Don't use nested function in test-ffs -- Use __builtin___stpncpy_chk when available -- tests: Remove NULL check for an array -- hurd: Move {,f,l}xstat{,at} and xmknod{at} to compat symbols -- hurd: Notify the proc server later during initialization -- htl: Initialize later -- htl: Keep thread signals blocked during its initialization -- htl: Fix spurious symbols in namespaces -- Use O_CLOEXEC in sysconf [BZ #26791] -- struct _Unwind_Exception alignment should not depend on compiler flags -- hurd: keep only required PLTs in ld.so -- hurd: Add missing startup calls -- riscv: Get cache information through sysconf -- RISC-V: Add _dl_start_user. - -* Thu Nov 26 2020 Florian Weimer - 2.32.9000-17 -- s390x: Do not rewrite program interpreter symlink (make install is enough) - -* Tue Nov 10 2020 Carlos O'Donell - 2.32.9000-16 -- Remove the work around for systemd-nspawn (#1869030). - -* Mon Nov 09 2020 DJ Delorie - 2.32.9000-15 -- Auto-sync with upstream branch master, - commit 75a193b7611bade31a150dfcc528b973e3d46231. -- linux: Allow adjtime with NULL argument [BZ #26833] -- aarch64: Add unwind information to _start (bug 26853) -- bsd unlockpt: unlockpt needs to fail with EINVAL, not ENOTTY -- Rearrange bsd_getpt vs bsd_openpt and implement posix_openpt on BSD -- Remove __warndecl -- Remove __warn_memset_zero_len [BZ #25399] -- iconv: Accept redundant shift sequences in IBM1364 [BZ #26224] -- msg: Remove redundant #include header -- tst-setuid1-static-ENV: Add $(common-objpfx)nss [BZ #26820] - -* Tue Nov 03 2020 Patsy Griffin - 2.32.9000-14 -- Auto-sync with upstream branch master, - commit e156dabc766d6f6f99ce9402999eae380a3ec1f2. -- aarch64: Add variant PCS lazy binding test [BZ #26798] -- aarch64: Fix DT_AARCH64_VARIANT_PCS handling [BZ #26798] -- hurd: Correct 'ethenet' spelling -- Avoid -Wstringop-overflow warning in pthread_cleanup_push macros -- Disable spurious -Warray-bounds for ypclnt.c (bug 26687) -- Do not use array parameter to new_composite_name (bug 26726) -- Disable spurious -Wstringop-overflow for setjmp/longjmp (bug 26647) -- malloc debug: fix compile error when enable macro MALLOC_DEBUG > 1 -- tst-tcfree2: adjust coding style. -- elf: In ldconfig, extract the new_sub_entry function from search_dir -- Use MPC 1.2.1 in build-many-glibcs.py. -- Argument Syntax: Use "option", @option, and @command. -- elf: Unify old and new format cache handling code in ld.so -- x86: Restore processing of cache size tunables in init_cacheinfo -- Make elf.h header self contained. -- x86: Optimizing memcpy for AMD Zen architecture. -- Hurd: Fix ftime build -- Add IP_RECVERR_RFC4884 and IPV6_RECVERR_RFC4884 from Linux 5.9. -- misc: Add internal __getauxval2 function -- Remove NEWS entry about ftime removal -- time: Add 64-bit time_t support for ftime -- Reinstate ftime and add deprecate message on ftime usage -- Update kernel version to 5.9 in tst-mman-consts.py. -- Amend grammar and add a description -- Fix typo in NEWS file -- Remove timing related checks of time/tst-cpuclock1 -- Update syscall lists for Linux 5.9. -- Use Linux 5.9 in build-many-glibcs.py. -- Reword description of SXID_* tunable properties -- New benchtest: pthread locks -- y2038: nptl: Provide __futex_clock_wait_bitset64 to support 64 bit bitset -- C-SKY: Make dynamic linker's name compitable with the older gcc. -- Revert "C-SKY:Fix dynamic linker's name when mfloat-abi=softfp." -- Move vtimes to a compatibility symbol -- y2038: linux: Provide __time64 implementation -- rt: Fix typos in comments in -- C-SKY:Fix dynamic linker's name when mfloat-abi=softfp. -- Drop the glibc-revert-ftime-compat.patch. - -* Thu Oct 29 2020 DJ Delorie - 2.32.9000-13 -- Add BuildRequires for perl (malloc/mtrace) if running the testsuite. - -* Wed Oct 21 2020 Siddhesh Poyarekar - 2.32.9000-12 -- Revert __xstat64 symbol removal. -- Revert xmknod* symbol removal. -- Revert ftime symbol removal. - -* Sun Oct 18 2020 Patsy Griffin - 2.32.9000-11 -- Auto-sync with upstream branch master, - commit 0f09154c64005e78b61484ae87b5ea2028051ea0. -- x86: Initialize CPU info via IFUNC relocation [BZ 26203] -- Add NEWS entry for ftime compatibility move -- support: Add create_temp_file_in_dir -- linux: Add __readdir_unlocked -- linux: Simplify opendir buffer allocation -- linux: Move posix dir implementations to Linux -- linux: Add 64-bit time_t support for wait3 -- Move ftime to a compatibility symbol -- linux: Fix time64 support for futimesat -- linux: Use INTERNAL_SYSCALL on fstatat{64} -- shm tests: Append PID to names passed to shm_open [BZ #26737] -- sysvipc: Fix tst-sysvshm-linux on x32 -- x86/CET: Update vfork to prevent child return -- resolv: Serialize processing in resolv/tst-resolv-txnid-collision -- statfs: add missing f_flags assignment -- y2038: Remove not used __fstatat_time64 define -- y2038: nptl: Convert pthread_mutex_{clock|timed}lock to support 64 bit -- sysvipc: Return EINVAL for invalid shmctl commands -- sysvipc: Fix IPC_INFO and SHM_INFO handling [BZ #26636] -- AArch64: Use __memcpy_simd on Neoverse N2/V1 -- resolv: Handle transaction ID collisions in parallel queries (bug 26600) -- support: Provide a way to clear the RA bit in DNS server responses -- support: Provide a way to reorder responses within the DNS test server -- Add missing stat/mknod symbol on libc.abilist some ABIs -- manual: correct the spelling of "MALLOC_PERTURB_" [BZ #23015] -- manual: replace an obsolete collation example with a valid one -- rtld: fix typo in comment -- elf: Add missing header to elf/dl-usage.c -- hurd: support clock_gettime(CLOCK_PROCESS/THREAD_CPUTIME_ID) -- linux: Move xmknod{at} to compat symbols -- linux: Add {f}stat{at} y2038 support -- linux: Move {f}xstat{at} to compat symbols -- linux: Disentangle fstatat from fxstatat -- linux: Implement {l}fstat{at} in terms of fstatat -- linux: Move the struct stat{64} to struct_stat.h -- Remove mknod wrapper functions, move them to symbols -- Remove stat wrapper functions, move them to exported symbols -- : Add FSRCS/FSRS/FZLRM support -- : Add Intel HRESET support -- : Add AVX-VNNI support -- : Add AVX512_FP16 support -- : Add Intel UINTR support -- elf: Do not pass GLRO(dl_platform), GLRO(dl_platformlen) to _dl_important_hwcaps -- elf: Enhance ld.so --help to print HWCAP subdirectories -- elf: Add library search path information to ld.so --help -- sunrpc: Adjust RPC function declarations to match Sun's (bug 26686] -- Avoid GCC 11 -Warray-parameter warnings [BZ #26686]. -- elf: Make __rtld_env_path_list and __rtld_search_dirs global variables -- elf: Print the full name of the dynamic loader in the ld.so help message -- elf: Use the term "program interpreter" in the ld.so help message -- scripts/update-copyrights: Update csu/version.c, elf/dl-usage.c -- elf: Implement ld.so --version -- nptl: Add missing cancellation flags on lockf -- Update mips64 libm-test-ulps -- Update alpha libm-test-ulps -- elf: Implement ld.so --help -- elf: Record whether paths come from LD_LIBRARY_PATH or --library-path -- elf: Move ld.so error/help output to _dl_usage -- elf: Extract command-line/environment variables state from rtld.c - -* Wed Oct 14 2020 Florian Weimer - 2.32.9000-10 -- Disable -Werror on ELN (#1888246) - -* Wed Oct 14 2020 Florian Weimer - 2.32.9000-9 -- Make glibc.spec self-contained (#1887097) - -* Thu Oct 08 2020 Arjun Shankar - 2.32.9000-8 -- Drop glibc-fix-float128-benchtests.patch; applied upstream. -- Auto-sync with upstream branch master, - commit 72d36ffd7db55ae599f4c77feb0eae25a0f3714e: -- elf: Implement __rtld_malloc_is_complete -- __vfscanf_internal: fix aliasing violation (bug 26690) -- Revert "Fix missing redirects in testsuite targets" -- nptl: Add missing cancellation flags on futex_internal and pselect32 -- elf: Implement _dl_write -- elf: Do not search HWCAP subdirectories in statically linked binaries -- Linux: Require properly configured /dev/pts for PTYs -- Linux: unlockpt needs to fail with EINVAL, not ENOTTY (bug 26053) -- login/tst-grantpt: Convert to support framework, more error checking -- posix: Fix -Warray-bounds instances building timer_create [BZ #26687] -- Replace Minumum/minumum with Minimum/minimum -- Optimize scripts/merge-test-results.sh -- Fix GCC 11 -Warray-parameter warning for __sigsetjmp (bug 26647) -- manual: Fix typo -- y2038: nptl: Convert pthread_rwlock_{clock|timed}{rd|wr}lock to support 64 - bit time -- Y2038: nptl: Provide futex_abstimed_wait64 supporting 64 bit time -- sysvipc: Return EINVAL for invalid msgctl commands -- sysvipc: Fix IPC_INFO and MSG_INFO handling [BZ #26639] -- sysvipc: Return EINVAL for invalid semctl commands -- sysvipc: Fix SEM_STAT_ANY kernel argument pass [BZ #26637] -- aarch64: enforce >=64K guard size [BZ #26691] -- sysvipc: Fix semtimedop for Linux < 5.1 for 64-bit ABI -- nptl: futex: Move __NR_futex_time64 alias to beginning of futex-internal.h -- nptl: Provide proper spelling for 32 bit version of futex_abstimed_wait -- string: Fix strerrorname_np return value [BZ #26555] -- Set tunable value as well as min/max values -- ld.so: add an --argv0 option [BZ #16124] -- Reversing calculation of __x86_shared_non_temporal_threshold -- linux: Add time64 recvmmsg support -- linux: Add time64 support for nanosleep -- linux: Consolidate utimes -- linux: Use 64-bit time_t syscall on clock_getcputclockid -- linux: Add time64 sigtimedwait support -- linux: Add time64 select support -- nptl: Fix __futex_abstimed_wait_cancellable32 -- sysvipc: Fix semtimeop for !__ASSUME_DIRECT_SYSVIPC_SYSCALLS -- hurd: add ST_RELATIME -- intl: Handle translation output codesets with suffixes [BZ #26383] -- bench-strcmp.c: Add workloads on page boundary -- bench-strncmp.c: Add workloads on page boundary -- strcmp: Add a testcase for page boundary -- strncmp: Add a testcase for page boundary [BZ #25933] -- Set locale related environment variables in debugglibc.sh -- benchtests: Run _Float128 tests only on architectures that support it -- powerpc: Protect dl_powerpc_cpu_features on INIT_ARCH() [BZ #26615] -- x86: Harden printf against non-normal long double values (bug 26649) -- x86: Use one ldbl2mpn.c file for both i386 and x86_64 -- Define __THROW to noexcept for C++11 and later - -* Mon Sep 21 2020 Arjun Shankar - 2.32.9000-7 -- Adjust glibc-rh741105.patch. -- Add glibc-fix-float128-benchtests.patch to allow building on armv7hl. -- Auto-sync with upstream branch master, - commit cdf645427d176197b82f44308a5e131d69fb53ad: -- Update mallinfo2 ABI, and test -- Allow memset local PLT reference for RISC-V. -- powerpc: fix ifunc implementation list for POWER9 strlen and stpcpy -- nscd: bump GC cycle during cache pruning (bug 26130) -- x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625] -- : Add Intel Key Locker support -- Fix handling of collating symbols in fnmatch (bug 26620) -- pselect.c: Pass a pointer to SYSCALL_CANCEL [BZ #26606] -- y2038: nptl: Convert sem_{clock|timed}wait to support 64 bit time -- hurd: Add __x86_get_cpu_features to ld.abilist -- x86: Install [BZ #26124] -- linux: Add time64 pselect support -- linux: Add time64 semtimedop support -- linux: Add ppoll time64 optimization -- linux: Simplify clock_getres -- Update sparc libm-test-ulps -- Remove internal usage of extensible stat functions -- Linux: Consolidate xmknod -- linux: Consolidate fxstatat{64} -- linux: Consolidate fxstat{64} -- linux: Consolidate lxstat{64} -- linux: Consolidate xstat{64} -- linux: Define STAT64_IS_KERNEL_STAT64 -- linux: Always define STAT_IS_KERNEL_STAT -- Update powerpc libm-test-ulps -- benchtests: Add "workload" traces for sinf128 -- benchtests: Add "workload" traces for sinf -- benchtests: Add "workload" traces for sin -- benchtests: Add "workload" traces for powf128 -- benchtests: Add "workload" traces for pow -- benchtests: Add "workload" traces for expf128 -- benchtests: Add "workload" traces for exp -- nptl: futex: Provide correct indentation for part of - __futex_abstimed_wait_cancelable64 - -* Tue Sep 08 2020 DJ Delorie - 2.32.9000-6 -- Auto-sync with upstream branch master, - commit e74b61c09a2a2ab52153e731225ccba5078659b1. -- Disable -Wstringop-overread for some string tests -- string: Fix GCC 11 `-Werror=stringop-overread' error -- C11 threads: Fix inaccuracies in testsuite -- elf.h: Add aarch64 bti/pac dynamic tag constants -- x86: Set CPU usable feature bits conservatively [BZ #26552] - -* Wed Sep 02 2020 Patsy Griffin - 2.32.9000-5 -- Auto-sync with upstream branch master, - commit 86a912c8634f581ea42ec6973553dde7f058cfbf. -- Update i686 ulps. -- Use LFS readdir in generic POSIX getcwd [BZ# 22899] -- linux: Remove __ASSUME_ATFCTS -- Sync getcwd with gnulib -- x86-64: Fix FMA4 detection in ifunc [BZ #26534] -- y2038: nptl: Convert pthread_cond_{clock|timed}wait to support 64 bit time -- malloc: Fix mallinfo deprecation declaration -- x32: Add and regenerate arch-syscall.h -- Add mallinfo2 function that support sizes >= 4GB. -- Remove obsolete default/nss code -- AArch64: Improve backwards memmove performance -- Add RISC-V 32-bit target to build-many-glibcs.py -- Documentation for the RISC-V 32-bit port -- RISC-V: Build infrastructure for 32-bit port -- RISC-V: Add rv32 path to RTLDLIST in ldd -- riscv32: Specify the arch_minimum_kernel as 5.4 -- RISC-V: Fix llrint and llround missing exceptions on RV32 -- RISC-V: Add the RV32 libm-test-ulps -- RISC-V: Add 32-bit ABI lists -- RISC-V: Add hard float support for 32-bit CPUs -- RISC-V: Support the 32-bit ABI implementation -- RISC-V: Add arch-syscall.h for RV32 -- RISC-V: Add path of library directories for the 32-bit -- RISC-V: Support dynamic loader for the 32-bit -- RISC-V: Add support for 32-bit vDSO calls -- RISC-V: Use 64-bit-time syscall numbers with the 32-bit port -- RISC-V: Cleanup some of the sysdep.h code -- RISC-V: Use 64-bit time_t and off_t for RV32 and RV64 -- io/lockf: Include bits/types.h before __OFF_T_MATCHES_OFF64_T check -- elf/tst-libc_dlvsym: Add a TEST_COMPAT around some symbol tests -- hurd: define BSD 4.3 ioctls only under __USE_MISC -- string: test strncasecmp and strncpy near page boundaries -- linux: Simplify utimensat -- linux: Simplify timerfd_settime -- linux: Simplify timer_gettime -- linux: Simplify sched_rr_get_interval -- linux: Simplify ppoll -- linux: Simplify mq_timedsend -- linux: Simplify mq_timedreceive -- linux: Simplify clock_settime -- linux: Simplify clock_nanosleep -- linux: Simplify clock_gettime -- linux: Simplify clock_adjtime -- linux: Add helper function to optimize 64-bit time_t fallback support -- S390: Sync HWCAP names with kernel by adding aliases [BZ #25971] -- [vcstocl] Import ProjectQuirks from its own file -- build-many-glibcs.py: Add a s390x -O3 glibc variant. -- Fix namespace violation in stdio.h and sys/stat.h if build with optimization. [BZ #26376] -- Add C2x BOOL_MAX and BOOL_WIDTH to limits.h. -- Use MPC 1.2.0 in build-many-glibcs.py. -- Add new STATX_* constants from Linux 5.8 to bits/statx-generic.h. -- Correct locking and cancellation cleanup in syslog functions (bug 26100) - -* Thu Aug 20 2020 Carlos O'Donell - 2.32.9000-4 -- Support building glibc in a mock chroot using older systemd-nspawn (#1869030). - -* Tue Aug 18 2020 Carlos O'Donell - 2.32.9000-3 -- Suggest installing minimal localization e.g. C, POSIX, C.UTF-8. - -* Mon Aug 17 2020 DJ Delorie - 2.32.9000-2 -- Auto-sync with upstream branch master, - commit cb7e7a5ca1d6d25d59bc038bdc09630e507c41e5. -- nptl: Handle NULL abstime [BZ #26394] -- Update build-many-glibcs.py for binutils ia64 obsoletion. -- Update kernel version to 5.8 in tst-mman-consts.py. -- y2038: nptl: Convert pthread_{clock|timed}join_np to support 64 bit time -- aarch64: update ulps. - -* Wed Aug 12 2020 Patsy Griffin - 2.32.9000-1 -- Auto-sync with upstream branch master, - commit 0be0845b7a674dbfb996f66cd03d675f0f6028dc: -- S390: Regenerate ULPs. -- manual: Fix sigdescr_np and sigabbrev_np return type (BZ #26343) -- math: Update x86_64 ulps -- math: Regenerate auto-libm-test-out-j0 -- manual: Put the istrerrorname_np and strerrordesc_np return type in braces -- Linux: Use faccessat2 to implement faccessat (bug 18683) -- manual: Fix strerrorname_np and strerrordesc_np return type (BZ #26343) -- math: Fix inaccuracy of j0f for x >= 2^127 when sin(x)+cos(x) is tiny -- Update syscall lists for Linux 5.8. -- Use Linux 5.8 in build-many-glibcs.py. -- htl: Enable tst-cancelx?[45] -- tst-cancel4: Make blocking on write more portable -- hurd: Add missing hidden def -- hurd: Rework sbrk -- hurd: Implement basic sched_get/setscheduler -- x86: Rename Intel CPU feature names -- manual: Fix some @code/@var formatting glitches chapter Date And Time -- Copy regex_internal.h from Gnulib -- Copy regex BITSET_WORD_BITS porting from Gnulib -- Sync regex.h from Gnulib -- Sync mktime.c from Gnulib -- Sync intprops.h from Gnulib -- Open master branch for glibc 2.33 development. - -* Thu Aug 06 2020 Arjun Shankar - 2.32-1 -- Auto-sync with upstream branch release/2.32/master, - commit 3de512be7ea6053255afed6154db9ee31d4e557a: -- Prepare for glibc 2.32 release. -- Regenerate configure scripts. -- Update NEWS with bugs. -- Update translations. -- Don't mix linker error messages into edited scripts -- benchtests/README update. -- RISC-V: Update lp64d libm-test-ulps according to HiFive Unleashed -- aarch64: update NEWS about branch protection -- Add NEWS entry for CVE-2016-10228 (bug 19519) -- powerpc: Fix incorrect cache line size load in memset (bug 26332) -- Update Nios II libm-test-ulps file. - -* Fri Jul 31 2020 Patsy Griffin - 2.31.9000-24 -- Auto-sync with upstream branch master, - commit 7f1a08cff82255cd4252a2c75fd65b80a6a170bf. -- Move NEWS entry for CVE-2020-1751 to the 2.31 section -- NEWS: Deprecate weak libpthread symbols for single-threaded checks -- NEWS: Deprecate nss_hesiod -- nptl: Zero-extend arguments to SETXID syscalls [BZ #26248] -- Use binutils 2.35 branch in build-many-glibcs.py. -- aarch64: Use future HWCAP2_MTE in ifunc resolver -- Update x86-64 libm-test-ulps -- aarch64: Respect p_flags when protecting code with PROT_BTI -- Disable warnings due to deprecated libselinux symbols used by nss and nscd -- Regenerate INSTALL for ARC port updates. -- Update libc.pot for 2.32 release. -- powerpc: Fix POWER10 selection -- powerpc64le: guarantee a .gnu.attributes section [BZ #26220] - -* Wed Jul 29 2020 Florian Weimer - 2.31.9000-23 -- Inherit -mbranch-protection=standard from redhat-rpm-config (for aarch64) - -* Mon Jul 27 2020 Fedora Release Engineering -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 22 2020 Carlos O'Donell - 2.31.9000-21 -- Use make macros -- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro - -* Tue Jul 21 2020 Arjun Shankar - 2.31.9000-20 -- Add glibc-deprecated-selinux-makedb.patch and - glibc-deprecated-selinux-nscd.patch to work around libselinux API - deprecations. -- Drop glibc-rseq-disable.patch; rseq support removed upstream. (#1855729) -- Auto-sync with upstream branch master, - commit ec2f1fddf29053957d061dfe310f106388472a4f: -- libio: Remove __libc_readline_unlocked -- shadow: Implement fgetspent_r using __nss_fgetent_r -- pwd: Implement fgetpwent_r using __nss_fgetent_r -- gshadow: Implement fgetsgent_r using __nss_fgetent_r (bug 20338) -- grp: Implement fgetgrent_r using __nss_fgetent_r -- nss: Add __nss_fgetent_r -- libio: Add fseterr_unlocked for internal use -- nss_files: Use generic result pointer in parse_line -- nss_files: Consolidate line parse declarations in -- nss_compat: Do not use mmap to read database files (bug 26258) -- nss_files: Consolidate file opening in __nss_files_fopen -- Update powerpc-nofpu libm-test-ulps. -- Use MPFR 4.1.0 in build-many-glibcs.py. -- elf: Change TLS static surplus default back to 1664 -- hurd: Fix longjmp check for sigstate -- hurd: Fix longjmp early in initialization -- manual: New signal and errno string functions are AS-safe -- AArch64: Improve strlen_asimd performance (bug 25824) -- Move from sunrpc to inet -- en_US: Minimize changes to date_fmt (Bug 25923) -- Linux: Remove rseq support -- manual: Use Unicode instead HTML entities for characters (bug 19737) -- Add NEWS entry for CVE-2020-6096 (bug 25620) -- arm: remove string/tst-memmove-overflow XFAIL -- AArch64: Rename IS_ARES to IS_NEOVERSE_N1 -- AArch64: Add optimized Q-register memcpy -- AArch64: Align ENTRY to a cacheline -- Correct timespec implementation [BZ #26232] -- Remove --enable-obsolete-rpc configure flag -- hurd: Fix build-many-glibcs.py -- x86: Support usable check for all CPU features -- string: Make tst-strerror/tst-strsignal unsupported if msgfmt is not installed -- malloc: Deprecate more hook-related functionality -- elf: Support at least 32-byte alignment in static dlopen -- x86: Remove __ASSEMBLER__ check in init-arch.h -- x86: Remove the unused __x86_prefetchw -- Documentation for ARC port -- build-many-glibcs.py: Enable ARC builds -- ARC: Build Infrastructure -- ARC: ABI lists -- ARC: Linux Startup and Dynamic Loading -- ARC: Linux ABI -- ARC: Linux Syscall Interface -- ARC: hardware floating point support -- ARC: math soft float support -- ARC: Atomics and Locking primitives -- ARC: Thread Local Storage support -- ARC: startup and dynamic linking code -- ARC: ABI Implementation -- Fix time/tst-cpuclock1 intermitent failures -- powerpc64: Fix calls when r2 is not used [BZ #26173] -- Add NEWS entry for Update to Unicode 13.0.0 [BZ #25819] -- Update i686 libm-test-ulps -- Fix memory leak in __printf_fp_l (bug 26215). -- Fix double free in __printf_fp_l (bug 26214). -- linux: Fix syscall list generation instructions -- sysv: linux: Add 64-bit time_t variant for shmctl -- sysvipc: Remove the linux shm-pad.h file -- sysvipc: Split out linux struct shmid_ds -- sysv: linux: Add 64-bit time_t variant for msgctl -- sysvipc: Remove the linux msq-pad.h file -- sysvipc: Split out linux struct semid_ds -- sysv: linux: Add 64-bit time_t variant for semctl - -* Fri Jul 10 2020 Florian Weimer - 2.31.9000-19 -- Disable rseq registration by default to help Firefox (#1855729) - -* Thu Jul 09 2020 Florian Weimer - 2.31.9000-18 -- Auto-sync with upstream branch master, - commit ffb17e7ba3a5ba9632cee97330b325072fbe41dd: -- rtld: Avoid using up static TLS surplus for optimizations [BZ #25051] -- rtld: Account static TLS surplus for audit modules -- rtld: Add rtld.nns tunable for the number of supported namespaces -- Remove --enable-obsolete-nsl configure flag -- Move non-deprecated RPC-related functions from sunrpc to inet -- aarch64: add NEWS entry about branch protection support -- aarch64: redefine RETURN_ADDRESS to strip PAC -- aarch64: fix pac-ret support in _mcount -- aarch64: Add pac-ret support to assembly files -- aarch64: configure check for pac-ret code generation -- aarch64: ensure objects are BTI compatible -- aarch64: enable BTI at runtime -- aarch64: fix RTLD_START for BTI -- aarch64: fix swapcontext for BTI -- aarch64: Add BTI support to assembly files -- aarch64: Rename place holder .S files to .c -- aarch64: configure test for BTI support -- Rewrite abi-note.S in C. -- rtld: Clean up PT_NOTE and add PT_GNU_PROPERTY handling -- string: Move tst-strsignal tst-strerror to tests-container -- string: Fix prototype mismatch in sigabbrev_np, __sigdescr_np -- arm: CVE-2020-6096: Fix multiarch memcpy for negative length (#1820332) -- arm: CVE-2020-6096: fix memcpy and memmove for negative length (#1820332) -- sunrpc: Remove hidden aliases for global data symbols (bug 26210) -- hurd: Fix strerror not setting errno -- tst-strsignal: fix checking for RT signals support -- hurd: Evaluate fd before entering the critical section -- CVE-2016-10228: Rewrite iconv option parsing (#1428292) -- nss: Remove cryptographic key support from nss_files, nss_nis, nss_nisplus -- sunrpc: Do not export getrpcport by default -- sunrpc: Do not export key handling hooks by default -- sunrpc: Turn clnt_sperrno into a libc_hidden_nolink_sunrpc symbol -- string: Add strerrorname_np and strerrordesc_np -- string: Add sigabbrev_np and sigdescr_np -- string: Add strerror_l on test-strerror-errno -- string: Add strerror, strerror_r, and strerror_l test -- string: Add strsignal test -- string: Simplify strerror_r -- string: Use tls-internal on strerror_l -- string: Implement strerror in terms of strerror_l -- string: Remove old TLS usage on strsignal -- linux: Fix __NSIG_WORDS and add __NSIG_BYTES -- signal: Move sys_errlist to a compat symbol -- signal: Move sys_siglist to a compat symbol -- signal: Add signum-{generic,arch}.h -- Remove most vfprintf width/precision-dependent allocations (bug 14231, bug 26211). -- elf: Do not signal LA_ACT_CONSISTENT for an empty namespace [BZ #26076] -- Fix stringop-overflow errors from gcc 10 in iconv. -- x86: Add thresholds for "rep movsb/stosb" to tunables -- Use C2x return value from getpayload of non-NaN (bug 26073). -- x86: Detect Extended Feature Disable (XFD) -- x86: Correct bit_cpu_CLFSH [BZ #26208] -- manual: Document __libc_single_threaded -- Add the __libc_single_threaded variable -- Linux: rseq registration tests -- Linux: Use rseq in sched_getcpu if available -- Linux: Perform rseq registration at C startup and thread creation -- tst-cancel4: deal with ENOSYS errors -- manual: Show copyright information not just in the printed manual - - -* Thu Jul 02 2020 Carlos O'Donell - 2.31.9000-17 -- Auto-sync with upstream branch master, - commit c6aac3bf3663709cdefde5f5d5e9e875d607be5e. -- Fix typo in comment in bug 26137 fix. -- Fix strtod multiple-precision division bug (bug 26137). -- Linux: Fix UTC offset setting in settimeofday for __TIMESIZE != 64 -- random: range is not portably RAND_MAX [BZ #7003] -- Update kernel version to 5.7 in tst-mman-consts.py. -- powerpc: Add support for POWER10 -- hurd: Simplify usleep timeout computation -- htl: Enable cancel*16 an cancel*20 tests -- hurd: Add remaining cancelation points -- hurd: fix usleep(ULONG_MAX) -- hurd: Make fcntl(F_SETLKW*) cancellation points -- hurd: make wait4 a cancellation point -- hurd: Fix port definition in HURD_PORT_USE_CANCEL -- hurd: make close a cancellation point -- hurd: make open and openat cancellation points -- hurd: clean fd and port on thread cancel -- htl: Move cleanup handling to non-private libc-lock -- htl: Fix includes for lockfile -- htl: avoid cancelling threads inside critical sections -- tst-cancel4-common.c: fix calling socketpair -- x86: Detect Intel Advanced Matrix Extensions -- Set width of JUNGSEONG/JONGSEONG characters from UD7B0 to UD7FB to 0 [BZ #26120] -- S390: Optimize __memset_z196. -- S390: Optimize __memcpy_z196. -- elf: Include (for size_t), in -- nptl: Don't madvise user provided stack -- S390: Regenerate ULPs. -- htl: Add wrapper header for with hidden __sem_post -- elf: Include in because bool is used -- htl: Fix case when sem_*wait is canceled while holding a token -- htl: Make sem_*wait cancellations points -- htl: Simplify non-cancel path of __pthread_cond_timedwait_internal -- htl: Enable tst-cancel25 test -- powerpc: Add new hwcap values -- aarch64: MTE compatible strncmp -- aarch64: MTE compatible strcmp -- aarch64: MTE compatible strrchr -- aarch64: MTE compatible memrchr -- aarch64: MTE compatible memchr -- aarch64: MTE compatible strcpy -- Add MREMAP_DONTUNMAP from Linux 5.7 -- x86: Update CPU feature detection [BZ #26149] - -* Mon Jun 22 2020 DJ Delorie - 2.31.9000-16 -- Auto-sync with upstream branch master, - commit ea04f0213135b13d80f568ca2c4127c2ec112537. -- aarch64: Remove fpu Makefile -- m68k: Use sqrt{f} builtin for coldfire -- arm: Use sqrt{f} builtin -- riscv: Use sqrt{f} builtin -- s390: Use sqrt{f} builtin -- sparc: Use sqrt{f} builtin -- mips: Use sqrt{f} builtin -- alpha: Use builtin sqrt{f} -- i386: Use builtin sqrtl -- x86_64: Use builtin sqrt{f,l} -- powerpc: Use sqrt{f} builtin -- s390x: Use fma{f} builtin -- aarch64: Use math-use-builtins for ceil{f} -- math: Decompose math-use-builtins.h -- hurd: Add mremap -- ia64: Use generic exp10f -- New exp10f version without SVID compat wrapper -- i386: Use generic exp10f -- math: Optimized generic exp10f with wrappers -- benchtests: Add exp10f benchmark - -* Fri Jun 19 2020 Patsy Franklin - 2.31.9000-15 -- Auto-sync with upstream branch master, - commit 27f8864bd41f0f1b61e8e947d9a030b1a0d23df9. -- x86: Update F16C detection [BZ #26133] -- Fix avx2 strncmp offset compare condition check [BZ #25933] -- nptl: Remove now-spurious tst-cancelx9 references -- x86_64: Use %xmmN with vpxor to clear a vector register -- x86: Correct bit_cpu_CLFLUSHOPT [BZ #26128] -- powerpc64le: refactor e_sqrtf128.c -- Update syscall-names.list for Linux 5.7. -- ieee754/dbl-64: Reduce the scope of temporary storage variables -- manual: Add pthread_attr_setsigmask_np, pthread_attr_getsigmask_np -- ld.so: Check for new cache format first and enhance corruption check -- hurd: Fix __writev_nocancel_nostatus -- hurd: Make send* cancellation points -- htl: Enable more cancellation tests -- hurd: Make write and pwrite64 cancellation points -- htl: Fix cleanup support for IO locking -- htl: Move cleanup stack to variable shared between libc and pthread -- htl: initialize first and prevent from unloading -- htl: Add noreturn attribute on __pthread_exit forward -- hurd: Make recv* cancellation points -- powerpc: Automatic CPU detection in preconfigure -- Use Linux 5.7 in build-many-glibcs.py. -- htl: Enable more cancel tests -- htl: Fix linking static tests by factorizing the symbols list -- Add "%d" support to _dl_debug_vdprintf -- aarch64: MTE compatible strlen -- aarch64: MTE compatible strchr -- aarch64: MTE compatible strchrnul -- AArch64: Merge Falkor memcpy and memmove implementations -- hurd: document that gcc&gdb look at the trampoline code -- pthread: Move back linking rules to nptl and htl -- htl: Enable more tests -- htl: Fix registration of atfork handlers in modules -- htl: Fix tls initialization for already-created threads -- hurd: Make read and pread64 cancellable -- hurd: Fix unwinding over interruptible RPC -- htl: Enable but XFAIL tst-flock2, tst-signal1, tst-signal2 -- hurd: XFAIL more tests that require setpshared support -- hurd: Briefly document in xfails the topics of the bugzilla entries -- htl: Enable more tests -- htl: Add sem_clockwait support -- htl: fix register-atfork ordering -- hurd: Fix hang in _hurd_raise_signal from pthread_kill -- hurd: Reject raising invalid signals -- hurd: fix clearing SS_ONSTACK when longjmp-ing from sighandler -- hurd: Add pointer guard support -- hurd: Add stack guard support -- dl-runtime: reloc_{offset,index} now functions arch overide'able -- powerpc64le: add optimized strlen for P9 -- powerpc64le: use common fmaf128 implementation - -* Fri Jun 05 2020 Patsy Griffin - 2.31.9000-14 -- Auto-sync with upstream branch master, - commit e52434a2e4d1105272daaef87678da950fbec73f. -- benchtests: Restore the clock_gettime option -- Update HP_TIMING_NOW for _ISOMAC in sysdeps/generic/hp-timing.h -- Replace val with __val in TUNABLE_SET_VAL_IF_VALID_RANGE -- support: Fix detecting hole support on >2KB-block filesystems -- powerpc: Fix powerpc64le due a7a3435c9a -- manual/jobs.texi: remove unused var from example code -- powerpc/fpu: use generic fma functions -- aarch/fpu: use generic builtins based math functions -- ieee754: provide gcc builtins based generic fma functions -- ieee754: provide gcc builtins based generic sqrt functions -- Linux: Use __pthread_attr_setsigmask_internal for timer helper thread -- nptl: Add pthread_attr_setsigmask_np, pthread_attr_getsigmask_np -- nptl: Make pthread_attr_t dynamically extensible -- nptl: Destroy the default thread attribute as part of freeres -- nptl: Change type of __default_pthread_attr -- nptl: Use __pthread_attr_setaffinity_np in pthread_getattr_np -- nptl: Use __pthread_getattr_default_np in pthread_create -- nptl: Add internal alias __pthread_getattr_default_np -- htl: Fix gsync_wait symbol exposition -- htl: Make pthread_cond_destroy wait for threads to be woken -- htl: Enable more cond tests -- tst-cond11: Fix build with _SC_MONOTONIC_CLOCK > 0 -- mbstowcs: Document, test, and fix null pointer dst semantics (Bug 25219) -- build: Use FAIL_EXIT1 () on failure to exec child [BZ #23990] -- manual: Fix backtraces code example [BZ #10441] -- hurd: Fix fexecve -- i386: Remove unused file sysdeps/unix/i386/sysdep.S -- hurd: fix ptsname error when called on a non-tty -- hurd: Fix fdopendir checking for directory type -- i386: Remove NO_TLS_DIRECT_SEG_REFS handling -- Hurd: Move internals into wrapper header -- Hurd: Use __sigmask in favor of deprecated sigmask -- hurd: Fix pselect atomicity -- elf: Remove extra hwcap mechanism from ldconfig -- elf: Do not read hwcaps from the vDSO in ld.so -- linux: Use internal DIR locks when accessing filepos on telldir -- Update i386 libm-test-ulps -- htl: Add clock variants -- signal: Deprecate additional legacy signal handling functions -- elf: Turn _dl_printf, _dl_error_printf, _dl_fatal_printf into functions -- x86: Update Intel Atom processor family optimization -- elf.h: add aarch64 property definitions -- elf.h: Add PT_GNU_PROPERTY -- : Add libpthread hidden alias support -- nptl: Use __pthread_attr_copy in pthread_setattr_default_np -- nptl: Use __pthread_attr_copy in pthread_getattr_default_np (bug 25999) -- nptl: Add __pthread_attr_copy for copying pthread_attr_t objects -- nptl: Make __pthread_attr_init, __pthread_attr_destroy available internally -- nptl: Move pthread_gettattr_np into libc -- nptl: Move pthread_getaffinity_np into libc -- nptl: Move pthread_attr_setaffinity_np into libc -- nptl: Replace some stubs with the Linux implementation -- Linux: Add missing handling of tai field to __ntp_gettime64 -- Mention GCC 10 attribute access. -- y2038: Replace __clock_gettime with __clock_gettime64 -- manual: Add missing section and node for clockid_t wait functions -- y2038: linux: Provide __ntp_gettimex64 implementation -- y2038: linux: Provide __ntp_gettime64 implementation -- y2038: Provide conversion helpers for struct __ntptimeval64 -- y2038: Introduce struct __ntptimeval64 - new internal glibc type -- y2038: linux: Provide __adjtime64 implementation -- y2038: linux: Provide ___adjtimex64 implementation -- y2038: linux: Provide __clock_adjtime64 implementation -- ldconfig: Default to the new format for ld.so.cache -- nss_compat: internal_end*ent may clobber errno, hiding ERANGE [BZ #25976] -- powerpc: Optimized rawmemchr for POWER9 -- x86: Add --enable-cet=permissive -- Remove NO_CTORS_DTORS_SECTIONS macro -- elf: Assert that objects are relocated before their constructors run -- powerpc: Optimized stpcpy for POWER9 -- powerpc: Optimized strcpy for POWER9 -- x86: Move CET control to _dl_x86_feature_control [BZ #25887] -- sunrpc/tst-udp-*: Fix timeout value -- Linux: Remove remnants of the getcpu cache -- Update timezone code from tzcode 2020a -- aarch64: fix strcpy and strnlen for big-endian [BZ #25824] -- locale: Add transliteration for Geresh, Gershayim (U+05F3, U+05F4) -- string: Fix string/tst-memmove-overflow to compile with GCC 7 -- Add arch-syscall.h dependency for generating sysd-syscalls file -- arm: XFAIL string/tst-memmove-overflow due to bug 25620 -- elf: Remove redundant add_to_global_resize_failure call from dl_open_args -- string: Add string/tst-memmove-overflow, a test case for bug 25620 -- support: Add support_blob_repeat_allocate_shared -- nptl: wait for pending setxid request also in detached thread (bug 25942) -- aarch64: Accept PLT calls to __getauxval within libc.so -- Use unsigned constants for ICMP6 filters [BZ #22489] -- Linux: Enhance glibcsyscalls.py to support listing system calls - -* Mon May 11 2020 DJ Delorie - 2.31.9000-13 -- Auto-sync with upstream branch master, - commit 978e8ac39f8ba2d694031e521511da1ae803ccfc. -- Suppress GCC 10 true positive warnings [BZ #25967] -- POWER: Add context-synchronizing instructions to pkey_write [BZ #25954] -- hurd: Add missing sigstate members initialization -- x86-64: Use RDX_LP on __x86_shared_non_temporal_threshold [BZ #25966] -- linux: Remove assembly umount2 implementation -- signal: Use for sigemptyset, sigfillset -- ckb_IQ, or_IN locales: Add missing reorder-end keywords -- semaphore: consolidate arch headers into a generic one -- Use GCC 10 branch in build-many-glibcs.py. -- Document the internal _ and N_ macros -- y2038: Provide conversion helpers for struct __timex64 -- y2038: Introduce struct __timex64 - new internal glibc type -- y2038: include: Move struct __timeval64 definition to a separate file -- y2038: nscd: Modify nscd_helper to use __clock_gettime64 -- y2038: inet: Convert inet deadline to support 64 bit time -- y2038: hurd: Provide __clock_gettime64 function -- y2038: Export __clock_gettime64 to be usable in other libraries -- manual: Document the O_NOFOLLOW open flag -- powerpc64le/power9: guard power9 strcmp against rtld usage [BZ# 25905] -- float128: use builtin_signbitf128 always -- improve out-of-bounds checking with GCC 10 attribute access [BZ #25219] -- nios2: delete sysdeps/unix/sysv/linux/nios2/kernel-features.h -- powerpc: Rename argN to _argN in LOADARGS_N [BZ #25902] -- locale/tst-localedef-path-norm: Don't create $(complocaledir) -- support: Set errno before testing it. -- localedef: Add tests-container test for --no-hard-links. -- test-container: Support $(complocaledir) and mkdirp. -- i386: Remove unused variable in sysdeps/x86/cacheinfo.c -- Add a C wrapper for prctl [BZ #25896] -- powerpc64le: Enable support for IEEE long double -- powerpc64le: blacklist broken GCC compilers (e.g GCC 7.5.0) -- powerpc64le: bump binutils version requirement to >= 2.26 -- powerpc64le: raise GCC requirement to 7.4 for long double transition -- Rename __LONG_DOUBLE_USES_FLOAT128 to __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI -- ldbl-128ibm-compat: workaround GCC 9 C++ PR90731 -- x86: Add the test case of __get_cpu_features support for Zhaoxin processors -- x86: Add cache information support for Zhaoxin processors -- x86: Add CPU Vendor ID detection support for Zhaoxin processors -- Update translations -- Add C wrappers for process_vm_readv/process_vm_writev [BZ #25810] -- generic/typesizes.h: Add support for 32-bit arches with 64-bit types -- semctl: Remove the sem-pad.h file -- bits/sem.h: Split out struct semid_ds -- Mark unsigned long arguments with U in more syscalls [BZ #25810] -- elf: Add initial flag argument to __libc_early_init -- Add SYSCALL_ULONG_ARG_[12] to pass long to syscall [BZ #25810] -- Makeconfig: Use $(error ...) to output error message -- manual: Fix typos in the fexecve description -- misc: Remove sstk from the autogenerated system call list -- Remove unused floating-point configuration from gmp-impl.h. -- support: Implement key create/delete -- nptl/tst-setuid1-static: Improve isolation from system objects -- Increase the timeout of locale/tst-localedef-path-norm -- Use 2020 as copyright year. -- misc: Turn sstk into a compat symbol -- manual: Document the fexecve function -- nptl: Start new threads with all signals blocked [BZ #25098] -- localedef: Add verbose messages for failure paths. -- Remove most gmp-mparam.h headers. -- elf: Implement __libc_early_init -- elf: Introduce -- Add a syscall test for [BZ #25810] -- elf: Support lld-style link map for librtld.map -- signal: Only handle on NSIG signals on signal functions (BZ #25657) -- linux: Use pthread_sigmask on sigprocmask -- ia64: Remove sigprocmask/sigblock objects from libpthread -- nptl: Move pthread_sigmask implementation to libc -- Bug 25819: Update to Unicode 13.0.0 - -* Wed Apr 29 2020 Florian Weimer - 2.31.9000-12 -- nss_db.x86_64 should install nss_db.i686 if glibc.i686 is installed (#1807821) -- Likewise for nss_hesiod. - -* Mon Apr 27 2020 Florian Weimer - 2.31.9000-11 -- Introduce glibc-headers-x86, glibc-headers-s390 packages (#1828332) -- Remove the glibc-headers package - -* Mon Apr 20 2020 DJ Delorie - 2.31.9000-10 -- Auto-sync with upstream branch master, - commit 0798b8ecc8da8667362496c1217d18635106c609. -- ARC: Update syscall-names.list for ARC specific syscalls -- Revert "x86_64: Add SSE sfp-exceptions" -- provide y2038 safe socket constants for default/asm-generic ABI -- x86_64: Add SSE sfp-exceptions -- Remove __NO_MATH_INLINES -- i686: Add INTERNAL_SYSCALL_NCS 6 argument support -- Reset converter state after second wchar_t output (Bug 25734) -- Fix typo in posix/tst-fnmatch.input (Bug 25790) - -* Wed Apr 15 2020 Patsy Griffin - 2.31.9000-9 -- Auto-sync with upstream branch master, - commit 076f09afbac1aa57756faa7a8feadb7936a724e4. -- Linux: Remove and the sysctl function -- posix: Add wait4 test case -- linux: wait4: Fix incorrect return value comparison -- hurd: add mach_print function -- x32: Properly pass long to syscall [BZ #25810] -- Add GRND_INSECURE from Linux 5.6 to sys/random.h -- Update kernel version to 5.6 in tst-mman-consts.py. - -* Wed Apr 15 2020 Florian Weimer - 2.31.9000-8 -- nsswitch.conf: don't add sss to shadow line - -* Wed Apr 08 2020 Carlos O'Donell - 2.31.9000-7 -- Auto-sync with upstream branch master, - commit b1caa144c74678097cada5a54eda2996bb459d8f. -- Update mips libm-test-ulps -- Update alpha libm-test-ulps -- Update ia64 libm-test-ulps -- Update sparc libm-test-ulps -- Update arm libm-test-ulps -- Update aarch64 libm-test-ulps -- Updates to the shn_MM locale [BZ #25532] -- powerpc: Update ULPs and xfail more ibm128 outputs -- i386: Remove build support for GCC older than GCC 6 -- oc_FR locale: Fix spelling of April (bug 25639) -- Update hppa libm-test-ulps -- y2038: linux: Provide __mq_timedreceive_time64 implementation -- y2038: linux: Provide __mq_timedsend_time64 implementation -- y2038: include: Move struct __timespec64 definition to a separate file -- malloc: ensure set_max_fast never stores zero [BZ #25733] -- powerpc64le: enforce non-specific long double in .gnu.attributes section -- powerpc64le: workaround ieee long double / _Float128 stdc++ bug -- powerpc64le: Enforce -mabi=ibmlongdouble when -mfloat128 used -- powerpc64le/multiarch: don't generate strong aliases for fmaf128-ppc64 -- ldbl-128ibm: simplify iscanonical.h -- i386: Disable check_consistency for GCC 5 and above [BZ #25788] -- Add IPPROTO_ETHERNET and IPPROTO_MPTCP from Linux 5.6 to netinet/in.h. -- Update syscall lists for Linux 5.6. -- elf: Implement DT_AUDIT, DT_DEPAUDIT support [BZ #24943] -- elf: Simplify handling of lists of audit strings -- support: Change xgetline to return 0 on EOF -- nptl: Remove x86_64 cancellation assembly implementations [BZ #25765] -- aarch64: update bits/hwcap.h -- Add tests for Safe-Linking -- S390: Regenerate ULPs. -- sysv/alpha: Use generic __timeval32 and helpers -- linux: Use long time_t for wait4/getrusage -- resource: Add a __rusage64 struct -- linux: Use long time_t __getitimer/__setitimer -- sysv: Define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 -- math: Add inputs that yield larger errors for float type (x86_64) - -* Tue Mar 31 2020 DJ Delorie - 2.31.9000-6 -- Auto-sync with upstream branch master, - commit 49c3c37651e2d2ec4ff8ce21252bbbc08a9d6639. -- Fix alignment bug in Safe-Linking -- Typo fixes and CR cleanup in Safe-Linking -- Use Linux 5.6 and GMP 6.2.0 in build-many-glibcs.py. -- Add new file missed in previous hppa commit. -- powerpc: Add support for fmaf128() in hardware -- Fix data race in setting function descriptors during lazy binding on hppa. -- sparc: Move __fenv_{ld,st}fsr to fenv-private.h -- x86: Remove feraiseexcept optimization -- math: Remove fenvinline.h -- hurd: Make O_TRUNC update mtime/ctime -- Add Safe-Linking to fastbins and tcache -- Add benchtests for roundeven and roundevenf. -- time: Add a __itimerval64 struct -- time: Add a timeval with a 32-bit tv_sec and tv_usec -- sysv/linux: Rename alpha functions to be alpha specific -- ARC: add definitions to elf/elf.h -- powerpc64: apply -mabi=ibmlongdouble to special files -- powerpc64le: add -mno-gnu-attribute to *f128 objects and difftime -- Makeconfig: sandwich gnulib-tests between libc/ld linking of tests -- powerpc64le: Ensure correct ldouble compiler flags are used -- Fix tests which expose ldbl -> _Float128 redirects -- ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally - -* Wed Mar 25 2020 Patsy Franklin - 2.31.9000-5 -- Auto-sync with upstream branch master, - commit 4eda036f5b897fa8bc20ddd2099b5a6ed4239dc9. -- stdlib: Move tst-system to tests-container -- support/shell-container.c: Add builtin kill -- support/shell-container.c: Add builtin exit -- support/shell-container.c: Return 127 if execve fails -- Add NEWS entry for CVE-2020-1751 (bug 25423) -- posix: Fix system error return value [BZ #25715] -- y2038: fix: Add missing libc_hidden_def attribute for some syscall wrappers -- Extended Char Intro: Use getwc in example (Bug 25626) -- stdio: Add tests for printf multibyte convertion leak [BZ#25691] -- stdio: Remove memory leak from multibyte convertion [BZ#25691] -- Add NEWS entry for CVE-2020-1752 (bug 25414) -- math: Remove inline math tests -- Remove __LIBC_INTERNAL_MATH_INLINES -- math: Remove mathinline -- m68k: Remove mathinline.h -- oc_FR locale: Fix spelling of Thursday (bug 25639) -- x86: Remove ARCH_CET_LEGACY_BITMAP [BZ #25397] -- Fix build with GCC 10 when long double = double. -- nscd/cachedumper.c : fix whitespace -- Fix nscd/cachedumper.c compile errors -- manual: Fix inconsistent declaration of wcsrchr [BZ #24655] -- nscd: add cache dumper - -* Fri Mar 13 2020 Patsy Franklin - 2.31.9000-4 -- Auto-sync with upstream branch master, - commit 2de7fe62534b7a6461c633114f03e9dff394f5f7. -- parse_tunables: Fix typo in comment -- ldconfig: trace origin paths with -v -- test-container: print errno when execvp fails -- [AArch64] Improve integer memcpy -- Add NEWS entry for CVE-2020-10029 (bug 25487) -- gcc PR 89877: miscompilation due to missing cc clobber in longlong.h macros -- mips: Fix wrong INTERNAL_SYSCALL_ERROR_P check from bc2eb9321e -- elf: Fix wrong indentation from commit eb447b7b4b -- y2038: linux: Provide __futimesat64 implementation -- y2038: linux: Provide __lutimes64 implementation -- y2038: linux: Provide __futimes64 implementation -- y2038: fix: Add missing libc_hidden_def for __futimens64 -- sparc: Move sigreturn stub to assembly -- ldbl-128ibm: Let long double files have specific compiler flags -- ldbl-128ibm-compat: Add tests for IBM long double functions -- powerpc: Fix feraiseexcept and feclearexcept macros -- arm: Fix softp-fp Implies (BZ #25635) -- Remove reference of --without-fp on configure -- linux/sysipc: Include linux/posix_types.h for __kernel_mode_t -- Improve IFUNC check [BZ #25506] -- linux: Clear mode_t padding bits (BZ#25623) -- linux: Remove aarch64 ipc_priv.h -- Linux: Use __fstatat64 in fchmodat implementation -- Linux: Use AT_FDCWD in utime, utimes when calling utimensat -- S390: Remove backchain-based fallback and use generic backtrace.c. -- manual: Fix wrong declaration of wcschr [BZ #24654] -- manual: Fix typo in parse_printf_format example [BZ #24638] - -* Thu Mar 5 2020 Florian Weimer - 2.31.9000-3 -- Emergency patch for broken utimes/utime functions - -* Tue Mar 03 2020 Patsy Franklin - 2.31.9000-2 -- Auto-sync with upstream branch master, - commit 78c9d0c6efabe2067ef7f93cd36325f54c60adc2. -- Update translations -- Convert Python scripts to Python 3 -- alpha: Do not build with -fpic -- y2038: linux: Provide __utime64 implementation -- y2038: linux: Provide __utimes64 implementation -- y2038: Introduce struct __utimbuf64 - new internal glibc type -- microblaze: vfork is always available -- m68k: getpagesize syscall number is always available -- Linux: epoll_pwait syscall number is always available -- x86_64: Do not define __NR_semtimedop in -- ia64: Do not define __NR_semtimedop in -- Linux: open_by_handle_at syscall number is always available -- Linux: set_robust_list syscall number is always available -- Linux: pciconfig_iobase syscall number is always available on alpha -- Linux: getdents64 syscall number is always available on MIPS -- Linux: Clean up preadv2, pwritev2 system call names -- Linux: exit_group syscall number is always available -- Linux: set_tid_address syscall number is always available -- Linux: pkey_mprotect syscall number is always available -- Linux: rt_sigqueueinfo syscall number is always available -- Linux: getrandom syscall number is always available -- Linux: Clean up preadv, pwritev system call names -- Linux: Clean up pread64/pwrite64 system call names -- Linux: sigaltstack syscall number is always available -- Linux: sched_getaffinity syscall number is always available -- Linux: sched_setaffinity syscall number is always available -- Linux: statx syscall number is always available -- Linux: mq_* syscall numbers are always available -- Linux: mlock2 syscall number is always available -- Linux: copy_file_range syscall number is always available -- Linux: renameat2 syscall number is always available -- build-many-glibcs.py: Add list-compilers, list-glibcs commands -- build-many-glibcs.py: Add --shallow option -- Fixed typo in run_command_array() in support/shell-container.c -- Add missing libc_hidden_def for __utimensat64 -- elf: Add elf/check-wx-segment, a test for the presence of WX segments -- i386: Use comdat instead of .gnu.linkonce for i386 setup pic register (BZ #20543) -- ldbl-128ibm-compat: link tst-ldbl-efgcvt against loader too -- ldbl-128ibm-compat: enforce ibm128 on compat tests -- ldbl-128ibm-compat: Provide nexttoward functions -- ldbl-128ibm-compat: Provide a significand implementation -- ldbl-128ibm-compat: Redirect complex math functions -- ldbl-128ibm-compat: Redirect long double functions to f128/ieee128 functions -- posix: Remove posix waitid -- posix: Refactor tst-waitid (BZ #14666) -- support: Add support_process_state_wait -- malloc/tst-mallocfork2: Kill lingering process for unexpected failures - -* Wed Feb 26 2020 Patsy Franklin - 2.31.9000-1 -- Auto-sync with upstream branch master, - commit 758599bc9dcc5764e862bd9e1613c5d1e6efc5d3. -- elf: Apply attribute_relro to pointers in elf/dl-minimal.c -- powerpc: Refactor fenvinline.h -- nss_nis: Use NSS_DECLARE_MODULE_FUNCTIONS -- csu: Use ELF constructor instead of _init in libc.so -- ldbl-128ibm: make ieee754.h work with IEEE 128 long double -- ldbl-128ibm-compat: fixup subdir location of several funcs -- ldbl-128ibm-compat: enforce correct abi flags on internal file -- ldbl-128ibm-compat: Provide ieee128 symbols to narrow functions -- Undefine redirections after long double definition on __LDBL_COMPAT [BZ #23294] -- nios2: Fix Linux kABI for syscall return -- Fix use-after-free in glob when expanding ~user (bug 25414) -- nptl: Move pthread_setschedparam implementation into libc -- nptl: Move pthread_getschedparam implementation into libc -- Add hidden prototypes for __sched_getparam, __sched_getscheduler -- nptl: Move pthread_cond_init implementation into libc -- nptl: Move pthread_cond_destroy implementation into libc -- nptl: Move pthread_condattr_init implementation into libc -- nptl: Move pthread_condattr_destroy implementation into libc -- nptl: Move pthread_attr_setscope implementation into libc -- nptl: Move pthread_attr_getscope implementation into libc -- nptl: Move pthread_attr_setschedpolicy implementation into libc -- nptl: Move pthread_attr_getschedpolicy implementation into libc -- nptl: Sort routines list in Makefile alphabetically -- nptl: Use .NOTPARALLEL in Makefile only if actually running tests -- Block all signals on timer_create thread (BZ#10815) -- Fix tst-pkey expectations on pkey_get [BZ #23202] -- y2038: linux: Provide __gettimeofday64 implementation -- Linux: Work around kernel bugs in chmod on /proc/self/fd paths [BZ #14578] -- Introduce and ELF_INITFINI for all architectures -- mips: Fix bracktrace result for signal frames -- Move implementation of into a C file -- : Add type safety and port to Hurd -- Prepare redirections for IEEE long double on powerpc64le -- conform/conformtest.py: Extend tokenizer to cover character constants -- stdlib: Reduce namespace pollution in -- x86: Avoid single-argument _Static_assert in -- x86 tls: Use _Static_assert for TLS access size assertion -- htl: Link internal htl tests against libpthread -- pthread: Fix building tst-robust8 with nptl -- pthread: Move robust mutex tests from nptl to sysdeps/pthread -- htl: Remove stub warning for pthread_mutexattr_setpshared -- htl: Add missing functions and defines for robust mutexes -- htl: Only check pthread_self coherency when DEBUG is set -- hurd: Add THREAD_GET/SETMEM/_NC -- hurd tls: update comment about fields at the end of tcbhead -- ld.so: Do not export free/calloc/malloc/realloc functions [BZ #25486] -- Remove weak declaration of free from -- elf: Extract _dl_sym_post, _dl_sym_find_caller_map from elf/dl-sym.c -- elf: Introduce the rtld-stubbed-symbols makefile variable -- arm: fix use of INTERNAL_SYSCALL_CALL -- linux: Remove INTERNAL_SYSCALL_DECL -- nptl: Remove ununsed pthread-errnos.h rule -- linux: Consolidate INLINE_SYSCALL -- s390: Consolidate Linux syscall definition -- riscv: Avoid clobbering register parameters in syscall -- microblaze: Avoid clobbering register parameters in syscall -- nios2: Use Linux kABI for syscall return -- mips: Use Linux kABI for syscall return -- mips64: Consolidate Linux sysdep.h -- ia64: Use Linux kABI for syscall return -- alpha: Refactor syscall and Use Linux kABI for syscall return -- sparc: Avoid clobbering register parameters in syscall -- sparc: Use Linux kABI for syscall return -- powerpc: Use Linux kABI for syscall return -- powerpc: Consolidate Linux syscall definition -- i386: Enable CET support in ucontext functions -- tst-clone3: Use __NR_futex_time64 if we don't have __NR_futex -- powerpc64: Add memory protection key support [BZ #23202] -- ldbl-128ibm-compat: Provide a scalb implementation -- Add a generic scalb implementation -- Adjust thresholds in Bessel function implementations (bug 14469). -- resolv: Fix ABA race in /etc/resolv.conf change detection [BZ #25420] -- resolv: Enhance __resolv_conf_load to capture file change data -- resolv: Fix file handle leak in __resolv_conf_load [BZ #25429] -- resolv: Use in __resolv_conf_get_current -- Add STATX_ATTR_VERITY from Linux 5.5 to bits/statx-generic.h. -- Use gcc -finput-charset=ascii for check-installed-headers. -- math/test-sinl-pseudo: Use stack protector only if available -- alpha: Fix static gettimeofday symbol -- nss_nisplus: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss_dns: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss_files: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss_db: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss_compat: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss_hesiod: Use NSS_DECLARE_MODULE_FUNCTIONS -- nss: Add function types and NSS_DECLARE_MODULE_FUNCTIONS macro to -- nss_compat: Do not use nss_* names for function pointers -- Avoid ldbl-96 stack corruption from range reduction of pseudo-zero (bug 25487). -- mips: Fix argument passing for inlined syscalls on Linux [BZ #25523] -- mips: Use 'long int' and 'long long int' in linux syscall code -- alpha: Use generic gettimeofday implementation -- sunrpc: Properly clean up if tst-udp-timeout fails -- elf: avoid stack allocation in dl_open_worker -- elf: avoid redundant sort in dlopen -- elf: Allow dlopen of filter object to work [BZ #16272] -- Update translations -- Rename RWF_WRITE_LIFE_NOT_SET to RWH_WRITE_LIFE_NOT_SET following Linux 5.5. -- S390: Fix non-ascii character in fenv.h. -- io: Add io/tst-lchmod covering lchmod and fchmodat -- Linux: Emulate fchmodat with AT_SYMLINK_NOFOLLOW using O_PATH [BZ #14578] -- io: Implement lchmod using fchmodat [BZ #14578] -- Add internal header file -- elf.h: Add R_RISCV_IRELATIVE -- Fix typo in the name for Wednesday in Kurdish [BZ #9809] -- debug: Add missing locale dependencies of fortify tests -- htl C11 threads: Avoid pthread_ symbols visibility in static library -- hurd: Add __pthread_spin_wait and use it -- ldbl-128ibm-compat: set PRINTF_CHK flag in {,v}sprintf_chk -- Use --disable-gdbserver in build-many-glibcs.py. -- Improve random memcpy benchmark -- nptl: update default pthread-offsets.h -- nptl: add missing pthread-offsets.h -- htl: Avoid a local plt for pthread_self -- pthread: Move some join tests from nptl to sysdeps/pthread -- htl: Make joining self return EDEADLK -- pthread: Move most barrier tests from nptl to sysdeps/pthread -- htl: Fix barrier_wait with one thread -- pthread: Move most sem tests from nptl to sysdeps/pthread -- htl: Make sem_wait/sem_timedwait interruptible -- htl: Make sem_open return ENOSYS -- htl: Add support for semaphore maximum value -- pthread: Move key tests from nptl to sysdeps/pthread -- hurd: Make nanosleep a cancellation point -- htl: Add support for libc cancellation points -- htl: clean __pthread_get_cleanup_stack hidden proto -- htl: XFAIL rwlock tests which need pshared support -- pthread: Move some rwlock tests from nptl to sysdeps/pthread -- pthread: Move most once tests from nptl to sysdeps/pthread -- htl: support cancellation during pthread_once -- pthread: Move most cond tests from nptl to sysdeps/pthread -- htl: make pthread_cond_destroy return EBUSY on waiters -- htl: Report missing mutex lock on pthread_cond_*wait -- htl: Fix linking static testcases -- htl: Move __register_atfork from forward to own file -- pthread: Move some attr tests from nptl to sysdeps/pthread -- htl: Fix default guard size -- pthread: Move most mutex tests from nptl to sysdeps/pthread -- pthread: Move spin tests from nptl to sysdeps/pthread -- htl: make pthread_spin_lock really spin -- htl: Avoid check-installed-headers looking at inlines -- htl: Do not put spin_lock inlines in public headers -- pthread: Move basic tests from nptl to sysdeps/pthread -- htl: Fix calling pthread_exit in the child of a fork -- x86: Remove and use the generic version -- C11 threads: Move implementation to sysdeps/pthread -- htl: Add C11 threads types definitions -- C11 threads: make thrd_join more portable -- C11 threads: Fix thrd_t / pthread_t compatibility assertion -- C11 threads: do not require PTHREAD_DESTRUCTOR_ITERATIONS -- nptl: Move nptl-specific types to separate header -- htl: Make __PTHREAD_ONCE_INIT more flexible -- htl: Add support for C11 threads behavior -- htl: Add missing internal functions declarations -- htl: Rename _pthread_mutex_init/destroy to __pthread_mutex_init/destroy -- htl: Move internal mutex/rwlock symbols to GLIBC_PRIVATE -- Linux: Add io/tst-o_path-locks test -- support: Add the xlstat function -- htl: Remove duplicate files -- htl: Remove unused files -- resolv: Fix CNAME chaining in resolv/tst-resolv-ai_idn-common.c -- Remove a comment claiming that sin/cos round correctly. -- y2038: linux: Provide __settimeofday64 implementation -- y2038: Provide conversion helpers for struct __timeval64 -- y2038: alpha: Rename valid_timeval64_to_timeval to valid_timeval_to_timeval32 -- y2038: alpha: Rename valid_timeval_to_timeval64 to valid_timeval32_to_timeval -- y2038: Introduce struct __timeval64 - new internal glibc type -- y2038: Define __suseconds64_t type to be used with struct __timeval64 -- Update kernel version to 5.5 in tst-mman-consts.py. -- Update syscall lists for Linux 5.5. -- NEWS: Set fill-column hint to 72 -- y2038: linux: Provide __timespec_get64 implementation -- Use binutils 2.34 branch in build-many-glibcs.py. -- Run nptl/tst-pthread-getattr in a container -- test-container: add exec, cwd -- Use Linux 5.5 in build-many-glibcs.py. -- rt: avoid PLT setup in timer_[sg]ettime -- Update or_IN collation [BZ #22525] -- Fix ckb_IQ [BZ #9809] -- Add new locale: ckb_IQ (Kurdish/Sorani spoken in Iraq) [BZ #9809] -- list-fixed-bugs.py: Wrap at 72 chars -- y2038: linux: Provide __sched_rr_get_interval64 implementation -- y2038: linux: Provide __timerfd_settime64 implementation -- y2038: linux: Provide __timerfd_gettime64 implementation -- i386: Remove _exit.S -- i386: Use ENTRY/END in assembly codes -- i386-mcount.S: Add _CET_ENDBR to _mcount and __fentry__ -- i386/sub_n.S: Add a missing _CET_ENDBR to indirect jump target -- i386: Don't unnecessarily save and restore EAX, ECX and EDX [BZ# 25262] -- x86: Don't make 2 calls to dlerror () in a row -- Open master for 2.32 development - -* Mon Feb 03 2020 DJ Delorie - 2.31-1 -- Auto-sync with upstream branch release/2.31/master, - commit 9ea3686266dca3f004ba874745a4087a89682617. -- glibc 2.31 release -- Generate ChangeLog.old/ChangeLog.20 for 2.31 -- Add bugs fixed in 2.31 in NEWS -- Update newest tested versions of dependencies in install.texi -- Add more contributors to the manual -- Add note to NEWS about kernel headers dependency on risc-v -- Add Portuguese (Portugal) translation -- Add NEWS entry about 64-bit time_t syscall use on 32-bit targets -- nptl: Avoid using PTHREAD_MUTEX_DEFAULT in macro definition [BZ #25271] - -* Thu Jan 30 2020 Patsy Franklin - 2.30.9000-33 -- Auto-sync with upstream branch master, - commit 352bb99754ae7c83ff1b974f9c52244e974c9410. -- Build raise with -fasynchronous-unwind-tables. -- Fix locale/tst-locale-locpath cross-testing when sshd sets LANG. -- Fix elf/tst-rtld-preload cross-testing. -- Fix cross-testing of tst-ifunc-fault-* tests. -- gitlog-to-changelog: Drop scripts in favour of gnulib version -- Add NEWS entry about the change in handling of PT_GNU_STACK on MIPS -- Fix array overflow in backtrace on PowerPC (bug 25423) -- getaddrinfo: Fix resource leak after strdup failure in gethosts (swbz#25425) - -* Tue Jan 28 2020 Fedora Release Engineering -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Mon Jan 20 2020 Patsy Franklin - 2.30.9000-31 -- Auto-sync with upstream branch master, - commit 92ce43eef7ac844782d50a8015d977d216fbadec. -- Run bench-timing-type with newly built libc. -- Get rid of Werror=maybe-uninitialized in res_send.c. -- translations: Update translations -- translations: Trim po files using msgattrib -- Update translations -- translations: Run msgmerge when downloading translations -- Fix maybe-uninitialized error on powerpc -- powerpc32: Fix syntax error in __GLRO macro -- Remove incorrect alloc_size attribute from pvalloc (swbz#25401) - -* Fri Jan 17 2020 Florian Weimer - 2.30.9000-30 -- Auto-sync with upstream branch master, - commit 70ba28f7ab2923d4e36ffc9d5d2e32357353b25c: -- Fix tst-pkey.c pkey_alloc return checks and manual -- powerpc: Move cache line size to rtld_global_ro -- powerpc: Initialize rtld_global_ro for static dlopen (swbz#20802) -- Revert outdated translations -- vcs-to-changelog: Add quirk for __nonnull -- elf: Add elf/tst-dlopenfail-2 (swbz#25396, #1395758) -- Clear GL(dl_initfirst) when freeing its link_map (swbz#25396, #1395758) -- Update Translations -- Fix "elf: Add tst-ldconfig-ld_so_conf-update test" on 32bit. -- elf: Add tst-ldconfig-ld_so_conf-update test -- sl_SI locale: Use "." as the thousands separator (swbz#25233) - -* Mon Jan 06 2020 Arjun Shankar - 2.30.9000-29 -- Auto-sync with upstream branch master, - commit cbce69e70dc4b04fefcc7257e593733b8b03856c: -- Multiple locales: Add date_fmt (bug 24054) -- Update libc.pot for 2.31 release -- Add libm_alias_finite for _finite symbols -- Linux: Fix clock_nanosleep time64 check -- linux: Fix vDSO macros build with time64 interfaces -- x86: Make x32 use x86 time implementation -- Remove vDSO support from make-syscall.sh -- linux: Update x86 vDSO symbols -- linux: Update mips vDSO symbols -- linux: Consolidate Linux gettimeofday -- linux: Consolidate time implementation -- elf: Enable relro for static build -- elf: Move vDSO setup to rtld (BZ#24967) -- linux: Add support for clock_gettime64 vDSO -- linux: Optimize fallback 32-bit clock_gettime -- linux: Enable vDSO clock_gettime64 for i386 -- linux: Enable vDSO clock_gettime64 for arm -- linux: Enable vDSO clock_gettime64 for mips -- linux: Add support for clock_getres64 vDSO -- linux: Optimize fallback 32-bit clock_getres -- htl: Use dso_handle.h -- htl: Drop common tcbhead_t definition -- htl: Move pthread_atfork to libc_nonshared.a -- htl: Add __errno_location and __h_errno_location -- hurd: Fix message reception for timer_thread - -* Thu Jan 02 2020 Florian Weimer - 2.30.9000-28 -- Auto-sync with upstream branch master, - commit cc47d5c5f53f6d845ac54698ae8929af15662c44: -- Linux: Use built-in system call tables -- lv_LV locale: Correct the time part of d_t_fmt (swbz#25324) -- km_KH locale: Use "%M" instead of "m" in d_t_fmt (swbz#25323) -- ldbl-128ibm-compat: Do not mix -mabi=*longdouble and -mlong-double-128 -- ldbl-128ibm-compat: Compiler flags for stdio functions -- Do not redirect calls to __GI_* symbols, when redirecting to *ieee128 -- aarch64: add default memcpy version for kunpeng920 -- aarch64: ifunc rename for kunpeng -- aarch64: Modify error-shown comments for strcpy -- linux: Consolidate sigprocmask -- Fix return code for __libc_signal_* functions -- nptl: Remove duplicate internal __SIZEOF_PTHREAD_MUTEX_T (swbz#25241) - -* Thu Dec 26 2019 Carlos O'Donell - 2.30.9000-27 -- Auto-sync with upstream branch master, - commit b8c210bcc74840d24c61d39bde15bea9daf3e271. -- mnw_MM, my_MM, and shn_MM locales: Do not use %Op -- Avoid compat symbols for totalorder in powerpc64le IEEE long double -- ldbl-128ibm-compat: Add *cvt functions -- Refactor *cvt functions implementation (2/2) -- Refactor *cvt functions implementation (1/2) -- Add exception-based flags for wait4 -- aarch64: Optimized memset for Kunpeng processor. -- aarch64: Optimized strlen for strlen_asimd -- aarch64: Add Huawei Kunpeng to tunable cpu list -- aarch64: Optimized implementation of memrchr -- aarch64: Optimized implementation of strnlen -- aarch64: Optimized implementation of strcpy -- aarch64: Optimized implementation of memcmp -- Consolidate wait3 implementations -- Implement waitpid in terms of wait4 -- linux: Use waitid on wait4 if __NR_wait4 is not defined -- Implement wait in terms of waitpid -- nptl: Move waitpid implementation to libc -- nptl: Move wait implementation to libc -- Remove __waitpid_nocancel -- Fix test isolation for elf/tst-ifunc-fault-lazy, elf/tst-ifunc-fault-bindnow -- Fix __libc_signal_block_all on sparc64 -- powerpc: Do not run IFUNC resolvers for LD_DEBUG=unused [BZ #24214] - -* Thu Dec 19 2019 Patsy Franklin - 2.30.9000-26 -- Auto-sync with upstream branch master, - commit 3dcad8158f43d71d5b8f6f317f82952ddf3468f3. -- hurd: Do not make sigprocmask available in ld.so -- build-many-glibcs.py: Do not build C++ PCHs by default -- hurd: Make getrandom honour GRND_NONBLOCK -- tunables: report sbrk() failure -- build-many-glibcs.py: Add mipsisa64r6el-linux-gnu target -- mips: Do not include hi and lo in __SYSCALL_CLOBBERS for R6 -- ldbl-128ibm-compat: Add ISO C99 versions of scanf functions -- ldbl-128ibm-compat: Fix selection of GNU and ISO C99 scanf -- hurd: Fix local PLT -- dlopen: Do not block signals -- dlopen: Rework handling of pending NODELETE status -- dlopen: Fix issues related to NODELETE handling and relocations -- hurd: Fix __close_nocancel_nostatus availability -- hurd: add getrandom and getentropy implementations -- hurd: Implement __close_nocancel_nostatus -- manual: clarify fopen with the x flag -- S390: Use sysdeps/ieee754/dbl-64/wordsize-64 on s390x. -- S390: Implement roundtoint and converttoint and define TOINT_INTRINSICS. -- S390: Implement math-barriers math_opt_barrier and math_force_eval. -- S390: Use libc_fe* macros in fe* functions. -- S390: Implement libc_fe* macros. -- S390: Use convert-to-fixed instruction for llround functions. -- S390: Use convert-to-fixed instruction for lround functions. -- S390: Use convert-to-fixed instruction for llrint functions. -- S390: Use convert-to-fixed instruction for lrint functions. -- S390: Use load-fp-integer instruction for roundeven functions. -- Adjust s_copysignl.c regarding code style. -- Adjust s_ceilf.c and s_ceill.c regarding code style. -- Adjust s_floorf.c and s_floorl.c regarding code style. -- Adjust s_rintf.c and s_rintl.c regarding code style. -- Adjust s_nearbyintf.c and s_nearbyintl.c regarding code style. -- Use GCC builtins for copysign functions if desired. -- Use GCC builtins for round functions if desired. -- Use GCC builtins for trunc functions if desired. -- Use GCC builtins for ceil functions if desired. -- Use GCC builtins for floor functions if desired. -- Use GCC builtins for rint functions if desired. -- Use GCC builtins for nearbyint functions if desired. -- Always use wordsize-64 version of s_round.c. -- Always use wordsize-64 version of s_trunc.c. -- Always use wordsize-64 version of s_ceil.c. -- Always use wordsize-64 version of s_floor.c. -- Always use wordsize-64 version of s_rint.c. -- Always use wordsize-64 version of s_nearbyint.c. -- ldconfig: Do not print a warning for a missing ld.so.conf file -- hurd: Fix using altstack while in an RPC call to be aborted -- Fix failure when CFLAGS contains -DNDEBUG (Bug 25251) - -* Mon Dec 09 2019 DJ Delorie - 2.30.9000-25 -- Auto-sync with upstream branch master, - commit 0487ebed2278b20971af4cabf186fd3681adccf0. -- nptl: Add more missing placeholder abi symbol from nanosleep move -- sysdeps/riscv/start.S: rename .Lload_gp to load_gp (bug 24376) -- y2038: linux: Provide __timer_settime64 implementation -- y2038: linux: Provide __timer_gettime64 implementation -- timer: Decouple x86_64 specific timer_settime from generic Linux implementation -- timer: Decouple x86_64 specific timer_gettime from generic Linux implementation -- time: Introduce glibc's internal struct __itimerspec64 -- Correct range checking in mallopt/mxfast/tcache [BZ #25194] -- misc/test-errno-linux: Handle EINVAL from quotactl -- : Define __CORRECT_ISO_CPP_STRING_H_PROTO for Clang [BZ #25232] -- build-many-glibcs.py: Move sparcv8 to extra_glibcs - -* Thu Dec 5 2019 Florian Weimer - 2.30.9000-24 -- Upstream patches for fallout from dlopen NODELETE changes (#1778344, #1778366) - -* Wed Dec 04 2019 Patsy Franklin - 2.30.9000-23 -- Auto-sync with upstream branch master, - commit ec138c67cbda8b5826a0a2a7ba456408117996dc. -- sysdeps: Add clock_gettime64 vDSO -- Do not use ld.so to open statically linked programs in debugglibc.sh -- Attach to test in container from debugglibc.sh -- Expand $(as-needed) and $(no-as-needed) throughout the build system -- x86: Assume --enable-cet if GCC defaults to CET [BZ #25225] -- ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold -- ldbl-128ibm-compat: Add tests for strfmon and strfmon_l -- ldbl-128ibm-compat: Add strfmon_l with IEEE long double format -- ldbl-128ibm-compat: Replace http with https in new files -- elf: Do not run IFUNC resolvers for LD_DEBUG=unused [BZ #24214] -- elf/tst-dlopenfail: Disable --no-as-needed for tst-dlopenfailmod1.so -- hurd: Fix ld.so __access override from libc -- hurd: Fix ld.so __getcwd override from libc -- hurd: Make __sigprocmask GLIBC_PRIVATE -- hurd: Fix renameat2 error -- hurd: make strerror(0) coherent with other ports -- hurd: Fix ld.so link -- Update kernel version to 5.4 in tst-mman-consts.py. -- Update SOMAXCONN value from Linux 5.4. -- Update syscall-names.list for Linux 5.4. -- Fix syntax error in build-many-glibcs.py. -- Define MADV_COLD and MADV_PAGEOUT from Linux 5.4. - -* Mon Dec 2 2019 Florian Weimer - 2.30.9000-22 -- dlopen: Remove incorrect assert in activate_nodelete (#1778344) - -* Thu Nov 28 2019 Florian Weimer - 2.30.9000-21 -- Auto-sync with upstream branch master, - commit e37c2cf299b61ce18f62852f6c5624c27829b610: -- Move _dl_open_check to its original place in dl_open_worker -- Block signals during the initial part of dlopen -- Remove all loaded objects if dlopen fails, ignoring NODELETE (#1395758) -- Avoid late dlopen failure due to scope, TLS slotinfo updates (swbz#25112) -- Avoid late failure in dlopen in global scope update (swbz#25112) -- Lazy binding failures during dlopen/dlclose must be fatal (swbz#24304) -- resolv: Implement trust-ad option for /etc/resolv.conf (#1164339) -- dlsym: Do not determine caller link map if not needed -- libio: Disable vtable validation for pre-2.1 interposed handles (swbz#25203) -- ldbl-128ibm-compat: Add syslog functions -- ldbl-128ibm-compat: Add obstack printing functions -- ldbl-128ibm-compat: Reuse tests for err.h and error.h functions -- ldbl-128ibm-compat: Add error.h functions -- ldbl-128ibm-compat: Add err.h functions -- ldbl-128ibm-compat: Add argp_error and argp_failure -- sparc: Use atomic compiler builtins on sparc -- Remove 32 bit sparc v7 support - -* Wed Nov 27 2019 Arjun Shankar - 2.30.9000-20 -- Auto-sync with upstream branch master, - commit bfdb731438206b0f70fe7afa890681155c30b419: -- rtld: Check __libc_enable_secure for LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126) -- Introduce DL_LOOKUP_FOR_RELOCATE flag for _dl_lookup_symbol_x -- Enable inlining issignalingf within glibc -- Don't use a custom wrapper macro around __has_include (bug 25189). -- Remove duplicate inline implementation of issignalingf -- misc: Set generic pselect as ENOSYS -- Use DEPRECATED_SCANF macro for remaining C99-compliant scanf functions -- ldbl-128ibm-compat: Add regular/wide character printing printing functions -- ldbl-128ibm-compat: Test double values and positional arguments -- ldbl-128ibm-compat: Add regular/wide character scanning functions -- arm: Fix armv7 selection after 'Split BE/LE abilist' -- Use Linux 5.4 in build-many-glibcs.py. -- sysdeps/posix: Simplify if expression in getaddrinfo -- sysdeps/posix/getaddrinfo: Return early on invalid address family -- ru_UA locale: use copy "ru_RU" in LC_TIME (bug 25044) -- locale: Greek -> ASCII transliteration table [BZ #12031] -- nptl: Cleanup mutex internal offset tests -- nptl: Add tests for internal pthread_rwlock_t offsets -- nptl: Remove rwlock elision definitions -- nptl: Add struct_mutex.h and struct_rwlock.h -- nptl: Add default pthreadtypes-arch.h and pthread-offsets.h -- Compile elf/rtld.c with -fno-tree-loop-distribute-patterns. -- nptl: Fix __PTHREAD_MUTEX_INITIALIZER for !__PTHREAD_MUTEX_HAVE_PREV -- S390: Fix handling of needles crossing a page in strstr z15 ifunc [BZ #25226] - -* Mon Nov 18 2019 Patsy Griffin - 2.30.9000-19 -- Auto-sync with upstream branch master, - commit 2a764c6ee848dfe92cb2921ed3b14085f15d9e79. -- Enhance _dl_catch_exception to allow disabling exception handling -- hurd: Suppress GCC 10 -Warray-bounds warning in init-first.c [BZ #25097] -- linux: Add comment on affinity set sizes to tst-skeleton-affinity.c -- Avoid zero-length array at the end of struct link_map [BZ #25097] -- Introduce link_map_audit_state accessor function -- Properly initialize audit cookie for the dynamic loader [BZ #25157] -- nios2: Work around backend bug triggered by csu/libc-tls.c (GCC PR 92499) -- Redefine _IO_iconv_t to store a single gconv step pointer [BZ #25097] -- Add new script for plotting string benchmark JSON output -- support: Fix support_set_small_thread_stack_size to build on Hurd -- login: Use pread64 in utmp implementation -- Clarify purpose of assert in _dl_lookup_symbol_x -- aarch64: Increase small and medium cases for __memcpy_generic -- login: Introduce matches_last_entry to utmp processing - -* Tue Nov 12 2019 Arjun Shankar - 2.30.9000-18 -- Auto-sync with upstream branch master, - commit cba932a5a9e91cffd7f4172d7e91f9b2efb1f84b: -- nptl: Move nanosleep implementation to libc -- Refactor nanosleep in terms of clock_nanosleep -- nptl: Refactor thrd_sleep in terms of clock_nanosleep -- math: enhance the endloop condition of function handle_input_flag -- hurd: Remove lingering references to the time function -- hurd: Use __clock_gettime in _hurd_select -- login: Remove double-assignment of fl.l_whence in try_file_lock -- nptl: Add missing placeholder abi symbol from nanosleep move -- login: Acquire write lock early in pututline [BZ #24882] -- Remove hppa pthreadP.h -- sysdeps/clock_nanosleep: Use clock_nanosleep_time64 if avaliable -- Fix array bounds violation in regex matcher (bug 25149) -- support: Add support_set_small_thread_stack_size -- linux: Reduce stack size for nptl/tst-thread-affinity-pthread -- y2038: linux: Provide __ppoll64 implementation -- Declare asctime_r, ctime_r, gmtime_r, localtime_r for C2X. -- support: Add xsetlocale function -- libio/tst-fopenloc: Use xsetlocale, xfopen, and xfclose -- Fix clock_nanosleep when interrupted by a signal -- slotinfo in struct dtv_slotinfo_list should be flexible array [BZ #25097] - -* Wed Nov 06 2019 Patsy Franklin - 2.30.9000-17 -- Auto-sync with upstream branch master, - commit 2a0356e1191804d57005e1cfe2a72f019b7a8cce. -- posix: Sync regex with gnulib -- Add mnw language code [BZ #25139] -- Add new locale: mnw_MM (Mon language spoken in Myanmar) [BZ #25139] -- S390: Fp comparison are now raising FE_INVALID with gcc 10. -- linux: pselect: Remove CALL_PSELECT6 macro -- Fix run-one-test so that it runs elf tests -- nptl: Fix niggles with pthread_clockjoin_np -- hppa: Align __clone stack argument to 8 bytes (Bug 25066) -- y2038: linux: Provide __futimens64 implementation -- y2038: linux: Provide __utimensat64 implementation -- nptl: Add pthread_timedjoin_np, pthread_clockjoin_np NULL timeout test -- nptl: Add pthread_clockjoin_np -- manual: Add documentation for pthread_tryjoin_np and pthread_timedjoin_np -- nptl: Convert tst-join3 to use libsupport -- Sync time/mktime.c with gnulib -- Sync timespec-{add,sub} with gnulib -- Sync intprops.h with gnulib -- Refactor adjtimex based on clock_adjtime -- Refactor PI mutexes internal definitions -- Remove pause and nanosleep not cancel wrappers -- nptl: Replace non cancellable pause/nanosleep with futex -- Consolidate lowlevellock-futex.h -- Consolidate futex-internal.h -- Base max_fast on alignment, not width, of bins (Bug 24903) -- Revise the documentation of simple calendar time. -- Make second argument of gettimeofday as 'void *' -- Use clock_gettime to implement gettimeofday. -- Use clock_gettime to implement timespec_get. -- Consolidate and deprecate ftime -- Change most internal uses of time to __clock_gettime. -- Use clock_gettime to implement time. -- Use clock_settime to implement settimeofday. -- Use clock_settime to implement stime; withdraw stime. -- Change most internal uses of __gettimeofday to __clock_gettime. -- Linux/Alpha: don't use timeval32 system calls. -- resolv/tst-idna_name_classify: Isolate from system libraries -- hurd: Support for file record locking -- Comment out initgroups from example nsswitch.conf (Bug 25146) - -* Mon Oct 28 2019 DJ Delorie - 2.30.9000-16 -- Auto-sync with upstream branch master, - commit 177a3d48a1c74d7b2cd6bfd48901519d25a5ecad. -- y2038: linux: Provide __clock_getres64 implementation -- time: Introduce function to check correctness of nanoseconds value -- Add Transliterations for Unicode Misc. Mathematical Symbols-A/B [BZ #23132] -- Install charmaps uncompressed in testroot -- Add wait-for-debugger test harness hooks -- Define __STATFS_MATCHES_STATFS64 -- hurd: Fix build after __pread64 usage in the dynamic loader -- sysdeps/stat: Handle 64-bit ino_t types on 32-bit hosts -- S390: Remove not needed stack frame in syscall function. - -* Fri Oct 25 2019 DJ Delorie - 2.30.9000-15 -- Add *.mo files to all-langpacks (#1624528) - -* Thu Oct 24 2019 DJ Delorie - 2.30.9000-14 -- Add Requires on basesystem for main package (#1757267) -- Add Requires on coreutils for glibc-headers (uses rm) - -* Wed Oct 23 2019 Arjun Shankar - 2.30.9000-13 -- Auto-sync with upstream branch master, - commit 7db1fe38de21831d53ceab9ae83493d8d1aec601: -- Include explicitly in Linux clock_settime.c -- Remove math-finite.h -- Remove finite-math tests -- Remove x64 _finite tests and references -- Fix testroot.pristine creation copying dynamic linker - -* Fri Oct 18 2019 Patsy Franklin - 2.30.9000-12 -- Auto-sync with upstream branch master, - commit ef21bd2d8c6805c0c186a01f7c5039189f51b8c4. -- loadarchive: guard against locale-archive corruption (Bug #25115) -- Undo accidental commit to ChangeLog.19. -- nptl: Document AS-safe functions in cancellation.c. -- elf: Use nocancel pread64() instead of lseek()+read() -- Add nocancel version of pread64() -- Add run-one-test convenience target and makefile help text -- Update sysvipc kernel-features.h files for Linux 5.1 -- S390: Add new s390 platform z15. -- nptl: SIGCANCEL, SIGTIMER, SIGSETXID are always defined -- nptl/tst-cancel25 needs to be an internal test -- Remove libc_hidden_def from __semtimedop stub -- sysvipc: Implement semop based on semtimedop -- ipc: Refactor sysvipc internal definitions -- Rename and split elf/tst-dlopen-aout collection of tests -- dlfcn: Remove remnants of caller sensitivity from dlinfo -- ldconfig: handle .dynstr located in separate segment (bug 25087) -- ldd: Print "not a dynamic executable" on standard error [BZ #24150] -- Add PTRACE_GET_SYSCALL_INFO from Linux 5.3 to sys/ptrace.h. -- Move ChangeLog to ChangeLog.old/ChangeLog.19 -- manual: Remove warning in the documentation of the abort function -- sysvipc: Set ipc_perm mode as mode_t (BZ#18231) -- Simplify note processing -- syscall-names.list: fix typos in comment -- y2038: linux: Provide __clock_settime64 implementation -- posix: Use posix_spawn for wordexp -- mips: Do not malloc on getdents64 fallback -- sparc: Assume GOTDATA support in the toolchain -- : Remove wrong comment about getdents64 declaration -- ChangeLog: Remove leading spaces before tabs and trailing whitespace -- Make tst-strftime2 and tst-strftime3 depend on locale generation -- posix/tst-wordexp-nocmd: Fix diagnostics output in test -- wordexp: Split out command execution tests from posix/wordexp-test - -* Tue Oct 08 2019 Arjun Shankar - 2.30.9000-11 -- Adjust glibc-rh741105.patch. -- Auto-sync with upstream branch master, - commit ca602c1536ce2777f95c07525f3c42d78812e665: -- Add TCP_TX_DELAY from Linux 5.3 to netinet/tcp.h -- [powerpc] fenv_private.h clean up -- [powerpc] libc_feupdateenv_test: optimize FPSCR access -- [powerpc] __fesetround_inline optimizations -- [powerpc] Rename fegetenv_status to fegetenv_control -- [powerpc] libc_feholdsetround_noex_ppc_ctx: optimize FPSCR write -- [powerpc] Rename fesetenv_mode to fesetenv_control -- Add helper script for glibc debugging -- Update bits/mman.h constants and tst-mman-consts.py for Linux 5.3. -- y2038: Provide conversion helpers for struct __timespec64 -- Use binutils 2.33 branch in build-many-glibcs.py. -- Sync "language", "lang_name", "territory", "country_name" with CLDR/langtable -- Split up endian.h to minimize exposure of BYTE_ORDER. -- time: Add padding for the timespec if required -- Enable passing arguments to the inferior in debugglibc.sh -- [powerpc] No need to enter "Ignore Exceptions Mode" -- Y2038: Include proper header to provide support for struct timeval on HURD -- Disable warnings in string/tester.c at top level. -- string/endian.h: Restore the __USE_MISC conditionals -- Disable -Wmaybe-uninitialized for total_deadline in sunrpc/clnt_udp.c. -- ChangeLog update from my last commit -- nptl: Move pthread_attr_setinheritsched implementation into libc. -- elf: Never use the file ID of the main executable [BZ #24900] -- elf: Assign TLS modid later during dlopen [BZ #24930] -- nptl: Move pthread_attr_getschedparam implementation into libc -- riscv: Remove support for variable page sizes -- nptl: Move pthread_attr_setschedparam implementation into libc - -* Fri Sep 27 2019 Zbigniew Jędrzejewski-Szmek - 2.30.9000-10 -- Use full locale names in langpack descriptions (#1651375) - -* Thu Sep 26 2019 Patsy Franklin - 2.30.9000-9 -- Auto-sync with upstream branch master, - commit 464cd3a9d5f505d92bae9a941bb75b0d91ac14ee. -- y2038: Introduce struct __timespec64 - new internal glibc type -- auto-changelog: Remove latin1 from codecs -- Set the expects flags to clock_nanosleep -- Fix tst-sigcontext-get_pc rule name from a43565ac447b1 -- inet/net-internal.h: Fix uninitalised clntudp_call() variable -- Fix vDSO initialization on arm and mips -- Script to generate ChangeLog-like output from git log -- [powerpc] SET_RESTORE_ROUND optimizations and bug fix -- Fix building support_ptrace.c on i686-gnu. -- S390: Use _HP_TIMING_S390_H instead of _HP_TIMING_H. -- Update syscall-names.list for Linux 5.3. -- Use Linux 5.3 in build-many-glibcs.py. -- S390: Add support for HP_TIMING_NOW. -- Fix RISC-V vfork build with Linux 5.3 kernel headers. -- Add UNSUPPORTED check in elf/tst-pldd. -- sparc64: Use linux generic time implementation -- mips: Consolidate INTERNAL_VSYSCALL_CALL -- powerpc: Simplify vsyscall internal macros -- Refactor vDSO initialization code -- Remove PREPARE_VERSION and PREPARE_VERSION_KNOW -- Fix small error in HP_TIMING_PRINT trailing null char setting - -* Mon Sep 16 2019 Parag Nemade - 2.30.9000-8 -- Change Supplements "langpacks-" to "langpacks-core-" (#1729992) - -* Mon Sep 16 2019 DJ Delorie - 2.30.9000-7 -- Auto-sync with upstream branch master, - commit 1a6566094d3097f4a3037ab5555cddc6cb11c3a3. -- alpha: force old OSF1 syscalls for getegid, geteuid and getppid [BZ #24986] -- Fix http: URL in 'configure' -- Regenerate charmap-kw.h, locfile-kw.h -- Fix three GNU license URLs, along with trailing-newline issues. -- Prefer https to http for gnu.org and fsf.org URLs - -* Fri Sep 06 2019 Patsy Franklin - 2.30.9000-6 -- Auto-sync with upstream branch master, - commit 1b7f04070bd94f259e2ed24d6fb76309d64fb164. -- locale: Avoid zero-length array in _nl_category_names [BZ #24962] -- math: Replace const attribute with pure in totalorder* functions -- y2038: Introduce the __ASSUME_TIME64_SYSCALLS define -- Finish move of clock_* functions to libc. [BZ #24959] -- Update Alpha libm-test-ulps -- localedef: Use initializer for flexible array member [BZ #24950] -- Add misc/tst-mntent-autofs, testing autofs "ignore" filtering -- Use autofs "ignore" mount hint in getmntent_r/getmntent -- hurd: Fix build -- Use generic memset/memcpy/memmove in benchtests -- nptl: Move pthread_attr_getinheritsched implementation into libc -- hurd: Fix SS_ONSTACK support -- hurd: Remove optimizing anonymous maps as __vm_allocate. -- hurd: Fix poll and select POSIX compliancy details about errors -- hurd: Fix timeout handling in _hurd_select -- hurd getcwd: Allow unknown root directory -- hurd: Fix implementation of setitimer. -- hurd: Fix _hurd_select for single fd sets -- MIPS support for GNU hash -- sh: Split BE/LE abilist -- microblaze: Split BE/LE abilist -- arm: Split BE/LE abilist -- Correct the spelling of more contributors -- Fix posix/tst-regex by using UTF-8 and own test input -- [powerpc] fegetenv_status: simplify instruction generation -- [powerpc] fesetenv: optimize FPSCR access -- [powerpc] SET_RESTORE_ROUND improvements -- [powerpc] fe{en,dis}ableexcept, fesetmode: optimize FPSCR accesses -- [powerpc] fe{en,dis}ableexcept optimize bit translations -- misc: Use allocate_once in getmntent -- nptl: Move pthread_attr_setdetachstate implementation into libc -- login: pututxline could fail to overwrite existing entries [BZ #24902] -- Fix posix/tst-regex by using a dedicated input-file. - -* Tue Aug 27 2019 DJ Delorie - 2.30.9000-5 -- Move makedb from glibc-common to nss_db (#1704334) - -* Mon Aug 26 2019 DJ Delorie - 2.30.9000-4 -- Auto-sync with upstream branch master, - commit 1bced8cadc82077f0201801239e89eb24b68e9aa. -- Don't put non-ASCII into installed headers -- Fix spellings of contributor names in comments and doc -- [MIPS] Raise highest supported EI_ABIVERSION value [SWBZ #24916] -- mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels -- linux: Make profil_counter a compat_symbol (SWBZ#17726) -- Refactor sigcontextinfo.h -- Add RTLD_SINGLE_THREAD_P on generic single-thread.h -- Chinese locales: Set first_weekday to 2 (swbug 24682). -- powerpc: Fix typos and field name in comments -- Mark IDN tests unsupported with libidn2 before 2.0.5. -- Document strftime %Ob and %OB as C2X features. -- Remove dead regex code -- Fix bad pointer / leak in regex code -- Don't use the argument to time. -- Add tgmath.h macros for narrowing functions. -- Update i386 libm-test-ulps - -* Mon Aug 19 2019 Carlos O'Donell - 2.30.9000-3 -- Drop glibc-fedora-nscd-warnings.patch; applied upstream. -- Drop Source7: nsswitch.conf; applying patch to upstream. -- Add glibc-fedora-nsswitch.patch for Fedora customizations. -- Auto-sync with upstream branch master, - commit d34d4c80226b3f5a1b51a8e5b005a52fba07d7ba: -- Do not print backtraces on fatal glibc errors. -- elf: Self-dlopen failure with explict loader invocation (swbz#24900) -- login: Add nonstring attributes to struct utmp, struct utmpx (swbz#24899) -- login: Use struct flock64 in utmp (swbz#24880) -- login: Disarm timer after utmp lock acquisition (swbz#24879) - -* Fri Aug 16 2019 Carlos O'Donell - 2.30.9000-2 -- Fix C.UTF-8 to use full code ranges. - -* Thu Aug 15 2019 Florian Weimer - 2.30.9000-1 -- Auto-sync with upstream branch master, - commit 341da5b4b6253de9a7581a066f33f89cacb44dec. - -* Fri Aug 02 2019 Florian Weimer - 2.30-1 -- Drop glibc-rh1734680.patch, applied upstream. -- Auto-sync with upstream branch release/2.30/master, - commit be9a328c93834648e0bec106a1f86357d1a8c7e1: -- malloc: Remove unwanted leading whitespace in malloc_info (swbz#24867) -- glibc 2.30 release -- iconv: Revert steps array reference counting changes (#1734680) -- Restore r31 setting in powerpc32 swapcontext - -* Wed Jul 31 2019 Florian Weimer - 2.29.9000-37 -- Fix memory leak in iconv_open (#1734680) - -* Tue Jul 30 2019 Florian Weimer - 2.29.9000-36 -- Drop glibc-rh1732406.patch, fix for the regression applied upstream. -- Auto-sync with upstream branch master, - commit 8a814e20d443adc460a1030fa1a66aa9ae817483: -- nptl: Use uintptr_t for address diagnostic in nptl/tst-pthread-getattr -- Linux: Move getdents64 to -- test-container: Install with $(sorted-subdirs) (swbz#24794) -- gconv: Check reference count in __gconv_release_cache (#1732406) -- x86-64: Compile branred.c with -mprefer-vector-width=128 (swbz#24603) -- build-many-glibcs.py: Use Linux 5.2 by default -- Linux: Use in-tree copy of SO_ constants for !__USE_MISC (swbz#24532) -- test-container: Avoid copying unintended system libraries - -* Thu Jul 25 2019 Fedora Release Engineering -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Tue Jul 23 2019 Florian Weimer - 2.29.9000-34 -- Revert libio change that causes crashes (#1732406) - -* Mon Jul 22 2019 DJ Delorie - 2.29.9000-33 -- Auto-sync with upstream branch master, - commit dcf36bcad3f283f77893d3b157ef7bb2c99419f2. -- Add NEWS entry about the new AArch64 IFUNC resolver call ABI -- locale/C-translit.h.in: Cyrillic -> ASCII transliteration [BZ #2872] -- Linux: Update syscall-names.list to Linux 5.2 - -* Thu Jul 18 2019 DJ Delorie - 2.29.9000-32 -- Auto-sync with upstream branch master, - commit 3556658c5b8765480711b265abc901c67d5fc060. -- Regenerate po/libc.pot for 2.30 release. -- nptl: Add POSIX-proposed _clock functions to hppa pthread.h -- nptl: Remove unnecessary forwarding of pthread_cond_clockwait from libc -- Afar locales: Months and days updated from CLDR (bug 21897). -- nl_BE locale: Use "copy "nl_NL"" in LC_NAME (bug 23996). -- nl_BE and nl_NL locales: Dutch salutations (bug 23996). -- ga_IE and en_IE locales: Revert first_weekday removal (bug 24200). -- nptl: Remove futex_supports_exact_relative_timeouts -- Update NEWS for new _clockwait and _clocklock functions -- nptl: Add POSIX-proposed pthread_mutex_clocklock -- nptl: Rename lll_timedlock to lll_clocklock and add clockid parameter -- nptl: Add POSIX-proposed pthread_rwlock_clockrdlock & pthread_rwlock_clockwrlock -- nptl: pthread_rwlock: Move timeout validation into _full functions -- nptl: Add POSIX-proposed pthread_cond_clockwait -- nptl: Add POSIX-proposed sem_clockwait -- nptl: Add clockid parameter to futex timed wait calls -- posix: Fix large mmap64 offset for mips64n32 (BZ#24699) -- nss_db: fix endent wrt NULL mappings [BZ #24695] [BZ #24696] - -* Wed Jul 10 2019 Carlos O'Donell - 2.29.9000-31 -- Auto-sync with upstream branch master, - commit 30ba0375464f34e4bf8129f3d3dc14d0c09add17. -- Don't declare __malloc_check_init in (bug 23352) -- nftw: fill in stat buf for dangling links [BZ #23501] -- dl-vdso: Add LINUX_4 HASH CODE to support nds32 vdso mechanism -- riscv: restore ABI compatibility (bug 24484) -- aarch64: new ifunc resolver ABI -- nptl: Remove vfork IFUNC-based forwarder from libpthread [BZ #20188] -- malloc: Add nptl, htl dependency for the subdirectory [BZ #24757] -- Call _dl_open_check after relocation [BZ #24259] -- Linux: Use mmap instead of malloc in dirent/tst-getdents64 -- ld.so: Support moving versioned symbols between sonames [BZ #24741] -- io: Remove copy_file_range emulation [BZ #24744] -- Linux: Adjust gedents64 buffer size to int range [BZ #24740] -- powerpc: Use generic e_expf -- Linux: Add nds32 specific syscalls to syscall-names.list -- szl_PL locale: Fix a typo in the previous commit (bug 24652). - -* Mon Jun 24 2019 DJ Delorie - 2.29.9000-30 -- Auto-sync with upstream branch master, - commit 2bd81b60d6ffdf7e0d22006d69f4b812b1c80513. -- szl_PL locale: Spelling corrections (swbz 24652). -- nl_{AW,NL}: Correct the thousands separator and grouping (swbz 23831). -- Add missing VDSO_{NAME,HASH}_* macros and use them for PREPARE_VERSION_KNOWN -- nptl: Convert various tests to use libsupport -- support: Invent verbose_printf macro -- support: Add xclock_now helper function. - -* Fri Jun 21 2019 Florian Weimer - 2.29.9000-29 -- Auto-sync with upstream branch master, - commit 21cc130b78a4db9113fb6695e2b951e697662440: -- During exit, skip wide buffer handling for legacy stdio handles (#1722216) -- powerpc: add 'volatile' to asm -- powerpc: Fix static-linked version of __ppc_get_timebase_freq (swbz#24640) -- nl_AW locale: Correct the negative monetary format (swb#z24614) -- Fix gcc 9 build errors for make xcheck. (swbz#24556) -- dlfcn: Avoid one-element flexible array in Dl_serinfo (swbz#24166) -- elf: Refuse to dlopen PIE objects (swbz#24323) -- nl_NL locale: Correct the negative monetary format (swbz#24614) -- powerpc: Refactor powerpc64 lround/lroundf/llround/llroundf -- powerpc: refactor powerpc64 lrint/lrintf/llrint/llrintf - -* Mon Jun 17 2019 Florian Weimer - 2.29.9000-28 -- Auto-sync with upstream branch master, - commit 48c3c1238925410b4e777dc94e2fde4cc9132d44. -- Linux: Fix __glibc_has_include use for and statx (#1721129) -- : Inhibit macro expansion for __glibc_has_include -- Add IPV6_ROUTER_ALERT_ISOLATE from Linux 5.1 to bits/in.h -- aarch64: handle STO_AARCH64_VARIANT_PCS -- aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS -- powerpc: Remove optimized finite -- math: Use wordsize-64 version for finite -- powerpc: Remove optimized isinf -- math: Use wordsize-64 version for isinf -- powerpc: Remove optimized isnan -- math: Use wordsize-64 version for isnan -- benchtests: Add isnan/isinf/isfinite benchmark -- powerpc: copysign cleanup -- powerpc: consolidate rint -- libio: freopen of default streams crashes in old programs (swbz#24632) -- Linux: Deprecate and sysctl -- : Use Linux UAPI header for statx if available and useful - (#1721129) -- : Add __glibc_has_include macro -- Improve performance of memmem -- Improve performance of strstr -- Benchmark strstr hard needles -- Fix malloc tests build with GCC 10 - -* Mon Jun 10 2019 Patsy Franklin - 2.29.9000-27 -- Auto-sync with upstream branch master, - commit 51ea67d54882318c4fa5394c386f4816ddc22408. -- powerpc: get_rounding_mode: utilize faster method to get rounding mode -- riscv: Do not use __has_include__ -- powerpc: fegetexcept: utilize function instead of duplicating code -- iconv: Use __twalk_r in __gconv_release_shlib -- Fix iconv buffer handling with IGNORE error handler (swbz#18830) - -* Wed Jun 5 2019 Florian Weimer - 2.29.9000-26 -- Restore /usr/lib/locale/locale-archive under its original name (#1716710) - -* Tue Jun 4 2019 Florian Weimer - 2.29.9000-25 -- Add glibc version to locale-archive name (#1716710) - -* Mon Jun 03 2019 Carlos O'Donell - 2.29.9000-24 -- Auto-sync with upstream branch master, - commit dc91a19e6f71e1523f4ac179191a29b2131d74bb: -- Linux: Add oddly-named arm syscalls to syscall-names.list. -- arm: Remove ioperm/iopl/inb/inw/inl/outb/outw/outl support. -- Add INADDR_ALLSNOOPERS_GROUP from Linux 5.1 to netinet/in.h. - -* Sat Jun 01 2019 Carlos O'Donell - 2.29.9000-23 -- Convert glibc_post_upgrade to lua. - -* Sat Jun 01 2019 Florian Weimer - 2.29.9000-22 -- Remove support for filtering glibc-all-langpacks (#1715891) -- Auto-sync with upstream branch master, - commit 9250e6610fdb0f3a6f238d2813e319a41fb7a810: -- powerpc: Fix build failures with current GCC -- Remove unused get_clockfreq files -- powerpc: generic nearbyint/nearbyintf -- tt_RU: Add lang_name (swbz#24370) -- tt_RU: Fix orthographic mistakes in mon and abmon sections (swbz#24369) -- Add IGMP_MRDISC_ADV from Linux 5.1 to netinet/igmp.h. - -* Mon May 27 2019 Arjun Shankar - 2.29.9000-21 -- Auto-sync with upstream branch master, - commit 85188d8211698d1a255f0aec6529546db5c56de3: -- Remove support for PowerPC SPE extension -- elf: Add tst-ldconfig-bad-aux-cache test -- Add F_SEAL_FUTURE_WRITE from Linux 5.1 to bits/fcntl-linux.h -- nss_dns: Check for proper A/AAAA address alignment - -* Tue May 21 2019 DJ Delorie - 2.29.9000-20 -- Auto-sync with upstream branch master, - commit 46ae07324b1cd50fbf8f37a076d6babcfca7c510. -- Improve string benchtest timing -- sysvipc: Add missing bit of semtimedop s390 consolidation -- wcsmbs: Fix data race in __wcsmbs_clone_conv [swbz #24584] -- libio: Fix gconv-related memory leak [swbz #24583] -- libio: Remove codecvt vtable [swbz #24588] -- support: Expose sbindir as support_sbindir_prefix -- support: Add missing EOL terminators on timespec -- support: Correct confusing comment -- sysvipc: Consolidate semtimedop s390 -- sysvipc: Fix compat msgctl (swbz#24570) -- Add NT_ARM_PACA_KEYS and NT_ARM_PACG_KEYS from Linux 5.1 to elf.h. -- Small tcache improvements -- manual: Document O_DIRECTORY -- Update kernel-features.h files for Linux 5.1. -- nss_nis, nss_nisplus: Remove RES_USE_INET6 handling -- nss_files: Remove RES_USE_INET6 from hosts processing -- support: Report NULL blobs explicitly in TEST_COMPARE -- dlfcn: Guard __dlerror_main_freeres with __libc_once_get (once) [swbz# 24476] -- Add missing Changelog entry - -* Wed May 15 2019 Florian Weimer - 2.29.9000-19 -- Auto-sync with upstream branch master, - commit 32ff397533715988c19cbf3675dcbd727ec13e18: -- Fix crash in _IO_wfile_sync (#1710460) -- nss: Turn __nss_database_lookup into a compatibility symbol -- support: Add support_install_rootsbindir -- iconv: Remove public declaration of __gconv_transliterate -- Linux: Add the tgkill function -- manual: Adjust twalk_r documentation. -- elf: Fix tst-pldd for non-default --prefix and/or --bindir (swbz#24544) -- support: Export bindir path on support_path -- configure: Make --bindir effective -- x86: Remove arch-specific low level lock implementation -- nptl: Assume LLL_LOCK_INITIALIZER is 0 -- nptl: Small optimization for lowlevellock -- Add single-thread.h header -- locale: Update to Unicode 12.1.0 (swbz#24535) -- malloc: Fix tcache count maximum (swbz#24531) -- sem_close: Use __twalk_r -- support: Fix timespec printf -- nptl/tst-abstime: Use libsupport -- nptl: Convert some rwlock tests to use libsupport -- nptl: Use recent additions to libsupport in tst-sem5 -- nptl: Convert tst-cond11.c to use libsupport -- support: Add timespec.h -- Move nptl/tst-eintr1 to xtests (swbz#24537) -- powerpc: trunc/truncf refactor -- powerpc: round/roundf refactor -- powerpc: floor/floorf refactor -- support: Add xclock_gettime -- malloc/tst-mallocfork2: Use process-shared barriers -- Update syscall-names.list for Linux 5.1 -- Use GCC 9 in build-many-glibcs.py -- aarch64: thunderx2 memmove performance improvements -- misc/tst-tsearch: Additional explicit error checking -- elf: Fix elf/tst-pldd with --enable-hardcoded-path-in-tests (swbz#24506) -- misc: Add twalk_r function - -* Thu May 02 2019 Arjun Shankar - 2.29.9000-18 -- Auto-sync with upstream branch master, - commit 20aa5819586ac7ad11f711bab64feda307965191: -- semaphore.h: Add nonnull attributes -- powerpc: Remove power4 mpa optimization -- powerpc: Refactor ceil/ceilf -- Fix -O1 compilation errors with `__ddivl' and `__fdivl' [BZ #19444] -- Make mktime etc. compatible with __time64_t - -* Fri Apr 26 2019 Florian Weimer - 2.29.9000-17 -- Auto-sync with upstream branch master, - commit c57afec0a9b318bb691e0f5fa4e9681cf30df7a4: -- Increase BIND_NOW coverage (#1702671) -- Fix pldd hang (#1361689) -- riscv: remove DL_RO_DYN_SECTION (swbz#24484) -- locale: Add LOCPATH diagnostics to the locale program -- Reduce benchtests time - -* Mon Apr 22 2019 DJ Delorie - 2.29.9000-16 -- Auto-sync with upstream branch master, - commit 25f7a3c96116a9102df8bf7b04ef160faa32416d. -- malloc: make malloc fail with requests larger than PTRDIFF_MAX (BZ#23741) -- powerpc: Fix format issue from 3a16dd780eeba602 -- powerpc: fma using builtins -- powerpc: Use generic fabs{f} implementations -- mips: Remove rt_sigreturn usage on context function -- powerpc: Remove rt_sigreturn usage on context function -- support: Add support_capture_subprogram -- stdlib/tst-secure-getenv: handle >64 groups - -* Mon Apr 15 2019 Florian Weimer - 2.29.9000-15 -- Auto-sync with upstream branch master, - commit e3f454bac0f968216699ca405c127c858f0657c7: -- nss_dns: Do not replace root domain with empty string -- alloc_buffer: Return unqualified pointer type in alloc_buffer_next -- malloc: Set and reset all hooks for tracing (swbz#16573) - -* Thu Apr 11 2019 Florian Weimer - 2.29.9000-14 -- Run valgrind smoke test against the install tree - -* Thu Apr 11 2019 Florian Weimer - 2.29.9000-13 -- Do not use --g-libs with find-debuginfo.sh; it breaks valgrind (#1698824) - -* Wed Apr 10 2019 Florian Weimer - 2.29.9000-12 -- Strip debugging information from installed programs again (#1661510) - -* Tue Apr 09 2019 Carlos O'Donell - 2.29.9000-11 -- Drop glibc-warning-fix.patch. Microbenchmark code fixed upstream. -- Auto-sync with upstream branch master, - commit 648279f4af423c4783ec1dfa63cb7b46a7640217: -- powerpc: Use generic wcscpy optimization -- powerpc: Use generic wcschr optimization -- powerpc: Use generic wcsrchr optimization -- aarch64: thunderx2 memcpy implementation cleanup and streamlining -- resolv: Remove support for RES_USE_INET6 and the inet6 option -- resolv: Remove RES_INSECURE1, RES_INSECURE2 - -* Thu Apr 04 2019 Arjun Shankar - 2.29.9000-10 -- Auto-sync with upstream branch master, - commit 8260f23616c1a2a4e609f989a195fba7690a42ca: -- Fix strptime era handling, add more strftime tests [BZ #24394] -- time/tst-strftime2.c: Make the file easier to maintain -- time: Add tests for Minguo calendar [BZ #24293] -- ja_JP locale: Add entry for the new Japanese era [BZ #22964] -- Add Reiwa era tests to time/tst-strftime3.c - -* Mon Apr 01 2019 Arjun Shankar - 2.29.9000-9 -- Auto-sync with upstream branch master, - commit 993e3107af67edefcfc79a62ae55f7b98aa5151e: -- Add AArch64 HWCAPs from Linux 5.0 -- tt_RU: Fix orthographic mistakes in day and abday sections [BZ #24296] -- iconv, localedef: avoid floating point rounding differences [BZ #24372] -- Fix parentheses error in iconvconfig.c and ld-collate.c [BZ #24372] -- S390: New configure check and hwcap values for new CPU architecture arch13 -- S390: Add memmove, strstr, and memmem ifunc variants for arch13 -- nptl: Remove pthread_clock_gettime pthread_clock_settime -- linux: Assume clock_getres CLOCK_{PROCESS,THREAD}_CPUTIME_ID -- Remove __get_clockfreq -- Do not use HP_TIMING_NOW for random bits -- hp-timing: Refactor rtld usage, add generic support -- Add NT_ARM_PAC_MASK and NT_MIPS_MSA from Linux 5.0 to elf.h -- Add UDP_GRO from Linux 5.0 to netinet/udp.h -- nptl: Convert tst-sem5 & tst-sem13 to use libsupport -- nptl/tst-rwlock14: Test pthread_rwlock_timedwrlock correctly -- nss/tst-nss-files-alias-leak: add missing opening quote in printf -- math: Enable some math builtins for clang -- powerpc: Use __builtin_{mffs,mtfsf} -- RISC-V: Fix `test' operand error with soft-float ABI being configured - -* Wed Mar 20 2019 Carlos O'Donell - 2.29.9000-8 -- Add warnings and notes to /etc/nsswitch.conf and /etc/nscd.conf. - -* Mon Mar 18 2019 DJ Delorie - 2.29.9000-7 -- Auto-sync with upstream branch master, - commit 78919d3886c9543279ec755a701e279c62b44164. - -* Thu Mar 14 2019 Florian Weimer - 2.29.9000-6 -- Drop glibc-fedora-streams-rh436349.patch. STREAMS was removed upstream. -- Auto-sync with upstream branch master, - commit a0a0dc83173ce11ff45105fd32e5d14356cdfb9c: -- Remove obsolete, never-implemented XSI STREAMS declarations -- nss: Fix tst-nss-files-alias-truncated for default --as-needed linking -- scripts/check-obsolete-constructs.py: Process all headers as UTF-8. -- Use Linux 5.0 in build-many-glibcs.py. -- hurd: Add no-op version of __res_enable_icmp [BZ #24047] -- Move inttypes.h and stdint.h to stdlib. -- Use a proper C tokenizer to implement the obsolete typedefs test. -- Fix output of LD_SHOW_AUXV=1. - -* Wed Mar 13 2019 Florian Weimer - 2.29.9000-5 -- Drop glibc-rh1670028.patch, applied upstream -- Auto-sync with upstream branch master, - commit 38b52865d4ccfee3647f27e969e539a4396a73b1: -- elf: Add DF_1_KMOD, DF_1_WEAKFILTER, DF_1_NOCOMMON to -- resolv: Enable full ICMP errors for UDP DNS sockets [BZ #24047] -- C-SKY: add elf header definition for elfutils -- C-SKY: mark lr as undefined to stop unwinding -- C-SKY: remove user_regs definition -- C-SKY: fix sigcontext miss match -- Bug 24307: Update to Unicode 12.0.0 -- Break lines before not after operators, batch 4. -- check-wrapper-headers test: Adjust Fortran include file directory -- Fix location where math-vector-fortran.h is installed. - -* Wed Mar 06 2019 DJ Delorie - 2.29.9000-4 -- Auto-sync with upstream branch master, - commit 0ddb7ea842abf63516b74d4b057c052afc6ba863. -- nptl: Assume __ASSUME_FUTEX_CLOCK_REALTIME support -- powerpc: Fix build of wcscpy with --disable-multi-arch -- elf: Remove remnants of MAP_ANON emulation -- S390: Increase function alignment to 16 bytes. -- ja_JP: Change the offset for Taisho gan-nen from 2 to 1 [BZ #24162] -- ldbl-opt: Reuse test cases from misc/ that check long double -- ldbl-opt: Add error and error_at_line (bug 23984) -- ldbl-opt: Add err, errx, verr, verrx, warn, warnx, vwarn, and vwarnx (bug 23984) -- ldbl-opt: Reuse argp tests that print long double -- ldbl-opt: Add argp_error and argp_failure (bug 23983) -- elf/tst-big-note: Improve accuracy of test [BZ #20419] -- S390: Fix introduction of __wcscpy and weak wcscpy symbols. -- __netlink_assert_response: Add more __libc_fatal newlines [BZ #20271] -- Add more spaces before '('. -- elf: Add tests with a local IFUNC resolver [BZ #23937] -- elf/Makefile: Run IFUNC tests if binutils supports IFUNC -- powerpc: Fix linknamespace introduced by 4d8015639a75 -- hurd: Add renameat2 support for RENAME_NOREPLACE -- Fix -Wempty-body warnings in Hurd-specific code. -- Add some spaces before '('. -- wcsmbs: optimize wcsnlen -- wcsmbs: optimize wcsncpy -- wcsmbs: optimize wcsncat -- wcsmbs: optimize wcscpy -- wcsmbs: optimize wcscat -- wcsmbs: optimize wcpncpy -- wcsmbs: optimize wcpcpy -- Break further lines before not after operators. -- Add and move fall-through comments in system-specific code. - -* Fri Mar 1 2019 DJ Delorie - 2.29.9000-3 -- Add .gdb_index to debug information (rhbz#1680765) - -* Wed Feb 27 2019 Carlos O'Donell - 2.29.9000-2 -- Fix build failure related to microbenchmarks. - -* Tue Feb 26 2019 Carlos O'Donell - 2.29.9000-1 -- Auto-sync with upstream branch master, - commit e0cb7b6131ee5f2dca2938069b8b9590304e6f6b: -- nss_files: Fix /etc/aliases null pointer dereference (swbz#24059) -- regex: fix read overrun (swbz#24114) -- libio: use stdout in puts and putchar, etc (swbz#24051) -- aarch64: Add AmpereComputing emag to tunable cpu list -- aarch64: Optimized memset specific to AmpereComputing emag -- aarch64: Optimized memchr specific to AmpereComputing emag -- Require GCC 6.2 or later to build glibc -- manual: Document lack of conformance of sched_* functions (swbz#14829) -- libio: Use stdin consistently for input functions (swbz#24153) -- x86-64 memcmp: Use unsigned Jcc instructions on size (swbz#24155) -- Fix handling of collating elements in fnmatch (swbz#17396,swbz#16976) -- arm: Use "nr" constraint for Systemtap probes (swbz#24164) -- Fix alignment of TLS variables for tls variant TLS_TCB_AT_TP (swbz#23403) -- Add compiler barriers for pthread_mutex_trylock (swbz#24180) -- rt: Turn forwards from librt to libc into compat symbols (swbz#24194) -- Linux: Add gettid system call wrapper (swbz#6399) -- nptl: Avoid fork handler lock for async-signal-safe fork (swbz#24161) -- elf: Ignore LD_AUDIT interfaces if la_version returns 0 (swbz#24122) -- nptl: Reinstate pthread_timedjoin_np as a cancellation point (swbz#24215) -- nptl: Fix invalid Systemtap probe in pthread_join (swbz#24211) - -* Tue Feb 19 2019 Florian Weimer - 2.29-8 -- Drop glibc-rh1674280.patch. Different fix applied upstream. (#1674280) -- Auto-sync with upstream branch release/2.29/master, - commit 067fc32968b601493f4b247a3ac00caeea3f3d61: -- nptl: Fix invalid Systemtap probe in pthread_join (#1674280) - -* Mon Feb 11 2019 Florian Weimer - 2.29-7 -- Hotfix for invalid Systemtap probe in pthread_join (#1674280) - -* Mon Feb 11 2019 Florian Weimer - 2.29-6 -- Remove LRA bug on POWER workaround, fixed in gcc-9.0.1-0.4.fc30 (#1673018) - -* Mon Feb 11 2019 Florian Weimer - 2.29-5 -- Auto-sync with upstream branch release/2.29/master, - commit c096b008d2671028c21ac8cf01f18a2083e73c44: -- nptl: Avoid fork handler lock for async-signal-safe fork (swbz#24161) -- nptl: Add compiler barriers in pthread_mutex_trylock (swbz#24180) - -* Thu Feb 7 2019 Florian Weimer - 2.29-4 -- Work around LRA hang on ppc64le (#1673018) - -* Wed Feb 06 2019 Florian Weimer - 2.29-3 -- Auto-sync with upstream branch release/2.29/master, - commit 2de15ac95713a238dc258eb8977ecdfca811fc19: -- arm: Use "nr" constraint for Systemtap probes (#1196181) - -* Fri Feb 1 2019 Florian Weimer - 2.29-2 -- Eliminate %%glibcrelease macro. -- Switch to regular Release: pattern. - -* Thu Jan 31 2019 Carlos O'Donell - 2.29-1 -- Auto-sync with upstream branch release/2.29/master, - commit 86013ef5cea322b8f4b9c22f230c22cce369e947. -- nptl: Fix pthread_rwlock_try*lock stalls (swbz#23844) - -* Thu Jan 31 2019 Fedora Release Engineering -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Jan 28 2019 DJ Delorie - 2.28.9000-37 -- Auto-sync with upstream branch master, - commit e1e47c912a8e557508362715f7468091def3ec4f. -- Update translations. -* Mon Jan 28 2019 Florian Weimer - 2.28.9000-36 -- resolv: Enable full ICMP error reporting in stub resolver (#1670028) - -* Mon Jan 28 2019 Florian Weimer - 2.28.9000-35 -- Remove obsolete scriptlets - -* Fri Jan 25 2019 Florian Weimer - 2.28.9000-34 -- Auto-sync with upstream branch master, - commit 83e6b59625f45db1eee93e5684091f740c52a083: -- elf: Revert LD_AUDIT fix for modules with invalid version (swbz#24122) -- strftime: Pass the additional flags from "%EY" to "%Ey" (swbz#24096) -- strftime: Set the default width of "%Ey" to 2 (swbz#23758) - -* Thu Jan 24 2019 Florian Weimer - 2.28.9000-33 -- Auto-sync with upstream branch master, - commit 3367acdb344a1d7fcf8f53748d301d652c8911dd: -- elf: Fix LD_AUDIT for modules with invalid version (swbz#24122) -- CVE-2016-10739: getaddrinfo: Fully parse IPv4 address strings (#1331390) -- resolv: Do not send queries for non-host-names in nss_dns (swbz#24112) -- malloc: Revert fastbins to old-style atomics - -* Wed Jan 23 2019 Florian Weimer - 2.28.9000-32 -- Use assembler to produce annobin notes for nonshared libraries (#1668822) - -* Wed Jan 16 2019 Carlos O'Donell - 2.28.9000-31 -- Auto-sync with upstream branch master, - commit 008b598e2a495024f9777006716cfd8668f3db33. -- x86-64: Optimize strcat/strncat, strcpy/strncpy and stpcpy/stpncpy with AVX2 -- powerpc: Fix VSCR position in ucontext (swbz#24088) -- AArch64: Add ifunc support for Ares -- soft-fp: Properly check _FP_W_TYPE_SIZE (swbz#24066) - -* Thu Jan 10 2019 Florian Weimer - 2.28.9000-30 -- Inherit -march=haswell flag from redhat-rpm-config - -* Mon Jan 07 2019 Arjun Shankar - 2.28.9000-29 -- Auto-sync with upstream branch master, - commit 2ef427168818ce04b03cecb7b739f9db0156e3e4. -- Require GCC 5 or later to build glibc (swbz#23993) -- Only build libm with -fno-math-errno (swbz#24024) -- sysdeps/ieee754: prevent maybe-uninitialized errors with -O (swbz#19444) -- Multiple locales: Use the correct 12-hour time formats (swbz#10496) -- sq_AL: Use the correct date and time formats (swbz#10496, swbz#23724) -- en_US: define date_fmt (swbz#24046) -- Remove executable bit from localedata/locales/bi_VU (swbz#23995) -- malloc: Always call memcpy in _int_realloc (swbz#24027) -- ARM: fix kernel assisted atomics with GCC 8 (swbz#24034) -- S390: Unify 31/64bit mem{set,cmp,cpy,pcpy}, bzero with ifunc handling -- S390: Refactor ifunc handling for several str* and wc* functions -- posix: Clear close-on-exec for posix_spawn adddup2 (swbz#23640) -- termios: Define TIOCSER_TEMT with __USE_MISC (swbz#17783) -- termios: Consolidate Baud Rate Selection definitions (swbz#23783) -- Y2038: add __{localtime64,gmttime64,ctime64}[_r] functions -- Y2038: make __difftime compatible with 64-bit time - -* Mon Dec 17 2018 DJ Delorie - 2.28.9000-28 -- Auto-sync with upstream branch master, - commit 6bbfc5c09fc5b5e3d4a0cddbbd4e2e457767dae7. -- Add statx conditionals for wordsize-32 *xstat.c -- regex: fix storage-exhaustion error (swbz#18040) -- regex: fix heap-use-after-free error (swbz#18040) -- manual: Document thread/task IDs for Linux - -* Thu Dec 13 2018 Carlos O'Donell - 2.28.9000-27 -- Auto-sync with upstream branch master, - commit ade8b817fead73b302d08c88cd44ea2ea56793d4. -- powerpc: missing CFI register information in __mpn_* functions (swbz#23614) -- rdlock stalls indefinitely on an unlocked pthread rwlock (swbz#23861) - -* Tue Dec 11 2018 Carlos O'Donell - 2.28.9000-26 -- Auto-sync with upstream branch master, - commit 505b5b292293a5d6bd4046a6bc7f8c2381a33da4. -- Fix powf overflow handling in non-nearest rounding mode (swbz#23961) -- test-container: move postclean outside of namespace changes (swbz#23948) -- Enable VDSO for static linking on mips (swbz#19767) - -* Mon Dec 10 2018 Florian Weimer - 2.28.9000-25 -- Auto-sync with upstream branch master, - commit 8d20a2f414fa52aceef8a0e3675415df54a840db: -- compat getdents64: Use correct offset for retry (swbz#23972) -- x86: Fix static analysis warning in tst-cet-property-2 (swbz#23490) -- malloc: Add another test for tcache double free check (swbz#23907) -- getcpu: New system call wrapper -- posix_spawn_file_actions_addfchdir_np: New function (swbz#17405) -- Preparations for the IBM long double transition -- Preparations for 64-bit time_t on 32-bit architectures -- Enable VDSO for static linking on arm (swbz#19767) - -* Mon Dec 03 2018 Florian Weimer - 2.28.9000-24 -- Auto-sync with upstream branch master, - commit 7b36d26b22d147ffc347f427f9fd584700578a94: -- CVE-2018-19591: if_nametoindex: Fix descriptor for overlong name (#1654000) -- Mutex: Add pthread mutex tunables -- stdlib: assert on NULL function pointer in atexit etc. (swbz#20544) -- Enable VDSO on i386 statically linked programs -- posix: Use posix_spawn on system -- posix: Use posix_spawn on popen (swbz#17490, swbz#22834) -- Fix _dl_profile_fixup data-dependency issue (swbz#23690) -- Enable VDSO for static linking on aarch64 - -* Thu Nov 29 2018 Carlos O'Donell - 2.28.9000-23 -- Move requirement on libgcc from glibc-devel to glibc (#1352973) - -* Tue Nov 27 2018 Carlos O'Donell - 2.28.9000-22 -- Add requires on explicit glibc version for glibc-nss-devel (#1651260) - -* Tue Nov 27 2018 Arjun Shankar - 2.28.9000-21 -- Drop glibc-rh1652495.patch. Applied upstream. (#1652495) -- Auto-sync with upstream branch master, - commit ce035c6e909ad20ef2fe13c92eab4e69f6495b61. - -* Mon Nov 26 2018 Florian Weimer - 2.28.9000-20 -- Do not use parallel make for building locales (#1652228) - -* Thu Nov 22 2018 Florian Weimer - 2.28.9000-19 -- malloc: Revert tcache double-free check (#1652495) - -* Tue Nov 20 2018 DJ Delorie - 2.28.9000-18 -- Auto-sync with upstream branch master, - commit bcdaad21d4635931d1bd3b54a7894276925d081d. -- malloc: tcache double free check -- [AArch64] Adjust writeback in non-zero memset -- Update config.guess and config.sub to current versions. -- support: Print timestamps in timeout handler -- Use STRFMON_LDBL_IS_DBL instead of __ldbl_is_dbl. - -* Fri Nov 16 2018 Florian Weimer - 2.28.9000-17 -- Auto-sync with upstream branch master, - commit 346ef23f197a0c8ba807c344bd39101b711050ee. - -* Fri Nov 09 2018 Florian Weimer - 2.28.9000-16 -- Auto-sync with upstream branch master, - commit 43257c335ad6b9e05fb882975e1776ff763164ee: -- Disable CET for binaries created by older link editors (#1648297) - -* Wed Nov 07 2018 Florian Weimer - 2.28.9000-15 -- Auto-sync with upstream branch master, - commit 00c86a37d1b63044e3169d1f2ebec23447c73f79. - -* Wed Nov 07 2018 Florian Weimer - 2.28.9000-14 -- Auto-sync with upstream branch master, - commit 1df872fd74f730bcae3df201a229195445d2e18a: -- libanl: Fix crash if first helper thread creation failed (#1646381) - -* Thu Nov 1 2018 Mike FABIAN - 2.28.9000-13 -- Include Esperanto (eo) in glibc-all-langpacks (#1643756) - -* Mon Oct 29 2018 DJ Delorie - 2.28.9000-12 -- Auto-sync with upstream branch master, - commit c6982f7efc1c70fe2d6160a87ee44d871ac85ab0. - -* Fri Oct 26 2018 Arjun Shankar - 2.28.9000-11 -- Auto-sync with upstream branch master, - commit fe61f17cfc18f17befca3280e828bb40e8c772b0. - -* Wed Oct 24 2018 Florian Weimer - 2.28.9000-10 -- Auto-sync with upstream branch master, - commit a27a4f4721837a5fb36ace833764b06a64c5af1c. - -* Thu Oct 18 2018 Florian Weimer - 2.28.9000-9 -- Auto-sync with upstream branch master, - commit 72771e53753647111d31c5c4bf43d8901e6baf7e. - -* Thu Sep 27 2018 Florian Weimer - 2.28.9000-8 -- Auto-sync with upstream branch master, - commit f841c97e515a1673485a2b12b3c280073d737890: -- stdlib/tst-setcontext9 test suite failure on ppc64le (#1623519) - -* Thu Sep 20 2018 Florian Weimer - 2.28.9000-7 -- Auto-sync with upstream branch master, - commit db9a8ad4ff3fc58e3773a9a4d0cabe3c1bc9c94c: -- gethostid: Missing NULL check for gethostbyname_r result (#1631338) -- stdlib/tst-setcontext9 test suite failure (#1623519) - -* Wed Sep 5 2018 Florian Weimer - 2.28.9000-6 -- Add python3-devel build dependency for downstream benefit - -* Wed Sep 05 2018 Carlos O'Donell - 2.28.9000-5 -- Provide compatibility support for linking against libpthread_nonshared.a - (#1625507) - -* Wed Aug 29 2018 Florian Weimer - 2.28.9000-4 -- Remove workaround for valgrind bug (#1600034) - -* Wed Aug 29 2018 Florian Weimer - 2.28.9000-3 -- Auto-sync with upstream branch master, - commit ff6b24501f70da7d6375d6f5929262b9509db39e. - -* Mon Aug 27 2018 Florian Weimer - 2.28.9000-2 -- Auto-sync with upstream branch master, - commit 99ea93ca31795469d2a1f1570f17a5c39c2eb7e2: -- nptl: Fix waiters-after-spinning case in pthread_cond_broadcast (#1622669) -- regex: Fix memory corruption when pattern and input contain NUL (#1622674) - -* Tue Aug 21 2018 Carlos O'Donell - 2.28.9000-1 -- Drop glibc-asflags.patch. Applied upstream. -- Drop glibc-rh1614705.patch. Applied upstream. -- Drop glibc-with-nonshared-cflags.patch. Applied upstream. -- Auto-sync with upstream branch master, - commit aa42b3dbcb0326badf377fec2c7fb2f34fdabecd. - -* Mon Aug 13 2018 Carlos O'Donell - 2.28-5 -- Remove abort() warning in manual (#1615608) - -* Fri Aug 10 2018 Florian Weimer - 2.28-4 -- Fix regression in readdir64@GLIBC_2.1 compat symbol (#1614705) - -* Thu Aug 2 2018 Florian Weimer - 2.28-3 -- Log /proc/sysinfo if available (on s390x) - -* Thu Aug 2 2018 Florian Weimer - 2.28-2 -- Honor %%{valgrind_arches} - -* Wed Aug 01 2018 Florian Weimer - 2.27.9000-43 -- Update to glibc 2.28 release tarball: -- Translation updates -- x86/CET: Fix property note parser (swbz#23467) -- x86: Add tst-get-cpu-features-static to $(tests) (swbz#23458) - -* Mon Jul 30 2018 Florian Weimer - 2.27.9000-42 -- Auto-sync with upstream branch master, - commit af86087f02a5522d8801a11d8381e04f95e33162: -- x86/CET: Don't parse beyond the note end -- Fix Linux fcntl OFD locks tests on unsupported kernels -- x86: Populate COMMON_CPUID_INDEX_80000001 for Intel CPUs (swbz#23459) -- x86: Correct index_cpu_LZCNT (swbz#23456) -- Fix string/tst-xbzero-opt if build with gcc head - -* Thu Jul 26 2018 Florian Weimer - 2.27.9000-41 -- Build with --enable-cet on x86_64, i686 -- Auto-sync with upstream branch master, - commit cfba5dbb10cc3abde632b46c60c10b2843917035: -- Keep expected behaviour for [a-z] and [A-z] (#1607286) -- Additional ucontext tests -- Intel CET enhancements -- ISO C11 threads support -- Fix out-of-bounds access in IBM-1390 converter (swbz#23448) -- New locale Yakut (Sakha) for Russia (sah_RU) (swbz#22241) -- os_RU: Add alternative month names (swbz#23140) -- powerpc64: Always restore TOC on longjmp (swbz#21895) -- dsb_DE locale: Fix syntax error and add tests (swbz#23208) -- Improve performance of the generic strstr implementation -- regcomp: Fix off-by-one bug in build_equiv_class (swbz#23396) -- Fix out of bounds access in findidxwc (swbz#23442) - -* Fri Jul 13 2018 Carlos O'Donell - 2.27.9000-40 -- Fix file list for glibc RPM packaging (#1601011). - -* Wed Jul 11 2018 Florian Weimer - 2.27.9000-39 -- Add POWER9 multilib (downstream only) - -* Wed Jul 11 2018 Florian Weimer - 2.27.9000-38 -- Auto-sync with upstream branch master, - commit 93304f5f7a32f73b551266c5a181db51d97a71e4: -- Install header -- Put the correct Unicode version number 11.0.0 into the generated files - -* Wed Jul 11 2018 Florian Weimer - 2.27.9000-37 -- Work around valgrind issue on i686 (#1600034) - -* Tue Jul 10 2018 Florian Weimer - 2.27.9000-36 -- Auto-sync with upstream branch master, - commit fd70af45528d59a00eb3190ef6706cb299488fcd: -- Add the statx function -- regexec: Fix off-by-one bug in weight comparison (#1582229) -- nss_files: Fix re-reading of long lines (swbz#18991) -- aarch64: add HWCAP_ATOMICS to HWCAP_IMPORTANT -- aarch64: Remove HWCAP_CPUID from HWCAP_IMPORTANT -- conform/conformtest.pl: Escape literal braces in regular expressions -- x86: Use AVX_Fast_Unaligned_Load from Zen onwards. - -* Fri Jul 6 2018 Florian Weimer - 2.27.9000-35 -- Remove ppc64 multilibs - -* Fri Jul 06 2018 Florian Weimer - 2.27.9000-34 -- Auto-sync with upstream branch master, - commit 3a885c1f51b18852869a91cf59a1b39da1595c7a. - -* Thu Jul 5 2018 Florian Weimer - 2.27.9000-33 -- Enable build flags inheritance for nonshared flags - -* Wed Jul 4 2018 Florian Weimer - 2.27.9000-32 -- Add annobin annotations to assembler code (#1548438) - -* Wed Jul 4 2018 Florian Weimer - 2.27.9000-31 -- Enable -D_FORTIFY_SOURCE=2 for nonshared code - -* Mon Jul 02 2018 Florian Weimer - 2.27.9000-30 -- Auto-sync with upstream branch master, - commit b7b88cea4151d85eafd7ababc2e4b7ae1daeedf5: -- New locale: dsb_DE (Lower Sorbian) - -* Fri Jun 29 2018 Florian Weimer - 2.27.9000-29 -- Drop glibc-deprecate_libcrypt.patch. Variant applied upstream. (#1566464) -- Drop glibc-linux-timespec-header-compat.patch. Upstreamed. -- Auto-sync with upstream branch master, - commit e69d994a63afc2d367f286a2a7df28cbf710f0fe. - -* Thu Jun 28 2018 Florian Weimer - 2.27.9000-28 -- Drop glibc-rh1315108.patch. extend_alloca was removed upstream. (#1315108) -- Auto-sync with upstream branch master, - commit c49e18222e4c40f21586dabced8a49732d946917. - -* Thu Jun 21 2018 Florian Weimer - 2.27.9000-27 -- Compatibility fix for and - -* Thu Jun 21 2018 Florian Weimer - 2.27.9000-26 -- Auto-sync with upstream branch master, - commit f496b28e61d0342f579bf794c71b80e9c7d0b1b5. - -* Mon Jun 18 2018 Florian Weimer - 2.27.9000-25 -- Auto-sync with upstream branch master, - commit f2857da7cdb65bfad75ee30981f5b2fde5bbb1dc. - -* Mon Jun 18 2018 Florian Weimer - 2.27.9000-24 -- Auto-sync with upstream branch master, - commit 14beef7575099f6373f9a45b4656f1e3675f7372: -- iconv: Make IBM273 equivalent to ISO-8859-1 (#1592270) - -* Mon Jun 18 2018 Florian Weimer - 2.27.9000-23 -- Inherit the -msse2 build flag as well (#1592212) - -* Fri Jun 01 2018 Florian Weimer - 2.27.9000-22 -- Modernise nsswitch.conf defaults (#1581809) -- Adjust build flags inheritence from redhat-rpm-config -- Auto-sync with upstream branch master, - commit 104502102c6fa322515ba0bb3c95c05c3185da7a. - -* Fri May 25 2018 Florian Weimer - 2.27.9000-21 -- Auto-sync with upstream branch master, - commit c1dc1e1b34873db79dfbfa8f2f0a2abbe28c0514. - -* Wed May 23 2018 Florian Weimer - 2.27.9000-20 -- Auto-sync with upstream branch master, - commit 7f9f1ecb710eac4d65bb02785ddf288cac098323: -- CVE-2018-11237: Buffer overflow in __mempcpy_avx512_no_vzeroupper (#1581275) -- Drop glibc-rh1452750-allocate_once.patch, - glibc-rh1452750-libidn2.patch. Applied upstream. - -* Wed May 23 2018 Florian Weimer - 2.27.9000-19 -- Auto-sync with upstream branch master, - commit 8f145c77123a565b816f918969e0e35ee5b89153. - -* Thu May 17 2018 Florian Weimer - 2.27.9000-18 -- Do not run telinit u on upgrades (#1579225) -- Auto-sync with upstream branch master, - commit 632a6cbe44cdd41dba7242887992cdca7b42922a. - -* Fri May 11 2018 Florian Weimer - 2.27.9000-17 -- Avoid exporting some Sun RPC symbols with default versions (#1577210) -- Inherit the -mstackrealign flag if it is set -- Inherit compiler flags in the original order -- Auto-sync with upstream branch master, - commit 89aacb513eb77549a29df2638913a0f8178cf3f5: -- CVE-2018-11236: realpath: Fix path length overflow (#1581270, swbz#22786) - -* Fri May 11 2018 Florian Weimer - 2.27.9000-16 -- Use /usr/bin/python3 for benchmarks scripts (#1577223) - -* Thu Apr 19 2018 Florian Weimer - 2.27.9000-15 -- Auto-sync with upstream branch master, - commit 0085be1415a38b40a5a1a12e49368498f1687380. - -* Mon Apr 09 2018 Florian Weimer - 2.27.9000-14 -- Auto-sync with upstream branch master, - commit 583a27d525ae189bdfaa6784021b92a9a1dae12e. - -* Thu Mar 29 2018 Florian Weimer - 2.27.9000-13 -- Auto-sync with upstream branch master, - commit d39c0a459ef32a41daac4840859bf304d931adab: -- CVE-2017-18269: memory corruption in i386 memmove (#1580934) - -* Mon Mar 19 2018 Florian Weimer - 2.27.9000-12 -- Auto-sync with upstream branch master, - commit fbce6f7260c3847f14dfa38f60c9111978fb33a5. - -* Fri Mar 16 2018 Florian Weimer - 2.27.9000-11 -- Auto-sync with upstream branch master, - commit 700593fdd7aef1e36cfa8bad969faab76a6facda. - -* Wed Mar 14 2018 Florian Weimer - 2.27.9000-10 -- Auto-sync with upstream branch master, - commit 7108f1f944792ac68332967015d5e6418c5ccc88. - -* Mon Mar 12 2018 Florian Weimer - 2.27.9000-9 -- Auto-sync with upstream branch master, - commit da6d4404ecfd7eacba8c096b0761a5758a59da4b. - -* Tue Mar 6 2018 Florian Weimer - 2.27.9000-8 -- Enable annobin annotations (#1548438) - -* Thu Mar 01 2018 Florian Weimer - 2.27.9000-7 -- Auto-sync with upstream branch master, - commit 1a2f44a848663036c8a14671fe0faa3fed0b2a25: -- Remove spurios reference to libpthread_nonshared.a - -* Thu Mar 01 2018 Florian Weimer - 2.27.9000-6 -- Switch back to upstream master branch -- Drop glibc-rh1013801.patch, applied upstream. -- Drop glibc-fedora-nptl-linklibc.patch, no longer needed. -- Auto-sync with upstream branch master, - commit bd60ce86520b781ca24b99b2555e2ad389bbfeaa. - -* Wed Feb 28 2018 Florian Weimer - 2.27-5 -- Inherit as many flags as possible from redhat-rpm-config (#1550914) - -* Mon Feb 19 2018 Richard W.M. Jones - 2.27-4 -- riscv64: Add symlink from /usr/lib64/lp64d -> /usr/lib64 for ABI compat. -- riscv64: Disable valgrind smoke test on this architecture. - -* Wed Feb 14 2018 Florian Weimer - 2.27-3 -- Spec file cleanups: - - Remove %%defattr(-,root,root) - - Use shell to run ldconfig %%transfiletrigger - - Move %%transfiletrigger* to the glibc-common subpackage - - Trim changelog - - Include ChangeLog.old in the source RPM - -* Wed Feb 7 2018 Florian Weimer - 2.27-2.1 -- Linux: use reserved name __key in pkey_get (#1542643) -- Auto-sync with upstream branch release/2.27/master, - commit 56170e064e2b21ce204f0817733e92f1730541ea. - -* Wed Feb 07 2018 Fedora Release Engineering -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Mon Feb 05 2018 Carlos O'Donell - 2.27-1 -- Update to released glibc 2.27. -- Auto-sync with upstream branch master, - commit 23158b08a0908f381459f273a984c6fd328363cb. - -* Tue Jan 30 2018 Richard W.M. Jones - 2.26.9000-52 -- Disable -fstack-clash-protection on riscv64: - not supported even by GCC 7.3.1 on this architecture. - -* Mon Jan 29 2018 Florian Weimer - 2.26.9000-51 -- Explicitly run ldconfig in the buildroot -- Do not run ldconfig from scriptlets -- Put triggers into the glibc-common package, do not pass arguments to ldconfig - -* Mon Jan 29 2018 Florian Weimer - 2.26.9000-50 -- Auto-sync with upstream branch master, - commit cdd14619a713ab41e26ba700add4880604324dbb: -- libnsl: Turn remaining symbols into compat symbols (swbz#22701) -- be_BY, be_BY@latin, lt_LT, el_CY, el_GR, ru_RU, ru_UA, uk_UA: - Add alternative month names (swbz#10871) -- x86: Revert Intel CET changes to __jmp_buf_tag (swbz#22743) -- aarch64: Revert the change of the __reserved member of mcontext_t - -* Mon Jan 29 2018 Igor Gnatenko - 2.26.9000-49 -- Add file triggers to do ldconfig calls automatically - -* Mon Jan 22 2018 Florian Weimer - 2.26.9000-48 -- Auto-sync with upstream branch master, - commit 21c0696cdef617517de6e25711958c40455c554f: -- locale: Implement alternative month names (swbz#10871) -- locale: Change month names for pl_PL (swbz#10871) - -* Mon Jan 22 2018 Florian Weimer - 2.26.9000-47 -- Unconditionally build without libcrypt - -* Fri Jan 19 2018 Björn Esser - 2.26.9000-46 -- Remove deprecated libcrypt, gets replaced by libxcrypt -- Add applicable Requires on libxcrypt - -* Fri Jan 19 2018 Florian Weimer - 2.26.9000-45 -- Drop static PIE support on aarch64. It leads to crashes at run time. -- Remove glibc-rpcgen subpackage. See rpcsvc-proto. (#1531540) - -* Fri Jan 19 2018 Florian Weimer - 2.26.9000-44 -- Correct the list of static PIE architectures (#1247050) -- glibc_post_upgrade: Remove process restart logic -- glibc_post_upgrade: Integrate into the build process -- glibc_post_upgrade: Do not clean up tls subdirectories -- glibc_post_upgrade: Drop ia64 support -- Remove architecture-specific symbolic link for iconvconfig -- Auto-sync with upstream branch master, - commit 4612268a0ad8e3409d8ce2314dd2dd8ee0af5269: -- powerpc: Fix syscalls during early process initialization (swbz#22685) - -* Fri Jan 19 2018 Florian Weimer - 2.26.9000-43 -- Enable static PIE support on i386, x86_64 (#1247050) -- Remove add-on support (already gone upstream) -- Rework test suite status reporting -- Auto-sync with upstream branch master, - commit 64f63cb4583ecc1ba16c7253aacc192b6d088511: -- malloc: Fix integer overflows in memalign and malloc functions (swbz#22343) -- x86-64: Properly align La_x86_64_retval to VEC_SIZE (swbz#22715) -- aarch64: Update bits/hwcap.h for Linux 4.15 -- Add NT_ARM_SVE to elf.h - -* Wed Jan 17 2018 Florian Weimer - 2.26.9000-42 -- CVE-2017-14062, CVE-2016-6261, CVE-2016-6263: - Use libidn2 for IDNA support (#1452750) - -* Mon Jan 15 2018 Florian Weimer - 2.26.9000-41 -- CVE-2018-1000001: Make getcwd fail if it cannot obtain an absolute path - (#1533837) -- elf: Synchronize DF_1_* flags with binutils (#1439328) -- Auto-sync with upstream branch master, - commit 860b0240a5645edd6490161de3f8d1d1f2786025: -- aarch64: fix static pie enabled libc when main is in a shared library -- malloc: Ensure that the consolidated fast chunk has a sane size - -* Fri Jan 12 2018 Florian Weimer - 2.26.9000-40 -- libnsl: Do not install libnsl.so, libnsl.a (#1531540) -- Use unversioned Supplements: for langpacks (#1490725) -- Auto-sync with upstream branch master, - commit 9a08a366a7e7ddffe62113a9ffe5e50605ea0924: -- hu_HU locale: Avoid double space (swbz#22657) -- math: Make default libc_feholdsetround_noex_ctx use __feholdexcept - (swbz#22702) - -* Thu Jan 11 2018 Florian Weimer - 2.26.9000-39 -- nptl: Open libgcc.so with RTLD_NOW during pthread_cancel (#1527887) -- Introduce libnsl subpackage and remove NIS headers (#1531540) -- Use versioned Obsoletes: for libcrypt-nss. -- Auto-sync with upstream branch master, - commit 08c6e95234c60a5c2f37532d1111acf084f39345: -- nptl: Add tst-minstack-cancel, tst-minstack-exit (swbz#22636) -- math: ldbl-128ibm log1pl (-qNaN) spurious "invalid" exception (swbz#22693) - -* Wed Jan 10 2018 Florian Weimer - 2.26.9000-38 -- nptl: Fix stack guard size accounting (#1527887) -- Remove invalid Obsoletes: on glibc-header provides -- Require python3 instead of python during builds -- Auto-sync with upstream branch master, - commit 09085ede12fb9650f286bdcd805609ae69f80618: -- math: ldbl-128ibm lrintl/lroundl missing "invalid" exceptions (swbz#22690) -- x86-64: Add sincosf with vector FMA - -* Mon Jan 8 2018 Florian Weimer - 2.26.9000-37 -- Add glibc-rpcgen subpackage, until the replacement is packaged (#1531540) - -* Mon Jan 08 2018 Florian Weimer - 2.26.9000-36 -- Auto-sync with upstream branch master, - commit 579396ee082565ab5f42ff166a264891223b7b82: -- nptl: Add test for callee-saved register restore in pthread_exit -- getrlimit64: fix for 32-bit configurations with default version >= 2.2 -- elf: Add linux-4.15 VDSO hash for RISC-V -- elf: Add RISC-V dynamic relocations to elf.h -- powerpc: Fix error message during relocation overflow -- prlimit: Replace old_rlimit RLIM64_INFINITY with RLIM_INFINITY (swbz#22678) - -* Fri Jan 05 2018 Florian Weimer - 2.26.9000-35 -- Remove sln (#1531546) -- Remove Sun RPC interfaces (#1531540) -- Rebuild with newer GCC to fix pthread_exit stack unwinding issue (#1529549) -- Auto-sync with upstream branch master, - commit f1a844ac6389ea4e111afc019323ca982b5b027d: -- CVE-2017-16997: elf: Check for empty tokens before DST expansion (#1526866) -- i386: In makecontext, align the stack before calling exit (swbz#22667) -- x86, armhfp: sync sys/ptrace.h with Linux 4.15 (swbz#22433) -- elf: check for rpath emptiness before making a copy of it -- elf: remove redundant is_path argument -- elf: remove redundant code from is_dst -- elf: remove redundant code from _dl_dst_substitute -- scandir: fix wrong assumption about errno (swbz#17804) -- Deprecate external use of libio.h and _G_config.h - -* Fri Dec 22 2017 Florian Weimer - 2.26.9000-34 -- Auto-sync with upstream branch master, - commit bad7a0c81f501fbbcc79af9eaa4b8254441c4a1f: -- copy_file_range: New function to copy file data -- nptl: Consolidate pthread_{timed,try}join{_np} -- nptl: Implement pthread_self in libc.so (swbz#22635) -- math: Provide a C++ version of iseqsig (swbz#22377) -- elf: remove redundant __libc_enable_secure check from fillin_rpath -- math: Avoid signed shift overflow in pow (swbz#21309) -- x86: Add feature_1 to tcbhead_t (swbz#22563) -- x86: Update cancel_jmp_buf to match __jmp_buf_tag (swbz#22563) -- ld.so: Examine GLRO to detect inactive loader (swbz#20204) -- nscd: Fix nscd readlink argument aliasing (swbz#22446) -- elf: do not substitute dst in $LD_LIBRARY_PATH twice (swbz#22627) -- ldconfig: set LC_COLLATE to C (swbz#22505) -- math: New generic sincosf -- powerpc: st{r,p}cpy optimization for aligned strings -- CVE-2017-1000409: Count in expanded path in _dl_init_path (#1524867) -- CVE-2017-1000408: Compute correct array size in _dl_init_paths (#1524867) -- x86-64: Remove sysdeps/x86_64/fpu/s_cosf.S -- aarch64: Improve strcmp unaligned performance - -* Wed Dec 13 2017 Florian Weimer - 2.26.9000-33 -- Remove power6 platform directory (#1522675) - -* Wed Dec 13 2017 Florian Weimer - 2.26.9000-32 -- Obsolete the libcrypt-nss subpackage (#1525396) -- armhfp: Disable -fstack-clash-protection due to GCC bug (#1522678) -- ppc64: Disable power6 multilib due to GCC bug (#1522675) -- Auto-sync with upstream branch master, - commit 243b63337c2c02f30ec3a988ecc44bc0f6ffa0ad: -- libio: Free backup area when it not required (swbz#22415) -- math: Fix nextafter and nexttoward declaration (swbz#22593) -- math: New generic cosf -- powerpc: POWER8 memcpy optimization for cached memory -- x86-64: Add sinf with FMA -- x86-64: Remove sysdeps/x86_64/fpu/s_sinf.S -- math: Fix ctanh (0 + i NaN), ctanh (0 + i Inf) (swbz#22568) -- lt_LT locale: Base collation on copy "iso14651_t1" (swbz#22524) -- math: Add _Float32 function aliases -- math: Make cacosh (0 + iNaN) return NaN + i pi/2 (swbz#22561) -- hsb_DE locale: Base collation on copy "iso14651_t1" (swbz#22515) - -* Wed Dec 06 2017 Florian Weimer - 2.26.9000-31 -- Add elision tunables. Drop related configure flag. (#1383986) -- Auto-sync with upstream branch master, - commit 37ac8e635a29810318f6d79902102e2e96b2b5bf: -- Linux: Implement interfaces for memory protection keys -- math: Add _Float64, _Float32x function aliases -- math: Use sign as double for reduced case in sinf -- math: fix sinf(NAN) -- math: s_sinf.c: Replace floor with simple casts -- et_EE locale: Base collation on iso14651_t1 (swbz#22517) -- tr_TR locale: Base collation on iso14651_t1 (swbz#22527) -- hr_HR locale: Avoid single code points for digraphs in LC_TIME (swbz#10580) -- S390: Fix backtrace in vdso functions - -* Mon Dec 04 2017 Florian Weimer - 2.26.9000-30 -- Add build dependency on bison -- Auto-sync with upstream branch master, - commit 7863a7118112fe502e8020a0db0fa74fef281f29: -- math: New generic sinf (swbz#5997) -- is_IS locale: Base collation on iso14651_t1 (swbz#22519) -- intl: Improve reproducibility by using bison (swbz#22432) -- sr_RS, bs_BA locales: make collation rules the same as for hr_HR (wbz#22534) -- hr_HR locale: various updates (swbz#10580) -- x86: Make a space in jmpbuf for shadow stack pointer -- CVE-2017-17426: malloc: Fix integer overflow in tcache (swbz#22375) -- locale: make forward accent sorting the default in collating (swbz#17750) - -* Wed Nov 29 2017 Florian Weimer - 2.26.9000-29 -- Enable -fstack-clash-protection (#1512531) -- Auto-sync with upstream branch master, - commit a55430cb0e261834ce7a4e118dd9e0f2b7fb14bc: -- elf: Properly compute offsets of note descriptor and next note (swbz#22370) -- cs_CZ locale: Base collation on iso14651_t1 (swbz#22336) -- Implement the mlock2 function -- Add _Float64x function aliases -- elf: Consolidate link map sorting -- pl_PL locale: Base collation on iso14651_t1 (swbz#22469) -- nss: Export nscd hash function as __nss_hash (swbz#22459) - -* Thu Nov 23 2017 Florian Weimer - 2.26.9000-28 -- Auto-sync with upstream branch master, - commit cccb6d4e87053ed63c74aee063fa84eb63ebf7b8: -- sigwait can fail with EINTR (#1516394) -- Add memfd_create function -- resolv: Fix p_secstodate overflow handling (swbz#22463) -- resolv: Obsolete p_secstodate -- Avoid use of strlen in getlogin_r (swbz#22447) -- lv_LV locale: fix collation (swbz#15537) -- S390: Add cfi information for start routines in order to stop unwinding -- aarch64: Optimized memset for falkor - -* Sun Nov 19 2017 Florian Weimer - 2.26.9000-27 -- Auto-sync with upstream branch master, - commit f6e965ee94b37289f64ecd3253021541f7c214c3: -- powerpc: AT_HWCAP2 bit PPC_FEATURE2_HTM_NO_SUSPEND -- aarch64: Add HWCAP_DCPOP bit -- ttyname, ttyname_r: Don't bail prematurely (swbz#22145) -- signal: Optimize sigrelse implementation -- inet: Check length of ifname in if_nametoindex (swbz#22442) -- malloc: Account for all heaps in an arena in malloc_info (swbz#22439) -- malloc: Add missing arena lock in malloc_info (swbz#22408) -- malloc: Use __builtin_tgmath in tgmath.h with GCC 8 (swbz#21660) -- locale: Replaced unicode sequences in the ASCII printable range -- resolv: More precise checks in res_hnok, res_dnok (swbz#22409, swbz#22412) -- resolv: ns_name_pton should report trailing \ as error (swbz#22413) -- locale: mfe_MU, miq_NI, an_ES, kab_DZ, om_ET: Escape / in d_fmt (swbz#22403) - -* Tue Nov 07 2017 Florian Weimer - 2.26.9000-26 -- Auto-sync with upstream branch master, - commit 6b86036452b9ac47b4ee7789a50f2f37df7ecc4f: -- CVE-2017-15804: glob: Fix buffer overflow during GLOB_TILDE unescaping -- powerpc: Use latest string function optimization for internal function calls -- math: No _Float128 support for ppc64le -mlong-double-64 (swbz#22402) -- tpi_PG locale: Fix wrong d_fmt -- aarch64: Disable lazy symbol binding of TLSDESC -- tpi_PG locale: fix syntax error (swbz#22382) -- i586: Use conditional branches in strcpy.S (swbz#22353) -- ffsl, ffsll: Declare under __USE_MISC, not just __USE_GNU -- csb_PL locale: Fix abmon/mon for March (swbz#19485) -- locale: Various yesstr/nostr/yesexpr/noexpr fixes (swbz#15260, swbz#15261) -- localedef: Add --no-warnings/--warnings option -- powerpc: Replace lxvd2x/stxvd2x with lvx/stvx in P7's memcpy/memmove -- locale: Use ASCII as much as possible in LC_MESSAGES -- Add new locale yuw_PG (swbz#20952) -- malloc: Add single-threaded path to malloc/realloc/calloc/memalloc -- i386: Replace assembly versions of e_powf with generic e_powf.c -- i386: Replace assembly versions of e_log2f with generic e_log2f.c -- x86-64: Add powf with FMA -- x86-64: Add logf with FMA -- i386: Replace assembly versions of e_logf with generic e_logf.c -- i386: Replace assembly versions of e_exp2f with generic e_exp2f.c -- x86-64: Add exp2f with FMA -- i386: Replace assembly versions of e_expf with generic e_expf.c - -* Sat Oct 21 2017 Florian Weimer - 2.26.9000-25 -- Auto-sync with upstream branch master, - commit 797ba44ba27521261f94cc521f1c2ca74f650147: -- math: Add bits/floatn.h defines for more _FloatN / _FloatNx types -- posix: Fix improper assert in Linux posix_spawn (swbz#22273) -- x86-64: Use fxsave/xsave/xsavec in _dl_runtime_resolve (swbz#21265) -- CVE-2017-15670: glob: Fix one-byte overflow (#1504807) -- malloc: Add single-threaded path to _int_free -- locale: Add new locale kab_DZ (swbz#18812) -- locale: Add new locale shn_MM (swbz#13605) - -* Fri Oct 20 2017 Florian Weimer - 2.26.9000-24 -- Use make -O to serialize make output -- Auto-sync with upstream branch master, - commit 63b4baa44e8d22501c433c4093aa3310f91b6aa2: -- sysconf: Fix missing definition of UIO_MAXIOV on Linux (#1504165) -- Install correct bits/long-double.h for MIPS64 (swbz#22322) -- malloc: Fix deadlock in _int_free consistency check -- x86-64: Don't set GLRO(dl_platform) to NULL (swbz#22299) -- math: Add _Float128 function aliases -- locale: Add new locale mjw_IN (swbz#13994) -- aarch64: Rewrite elf_machine_load_address using _DYNAMIC symbol -- powerpc: fix check-before-set in SET_RESTORE_ROUND -- locale: Use U+202F as thousands separators in pl_PL locale (swbz#16777) -- math: Use __f128 to define FLT128_* constants in include/float.h for old GCC -- malloc: Improve malloc initialization sequence (swbz#22159) -- malloc: Use relaxed atomics for malloc have_fastchunks -- locale: New locale ca_ES@valencia (swbz#2522) -- math: Let signbit use the builtin in C++ mode with gcc < 6.x (swbz#22296) -- locale: Place monetary symbol in el_GR, el_CY after the amount (swbz#22019) - -* Tue Oct 17 2017 Florian Weimer - 2.26.9000-23 -- Switch to .9000 version numbers during development - -* Tue Oct 17 2017 Florian Weimer - 2.26.90-22 -- Auto-sync with upstream branch master, - commit c38a4bfd596db2be2b9c1f96715bdc833eab760a: -- malloc: Use compat_symbol_reference in libmcheck (swbz#22050) - -* Mon Oct 16 2017 Florian Weimer - 2.26.90-21 -- Auto-sync with upstream branch master, - commit 596f70134a8f11967c65c1d55a94a3a2718c731d: -- Silence -O3 -Wall warning in malloc/hooks.c with GCC 7 (swbz#22052) -- locale: No warning for non-symbolic character (swbz#22295) -- locale: Allow "" int_curr_Symbol (swbz#22294) -- locale: Fix localedef exit code (swbz#22292) -- nptl: Preserve error in setxid thread broadcast in coredumps (swbz#22153) -- powerpc: Avoid putting floating point values in memory (swbz#22189) -- powerpc: Fix the carry bit on mpn_[add|sub]_n on POWER7 (swbz#22142) -- Support profiling PIE (swbz#22284) - -* Wed Oct 11 2017 Florian Weimer - 2.26.90-20 -- Auto-sync with upstream branch master, - commit d8425e116cdd954fea0c04c0f406179b5daebbb3: -- nss_files performance issue in multi mode (swbz#22078) -- Ensure C99 and C11 interfaces are available for C++ (swbz#21326) - -* Mon Oct 09 2017 Florian Weimer - 2.26.90-19 -- Move /var/db/Makefile to nss_db (#1498900) -- Auto-sync with upstream branch master, - commit 645ac9aaf89e3311949828546df6334322f48933: -- openpty: use TIOCGPTPEER to open slave side fd - -* Fri Oct 06 2017 Carlos O'Donell - 2.26.90-18 -- Auto-sync with upstream master, - commit 1e26d35193efbb29239c710a4c46a64708643320. -- malloc: Fix tcache leak after thread destruction (swbz#22111) -- powerpc: Fix IFUNC for memrchr. -- aarch64: Optimized implementation of memmove for Qualcomm Falkor -- Always do locking when iterating over list of streams (swbz#15142) -- abort: Do not flush stdio streams (swbz#15436) - -* Wed Oct 04 2017 Florian Weimer - 2.26.90-17 -- Move nss_compat to the main glibc package (#1400538) -- Auto-sync with upstream master, - commit 11c4f5010c58029e73e656d5df4f8f42c9b8e877: -- crypt: Use NSPR header files in addition to NSS header files (#1489339) -- math: Fix yn(n,0) without SVID wrapper (swbz#22244) -- math: Fix log2(0) and log(10) in downward rounding (swbz#22243) -- math: Add C++ versions of iscanonical for ldbl-96, ldbl-128ibm (swbz#22235) -- powerpc: Optimize memrchr for power8 -- Hide various internal functions (swbz#18822) - -* Sat Sep 30 2017 Florian Weimer - 2.26.90-16 -- Auto-sync with upstream master, - commit 1e2bffd05c36a9be30d7092d6593a9e9aa009ada: -- Add IBM858 charset (#1416405) -- Update kernel version in syscall-names.list to 4.13 -- Add Linux 4.13 constants to bits/fcntl-linux.h -- Add fcntl sealing interfaces from Linux 3.17 to bits/fcntl-linux.h -- math: New generic powf, log2f, logf -- Fix nearbyint arithmetic moved before feholdexcept (swbz#22225) -- Mark __dso_handle as hidden (swbz#18822) -- Skip PT_DYNAMIC segment with p_filesz == 0 (swbz#22101) -- glob now matches dangling symbolic links (swbz#866, swbz#22183) -- nscd: Release read lock after resetting timeout (swbz#22161) -- Avoid __MATH_TG in C++ mode with -Os for fpclassify (swbz#22146) -- Fix dlclose/exit race (swbz#22180) -- x86: Add SSE4.1 trunc, truncf (swbz#20142) -- Fix atexit/exit race (swbz#14333) -- Use execveat syscall in fexecve (swbz#22134) -- Enable unwind info in libc-start.c and backtrace.c -- powerpc: Avoid misaligned stores in memset -- powerpc: build some IFUNC math functions for libc and libm (swbz#21745) -- Removed redundant data (LC_TIME and LC_MESSAGES) for niu_NZ (swbz#22023) -- Fix LC_TELEPHONE for az_AZ (swbz#22112) -- x86: Add MathVec_Prefer_No_AVX512 to cpu-features (swbz#21967) -- x86: Add x86_64 to x86-64 HWCAP (swbz#22093) -- Finish change from “Bengali” to “Bangla” (swbz#14925) -- posix: fix glob bugs with long login names (swbz#1062) -- posix: Fix getpwnam_r usage (swbz#1062) -- posix: accept inode 0 is a valid inode number (swbz#19971) -- Remove redundant LC_TIME data in om_KE (swbz#22100) -- Remove remaining _HAVE_STRING_ARCH_* definitions (swbz#18858) -- resolv: Fix memory leak with OOM during resolv.conf parsing (swbz#22095) -- Add miq_NI locale for Miskito (swbz#20498) -- Fix bits/math-finite.h exp10 condition (swbz#22082) - -* Mon Sep 04 2017 Florian Weimer - 2.26.90-15 -- Auto-sync with upstream master, - commit b38042f51430974642616a60afbbf96fd0b98659: -- Implement tmpfile with O_TMPFILE (swbz#21530) -- Obsolete pow10 functions -- math.h: Warn about an already-defined log macro - -* Fri Sep 01 2017 Florian Weimer - 2.26.90-14 -- Build glibc with -O2 (following the upstream default). -- Auto-sync with upstream master, - commit f4a6be2582b8dfe8adfa68da3dd8decf566b3983: -- malloc: Abort on heap corruption, without a backtrace (swbz#21754) -- getaddrinfo: Return EAI_NODATA for gethostbyname2_r with NO_DATA (swbz#21922) -- getaddrinfo: Fix error handling in gethosts (swbz#21915) (swbz#21922) -- Place $(elf-objpfx)sofini.os last (swbz#22051) -- Various locale fixes (swbz#15332, swbz#22044) - -* Wed Aug 30 2017 Florian Weimer - 2.26.90-13 -- Drop glibc-rh952799.patch, applied upstream (#952799, swbz#22025) -- Auto-sync with upstream master, - commit 5f9409b787c5758fc277f8d1baf7478b752b775d: -- Various locale fixes (swbz#22022, swbz#22038, swbz#21951, swbz#13805, - swbz#21971, swbz#21959) -- MIPS/o32: Fix internal_syscall5/6/7 (swbz#21956) -- AArch64: Fix procfs.h not to expose stdint.h types -- iconv_open: Fix heap corruption on gconv_init failure (swbz#22026) -- iconv: Mangle __btowc_fct even without __init_fct (swbz#22025) -- Fix bits/math-finite.h _MSUF_ expansion namespace (swbz#22028) -- Provide a C++ version of iszero that does not use __MATH_TG (swbz#21930) - -* Mon Aug 28 2017 Florian Weimer - 2.26.90-12 -- Auto-sync with upstream master, - commit 2dba5ce7b8115d6a2789bf279892263621088e74. - -* Fri Aug 25 2017 Florian Weimer - 2.26.90-11 -- Auto-sync with upstream master, - commit 3d7b66f66cb223e899a7ebc0f4c20f13e711c9e0: -- string/stratcliff.c: Replace int with size_t (swbz#21982) -- Fix tgmath.h handling of complex integers (swbz#21684) - -* Thu Aug 24 2017 Florian Weimer - 2.26.90-10 -- Use an architecture-independent system call list (#1484729) -- Drop glibc-fedora-include-bits-ldbl.patch (#1482105) - -* Tue Aug 22 2017 Florian Weimer - 2.26.90-9 -- Auto-sync with upstream master, - commit 80f91666fed71fa3dd5eb5618739147cc731bc89. - -* Mon Aug 21 2017 Florian Weimer - 2.26.90-8 -- Auto-sync with upstream master, - commit a8410a5fc9305c316633a5a3033f3927b759be35: -- Obsolete matherr, _LIB_VERSION, libieee.a. - -* Mon Aug 21 2017 Florian Weimer - 2.26.90-7 -- Auto-sync with upstream master, - commit 4504783c0f65b7074204c6126c6255ed89d6594e. - -* Mon Aug 21 2017 Florian Weimer - 2.26.90-6 -- Auto-sync with upstream master, - commit b5889d25e9bf944a89fdd7bcabf3b6c6f6bb6f7c: -- assert: Support types without operator== (int) (#1483005) - -* Mon Aug 21 2017 Florian Weimer - 2.26.90-5 -- Auto-sync with upstream master, - commit 2585d7b839559e665d5723734862fbe62264b25d: -- Do not use generic selection in C++ mode -- Do not use __builtin_types_compatible_p in C++ mode (#1481205) -- x86-64: Check FMA_Usable in ifunc-mathvec-avx2.h (swbz#21966) -- Various locale fixes (swbz#21750, swbz#21960, swbz#21959, swbz#19852) -- Fix sigval namespace (swbz#21944) -- x86-64: Optimize e_expf with FMA (swbz#21912) -- Adjust glibc-rh827510.patch. - -* Wed Aug 16 2017 Tomasz Kłoczko - 2.26-4 -- Remove 'Buildroot' tag, 'Group' tag, and '%%clean' section, and don't - remove the buildroot in '%%install', all per Fedora Packaging Guidelines - (#1476839) - -* Wed Aug 16 2017 Florian Weimer - 2.26.90-3 -- Auto-sync with upstream master, - commit 403143e1df85dadd374f304bd891be0cd7573e3b: -- x86-64: Align L(SP_RANGE)/L(SP_INF_0) to 8 bytes (swbz#21955) -- powerpc: Add values from Linux 4.8 to -- S390: Add new s390 platform z14. -- Various locale fixes (swbz#14925, swbz#20008, swbz#20482, swbz#12349 - swbz#19982, swbz#20756, swbz#20756, swbz#21836, swbz#17563, swbz#16905, - swbz#21920, swbz#21854) -- NSS: Replace exported NSS lookup functions with stubs (swbz#21962) -- i386: Do not set internal_function -- assert: Suppress pedantic warning caused by statement expression (swbz#21242) -- powerpc: Restrict xssqrtqp operands to Vector Registers (swbz#21941) -- sys/ptrace.h: remove obsolete PTRACE_SEIZE_DEVEL constant (swbz#21928) -- Remove __qaddr_t, __long_double_t -- Fix uc_* namespace (swbz#21457) -- nss: Call __resolv_context_put before early return in get*_r (swbz#21932) -- aarch64: Optimized memcpy for Qualcomm Falkor processor -- manual: Document getcontext uc_stack value on Linux (swbz#759) -- i386: Add (swbz#21913) -- Don't use IFUNC resolver for longjmp or system in libpthread (swbz#21041) -- Fix XPG4.2 bits/sigaction.h namespace (swbz#21899) -- x86-64: Add FMA multiarch functions to libm -- i386: Support static PIE in start.S -- Compile tst-prelink.c without PIE (swbz#21815) -- x86-64: Use _dl_runtime_resolve_opt only with AVX512F (swbz#21871) -- x86: Remove __memset_zero_constant_len_parameter (swbz#21790) - -* Wed Aug 16 2017 Florian Weimer - 2.26-2 -- Disable multi-arch (IFUNC string functions) on i686 (#1471427) -- Remove nosegneg 32-bit Xen PV support libraries (#1482027) -- Adjust spec file to RPM changes - -* Thu Aug 03 2017 Carlos O'Donell - 2.26-1 -- Update to released glibc 2.26. -- Auto-sync with upstream master, - commit 2aad4b04ad7b17a2e6b0e66d2cb4bc559376617b. -- getaddrinfo: Release resolver context on error in gethosts (swbz#21885) - -* Wed Aug 02 2017 Fedora Release Engineering - 2.25.90-30.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Sat Jul 29 2017 Florian Weimer - 2.25.90-30 -- Auto-sync with upstream master, - commit 5920a4a624b1f4db310d1c44997b640e2a4653e5: -- mutex: Fix robust mutex lock acquire (swbz#21778) - -* Fri Jul 28 2017 Florian Weimer - 2.25.90-29 -- Auto-sync with upstream master, - commit d95fcb2df478efbf4f8537ba898374043ac4561f: -- rwlock: Fix explicit hand-over (swbz#21298) -- tunables: Use direct syscall for access (swbz#21744) -- Avoid accessing corrupted stack from __stack_chk_fail (swbz#21752) -- Remove extra semicolons in struct pthread_mutex (swbz#21804) -- grp: Fix cast-after-dereference (another big-endian group merge issue) -- S390: fix sys/ptrace.h to make it includible again after asm/ptrace.h -- Don't add stack_chk_fail_local.o to libc.a (swbz#21740) -- i386: Test memmove_chk and memset_chk only in libc.so (swbz#21741) -- Add new locales az_IR, mai_NP (swbz#14172) -- Various locale improvements - -* Thu Jul 27 2017 Carlos O'Donell - 2.25.90-28 -- Adjust to new rpm debuginfo generation (#1475009). - -* Wed Jul 26 2017 Fedora Release Engineering - 2.25.90-27.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed Jul 19 2017 Florian Weimer - 2.25.90-27 -- Auto-sync with upstream master, - commit 00d7a3777369bac3d8d44152dde2bb7381984ef6: -- aarch64: Fix out of bound array access in _dl_hwcap_string - -* Mon Jul 17 2017 Florian Weimer - 2.25.90-26 -- Drop glibc-rh1467518.patch in favor of upstream patch (#1467518) -- Auto-sync with upstream master, - commit 91ac3a7d8474480685632cd25f844d3154c69fdf: -- Fix pointer alignment in NSS group merge result construction (#1471985) -- Various locale fixes - -* Fri Jul 14 2017 Carlos O'Donell - 2.25.90-25 -- armv7hl: Drop 32-bit ARM build fix, already in upstream master. -- s390x: Apply glibc fix again, removing PTRACE_GETREGS etc. (#1469536). -- Auto-sync with upstream master, - commit de895ddcd7fc45caeeeb0ae312311b8bd31d82c5: -- Added Fiji Hindi language locale for Fiji (swbz#21694). -- Added yesstr/nostr for nds_DE and nds_NL (swbz#21756). -- Added yesstr and nostr for Tigrinya (swbz#21759). -- Fix LC_MESSAGES and LC_ADDRESS for anp_IN (swbz#21760). -- Added yesstr/nostr and fix yesexpr for pap_AW and pap_CW (swbz#21757). -- Added Tongan language locale for Tonga (swbz#21728). -- [ARM] Fix ld.so crash when built using Binutils 2.29. -- Added yesstr and nostr for aa_ET (swbz#21768). -- New locale for bi_VU (swbz#21767). -- Disable single thread optimization for open_memstream - -* Wed Jul 12 2017 Carlos O'Donell - 2.25.90-24 -- Fix IFUNC crash in early startup for ppc64le static binaries (#1467518). -- Enable building with BIND_NOW on ppc64le (#1467518). -- Fix 32-bit ARM builds in presence of new binutils. - -* Wed Jul 12 2017 Florian Weimer - 2.25.90-23 -- malloc: Tell GCC optimizers about MAX_FAST_SIZE in _int_malloc (#1470060) -- Auto-sync with upstream master, - commit 30200427a99e5ddac9bad08599418d44d54aa9aa: -- Add per-thread cache to malloc -- Add Samoan language locale for Samoa -- Add Awajún / Aguaruna locale for Peru -- CVE-2010-3192: Avoid backtrace from __stack_chk_fail (swbz#12189) -- Add preadv2, writev2 RWF_NOWAIT flag (swbz#21738) -- Fix abday strings for ar_JO/ar_LB/ar_SY locales (swbz#21749) -- Fix abday strings for ar_SA locale (swbz#21748, swbz#19066) -- Set data_fmt for da_DK locale (swbz#17297) -- Add yesstr and nostr for the zh_HK locale (swbz#21733) -- Fix abday strings for the ksIN@devanagari locale (swbz#21743) -- Do not include _dl_resolv_conflicts in libc.a (swbz#21742) -- Test __memmove_chk, __memset_chk only in libc.so (swbz#21741) -- Add iI and eE to yesexpr and noexpr respectively for ts_ZA locale -- Add yesstr/nostr for kw_GB locale (swbz#21734) -- Add yesstr and nostr for the ts_ZA locale (swbz#21727) -- Fix LC_NAME for hi_IN locale (swbz#21729) -- Add yesstr and nostr for the xh_ZA locale (swbz#21724) -- Add yesstr and nostr for the zh_CN locale (swbz#21723) -- Fix full weekday names for the ks_IN@devanagari locale (swbz#21721) -- Various fixes to Arabic locales after CLDR import - -* Tue Jul 11 2017 Florian Weimer - 2.25.90-22 -- Reinstantiate stack_t cleanup (#1468904) -- s390x: Restore PTRACE_GETREGS etc. to get GCC to build (#1469536) - -* Sun Jul 9 2017 Florian Weimer - 2.25.90-21 -- Back out stack_t cleanup (#1468904) - -* Thu Jul 06 2017 Florian Weimer - 2.25.90-20 -- Auto-sync with upstream master, - commit 031e519c95c069abe4e4c7c59e2b4b67efccdee5: -- x86-64: Align the stack in __tls_get_addr (#1440287) -- Add Tok-Pisin (tpi_PG) locale. -- Add missing yesstr/nostr for Pashto locale (swbz#21711) -- Add missing yesstr/nostr for Breton locale (swbz#21706) -- Single threaded stdio optimization -- sysconf: Use conservative default for _SC_NPROCESSORS_ONLN (swbz#21542) - -* Tue Jul 04 2017 Florian Weimer - 2.25.90-19 -- Auto-sync with upstream master, - commit 4446a885f3aeb3a33b95c72bae1f115bed77f0cb. - -* Tue Jul 04 2017 Florian Weimer - 2.25.90-18 -- Auto-sync with upstream master, - commit 89f6307c5d270ed4f11cee373031fa9f2222f2b9. - -* Tue Jul 4 2017 Florian Weimer - 2.25.90-17 -- Disable building with BIND_NOW on ppc64le (#1467518) - -* Mon Jul 03 2017 Florian Weimer - 2.25.90-16 -- Auto-sync with upstream master, - commit e237357a5a0559dee92261f1914d1fa2cd43a1a8: -- Support an arbitrary number of search domains in the stub resolver (#168253) -- Detect and apply /etc/resolv.conf changes in libresolv (#1374239) -- Increase malloc alignment on i386 to 16 (swbz#21120) -- Make RES_ROTATE start with a random name server (swbz#19570) -- Fix tgmath.h totalorder, totalordermag return type (swbz#21687) -- Miscellaneous sys/ucontext.h namespace fixes (swbz#21457) -- Rename struct ucontext tag (swbz#21457) -- Call exit system call directly in clone (swbz#21512) -- powerpc64le: Enable float128 -- getaddrinfo: Merge IPv6 addresses and IPv4 addresses (swbz#21295) -- Avoid .symver on common symbols (swbz#21666) -- inet_pton: Reject IPv6 addresses with many leading zeros (swbz#16637) - -* Fri Jun 23 2017 Florian Weimer - 2.25.90-15 -- Auto-sync with upstream master, - commit 3ec7c02cc3e922b9364dc8cfd1d4546671b91003, fixing: -- memcmp-avx2-movbe.S incorrect results for lengths 2/3 (#1464403) - -* Fri Jun 23 2017 Florian Weimer - 2.25.90-14 -- Auto-sync with upstream master, - commit 12f50337ae80672c393c2317d471d097ad92c492, changing: -- localedata: fur_IT: Fix spelling of Wednesday (Miercus) -- Update to Unicode 10.0.0 -- inet: __inet6_scopeid_pton should accept node-local addresses (swbz#21657) - -* Fri Jun 23 2017 Florian Weimer - 2.25.90-13 -- Reenable valgrind on aarch64 - -* Thu Jun 22 2017 Florian Weimer - 2.25.90-12 -- Log auxiliary vector during build - -* Thu Jun 22 2017 Florian Weimer - 2.25.90-11 -- Auto-sync with upstream master, - commit 0a47d031e44f15236bcef8aeba80e737bd013c6f. - -* Thu Jun 22 2017 Florian Weimer - 2.25.90-10 -- Disable valgrind on aarch64 - -* Wed Jun 21 2017 Florian Weimer - 2.25.90-9 -- Drop historic aarch64 TLS patches -- Drop workaround for GCC PR69537 -- Auto-sync with upstream master, - commit 9649350d2ee47fae00794d57e2526aa5d67d900e. - -* Wed Jun 21 2017 Florian Weimer - 2.25.90-8 -- Adjust build requirements for gcc, binutils, kernel-headers. -- Auto-sync with upstream master, - commit 43e0ac24c836eed627a75ca932eb7e64698407c6, changing: -- Remove - -* Mon Jun 19 2017 Florian Weimer - 2.25.90-7 -- Drop glibc-Disable-buf-NULL-in-login-tst-ptsname.c, applied upstream. -- Auto-sync with upstream master, - commit 37e9dc814636915afb88d0779e5e897e90e7b8c0, fixing: -- CVE-2017-1000366: Avoid large allocas in the dynamic linker (#1462820) -- wait3 namespace (swbz#21625) -- S390: Sync ptrace.h with kernel (swbz#21539) -- Another x86 sys/ucontext.h namespace issue (swbz#21457) -- siginterrupt namespace (swbz#21597) -- Signal stack namespace (swbz#21584) -- Define struct rusage in sys/wait.h when required (swbz#21575) -- S390: Fix build with gcc configured with --enable-default-pie (swbz#21537) -- Update timezone code from tzcode 2017b -- nptl: Invert the mmap/mprotect logic on allocated stacks (swbz#18988) -- PowerPC64 ELFv2 PPC64_OPT_LOCALENTRY -- Make copy of from GCC (swbz#21573) -- localedata: ce_RU: update weekdays from CLDR (swbz#21207) -- localedata: Remove trailing spaces (swbz#20275) -- XPG4 bsd_signal namespace (swbz#21552) -- Correct collation rules for Malayalam (swbz#19922, swbz#19919) -- waitid namespace (swbz#21561) -- Condition signal.h inclusion in sys/wait.h (swbz#21560) -- ld.so: Consolidate 2 strtouls into _dl_strtoul (swbz#21528) -- tst-timezone race (swbz#14096) -- Define SIG_HOLD for XPG4 (swbz#21538) -- struct sigaltstack namespace (swbz#21517) -- sigevent namespace (swbz#21543) -- Add shim header for bits/syscall.h (swbz#21514) -- namespace issues in sys/ucontext.h (swbz#21457) -- posix: Implement preadv2 and pwritev2 -- Various float128 and tunables improvements - -* Tue Jun 06 2017 Stephen Gallagher - 2.25.90-6 -- Reduce libcrypt-nss dependency to 'Suggests:' - -* Wed May 31 2017 Arjun Shankar - 2.25.90-5 -- Auto-sync with upstream master, - commit cfa9bb61cd09c40def96f042a3123ec0093c4ad0. -- Fix sys/ucontext.h namespace from signal.h etc. inclusion (swbz#21457) -- Fix sigstack namespace (swbz#21511) - -* Wed May 31 2017 Arjun Shankar - 2.25.90-4 -- Disable the NULL buffer test in login/tst-ptsname.c. It leads to a build - failure during 'make check'. A permanent solution is being discussed - upstream. - -* Tue May 23 2017 Arjun Shankar - 2.25.90-3 -- Auto-sync with upstream master, - commit 231a59ce2c5719d2d77752c21092960e28837b4a. -- Add el_GR@euro support (swbz#20686) -- Set dl_platform and dl_hwcap from CPU features (swbz#21391) -- Use __glibc_reserved convention in mcontext, sigcontext (swbz#21457) -- Fix signal.h bsd_signal namespace (swbz#21445) -- Fix network headers stdint.h namespace (swbz#21455) -- resolv: Use RES_DFLRETRY consistently (swbz#21474) -- Condition some sys/ucontext.h contents on __USE_MISC (swbz#21457) -- Consolidate Linux read syscall (swbz#21428) -- fork: Remove bogus parent PID assertions (swbz#21386) -- Reduce value of LD_HWCAP_MASK for tst-env-setuid test case (swbz#21502) -- libio: Avoid dup already opened file descriptor (swbz#21393) - -* Mon May 01 2017 Carlos O'Donell - 2.25.90-2 -- Auto-sync with upstream master, - commit 25e39b4229fb365a605dc4c8f5d6426a77bc08a6. -- logbl for POWER7 return incorrect results (swbz#21280) -- sys/socket.h uio.h namespace (swbz#21426) -- Support POSIX_SPAWN_SETSID (swbz#21340) -- Document how to provide a malloc replacement (swbz#20424) -- Verify that all internal sockets opened with SOCK_CLOEXEC (swbz#15722) -- Use AVX2 memcpy/memset on Skylake server (swbz#21396) -- unwind-dw2-fde deadlock when using AddressSanitizer (swbz#21357) -- resolv: Reduce advertised EDNS0 buffer size to guard against - fragmentation attacks (swbz#21361) -- mmap64 silently truncates large offset values (swbz#21270) -- _dl_map_segments does not test for __mprotect failures consistently - (swbz#20831) - -* Thu Mar 02 2017 Florian Weimer - 2.25.90-1 -- Switch back to upstream master branch. -- Drop Unicode 9 patch, merged upstream. -- Auto-sync with upstream master, - commit a10e9c4e53fc652b79abf838f7f837589d2c84db, fixing: -- Build all DSOs with BIND_NOW (#1406731) - -* Wed Mar 1 2017 Jakub Hrozek - 2.25-3 -- NSS: Prefer sss service for passwd, group databases (#1427646) - -* Tue Feb 28 2017 Florian Weimer - 2.25-2 -- Auto-sync with upstream release/2.25/master, - commit 93cf93e06ce123439e41d3d62790601c313134cb, fixing: -- sunrpc: Improvements for UDP client timeout handling (#1346406) -- sunrpc: Avoid use-after-free read access in clntudp_call (swbz#21115) -- Fix getting tunable values on big-endian (swbz#21109) - -* Wed Feb 08 2017 Carlos O'Donell - 2.25-1 -- Update to final released glibc 2.25. - -* Wed Feb 08 2017 Carlos O'Donell - 2.24.90-31 -- Fix builds with GCC 7.0. - -* Wed Feb 01 2017 Carlos O'Donell - 2.24.90-30 -- Optimize IBM z System builds for zEC12. - -* Wed Jan 25 2017 Florian Weimer - 2.24.90-29 -- Use vpath in crypt-glibc/Makefile to obtain the test input file. -- Auto-sync with upstream master, - commit 5653ab12b4ae15b32d41de7c56b2a4626cd0437a, fixing: -- ARM fpu_control.h for assemblers requiring VFP insn names (swbz#21047) -- FAIL in test string/tst-xbzero-opt (swbz#21006) -- Make soft-float powerpc swapcontext restore the signal mask (swbz#21045) -- Clear list of acquired robust mutexes in the child after fork (swbz#19402) - -* Thu Jan 12 2017 Carlos O'Donell - 2.24.90-28 -- Auto-sync with upstream master, - commit 468e525c81a4af10f2e613289b6ff7c950773a9e: -- Drop rwlock related patches applied upstream. -- Fix i686 memchr for large input sizes (swbz#21014) -- Fix x86 strncat for large input sizes (swbz#19390) -- powerpc: Fix write-after-destroy in lock elision (swbz#20822) -- New pthread rwlock that is more scalable. -- Fix testsuite build for GCC 7 -Wformat-truncation. - -* Mon Jan 02 2017 Florian Weimer - 2.24.90-27 -- Auto-sync with upstream master, - commit 73dfd088936b9237599e4ab737c7ae2ea7d710e1: -- Enable tunables. -- Drop condvar-related patches applied upstream. -- Update DNS RR type definitions (swbz#20593) -- CVE-2015-5180: resolv: Fix crash with internal QTYPE (#1249603) -- sunrpc: Always obtain AF_INET addresses from NSS (swbz#20964) - -* Mon Dec 26 2016 Florian Weimer - 2.24.90-26 -- Auto-sync with upstream master, - commit cecbc7967f0bcac718b6f8f8942b58403c0e917c -- Enable stack protector for most of glibc (#1406731) - -* Fri Dec 23 2016 Carlos O'Donell - 2.24.90-25 -- Auto-sync with upstream master, - commit 81e0662e5f2c342ffa413826b7b100d56677b613, fixing: -- Shared object unload assert when calling dlclose (#1398370, swbz#11941) -- Fix nss_nisplus build with mainline GCC (swbz#20978) -- Add Intel TSX blacklist for silicon with known errata. -- Add fmax, fmin, fmaxf, fminf microbenchmarks. -- Robust mutexes: Fix lost wake-up (swbz#20973). -- Add fmaxmag, fminmag, roundeven, roundevenf, roundevenl functions. - -* Sun Dec 18 2016 Florian Weimer - 2.24.90-24 -- Auto-sync with upstream master, - commit e077349ce589466eecd47213db4fae6b80ec18c4, fixing: -- Warn about assignment in assertions (#1105335) -- powerpc64/power7 memchr for large input sizes (swbz#20971) -- fmax, fmin sNaN handling (swbz#20947) - -* Mon Dec 12 2016 Florian Weimer - 2.24.90-23 -- Auto-sync with upstream master, - commit 92dcaa3e2f7bf0f7f1c04cd2fb6a317df1a4e225, fixing: -- Add getrandom, getentropy (#1172273) -- Add additional compiler barriers to backtrace tests (swbz#20956) - -* Fri Dec 09 2016 Florian Weimer - 2.24.90-22 -- Auto-sync with upstream master, - commit 0abbe7cd700951082b314182a0958d65238297ef, changing: -- IN6_IS_ADDR_ does not require enabling non-standard extensions (#1138893) -- Install libm.a as linker script (swbz#20539) -- Fix writes past the allocated array bounds in execvpe (swbz#20847) -- Fix hypot sNaN handling (swbz#20940) -- Fix x86_64/x86 powl handling of sNaN arguments (swbz#20916) -- Fix sysdeps/ieee754 pow handling of sNaN arguments (swbz#20916) -- Fix pow (qNaN, 0) result with -lieee (swbz#20919) -- Fix --enable-nss-crypt failure of tst-linkall-static (swbz#20918) - -* Fri Dec 02 2016 Florian Weimer - 2.24.90-21 -- Auto-sync with upstream master, - commit 01b23a30b42a90b1ebd882a0d81110a1542e504a, fixing: -- aarch64: Incorrect dynamic TLS resolution (#1400347) - -* Wed Nov 30 2016 Florian Weimer - 2.24.90-20 -- Auto-sync with upstream master, - commit 9e78f6f6e7134a5f299cc8de77370218f8019237, fixing: -- stdio buffering with certain network file systems (#1400144) -- libpthread initialization breaks ld.so exceptions (#1393909) -- x86_64: Use of PLT and GOT in static archives (swbz#20750) -- localedata, iconvdata: 0x80->Euro sign mapping for GBK (swbz#20864) -- math: x86_64 -mfpmath=387 float_t, double_t (swbz#20787) - -* Wed Nov 23 2016 Florian Weimer - 2.24.90-19 -- Auto-sync with upstream master, - commit 7a5e3d9d633c828d84a9535f26b202a6179978e7: -- Fix default float_t definition (swbz#20855) -- Fix writes past the allocated array bounds in execvpe (swbz#20847) - -* Tue Nov 22 2016 Florian Weimer - 2.24.90-18 -- Auto-sync with upstream master, - commit 5ee1a4443a3eb0868cef1fe506ae6fb6af33d4ad. - -* Wed Nov 16 2016 Carlos O'Donell - 2.24.90-17 -* Add new scalable implementation of POSIX read-write locks. - -* Wed Nov 16 2016 Florian Weimer - 2.24.90-16 -- Do not try to link libcrypt statically during tests - -* Wed Nov 16 2016 Florian Weimer - 2.24.90-15 -- Auto-sync with upstream master, - commit 530862a63e0929128dc98fbbd463b120934434fb, fixing: -- Fix rpcgen buffer overrun (swbz#20790) -- Fix ppc64 build failure to swbz#20729 fix attempt - -* Wed Nov 2 2016 Florian Weimer - 2.24.90-14 -- Drop glibc-swbz20019.patch, applied upstream. -- dlerror returns NULL after dlsym (RTLD_NEXT) lookup failure (#1333945) - (fixed by dropping the revert) -- Auto-sync with upstream master, - commit 9032070deaa03431921315f973c548c2c403fecc, fixing: -- Correct clog10 documentation (swbz#19673) -- Fix building with -Os (swbz#20729) -- Properly initialize glob structure with GLOB_BRACE|GLOB_DOOFFS (swbz#20707) -- powerpc: Fix TOC stub on powerpc64 clone (swbz#20728) -- math: Make strtod raise "inexact" exceptions (swbz#19380) -- malloc: Remove malloc_get_state, malloc_set_state (swbz#19473) - -* Sat Oct 22 2016 Florian Weimer - 2.24.90-13 -- Auto-sync with upstream master, - commit e37208ce86916af9510ffb9ce7b3c187986f07de, changing: -- Restore compatbility with extern "C" wrappers - -* Fri Oct 21 2016 Florian Weimer - 2.24.90-12 -- Auto-sync with upstream master, - commit b3918c44db615637b26d919ce599cd86592316b3, fixing: -- math: Turn iszero into a function template (#1387415) -- ARM: Use VSQRT instruction (swbz#20660) -- math: Stop powerpc copysignl raising "invalid" for sNaN (swbz#20718) -- x86: Fix FMA and AVX2 detection (swbz#20689) -- x86: Avoid assertion failure on older Intel CPus (swbz#20647) - -* Mon Oct 17 2016 Carlos O'Donell - 2.24.90-11 -- Add prototype support for detecting invalid IFUNC calls (swbz#20019). -- New POSIX thread condition variable implementation (swbz#13165). - -* Fri Oct 07 2016 Florian Weimer - 2.24.90-10 -- Auto-sync with upstream master, - commit 5140d036f9c16585448b5908c3a219bd96842161, fixing: -- resolv: Remove RES_USEBSTRING and its implementation (swbz#20629) -- Refactor ifunc resolvers due to false debuginfo (swbz#20478) - -* Tue Oct 04 2016 Florian Weimer - 2.24.90-9 -- Auto-sync with upstream master, - commit ff88ee7edfaa439e23c42fccaf3a36cd5f041894, fixing: -- LONG_WIDTH is incorrectly set to the 64 on 32-bit platforms (#1381582) -- libio: Multiple fixes for open_{w}memstream (swbz#18241, swbz#20181) -- Simplify and test _dl_addr_inside_object (swbz#20292) - -* Thu Sep 22 2016 Florian Weimer - 2.24.90-8 -- Add support for MIPS (#1377795) -- Drop glibc-rh1315476-1.patch (sln pre-processor cleanup), it was - applied upstream. -- Auto-sync with upstream master, - commit 17af5da98cd2c9ec958421ae2108f877e0945451, fixing the following bugs: -- Fix non-LE TLS in static programs (swbz#19826) -- resolv: Remove unsupported hook functions from the API (swbz#20016) -- Remove RR type classification macros (swbz#20592) -- Remove obsolete DNSSEC support (swbz#20591) -- manual: Clarify the documentation of strverscmp (swbz#20524) - -* Tue Sep 20 2016 Carlos O'Donell - 2.24.90-7 -- Auto-sync with upstream master. - -* Thu Sep 01 2016 Florian Weimer - 2.24.90-6 -- Auto-sync with upstream master, - commit 4d728087ef8cc826b05bd21d0c74d4eca9b1a27d, fixing: -- Base on Linux headers (#1360480) -- Simplify static malloc interposition (swbz#20432) - -* Fri Aug 26 2016 Florian Weimer - 2.24.90-5 -- Auto-sync with upstream master, - commit 7e625f7e85b4e88f10dbde35a0641742af581806, fixing: -- lt_LT locale: use hyphens in d_fmt (swbz#20497) -- nptl test time reductions (swbz#19946) - -* Sun Aug 21 2016 Florian Weimer - 2.24.90-4 -- Auto-sync with upstream master, - commit 66abf9bfbe24ac1e7207d26ccad725ed938dc52c, fixing: -- argp: Do not override GCC keywords with macros (#1366830) - -* Wed Aug 17 2016 Florian Weimer - 2.24.90-3 -- Auto-sync with upstream master, - commit d9067fca40b8aac156d73cfa44d6875813555a6c, with these changes: -- Avoid duplicating object files already in libc.a (#1352625) -- CVE-2016-6323: Backtraces can hang on ARM EABI (32-bit) (swbz#20435) -- et_EE: locale has wrong {p,n}_cs_precedes value (swbz#20459 - -* Thu Aug 11 2016 Florian Weimer - 2.24.90-2 -- Auto-sync with upstream master, - commit f79211792127f38d5954419bb3784c8eb7f5e4e5 - -* Mon Aug 08 2016 Carlos O'Donell - 2.24.90-1 -- Set version to 2.24.90 to match upstream development. - -* Mon Aug 08 2016 Carlos O'Donell - 2.23.90-31 -- Auto-sync with upstream master. - -* Thu Jul 21 2016 Florian Weimer - 2.23.90-30 -- Drop sendmsg/recvmsg compatibility patch (#1344830) -- glibc-devel depends on libgcc%%{_isa} (#1289356) -- Drop Requires(pre) on libgcc -- Introduce libcrypt and libcrypt-nss (#1324623) -- Do not try to install mtrace when bootstrapping - -* Wed Jul 20 2016 Florian Weimer - 2.23.90-29 -- Move NSS modules to subpackages (#1338889) - -* Wed Jul 13 2016 Florian Weimer - 2.23.90-28 -- Auto-sync with upstream master, commit - f531f93056b34800383c5154280e7ba5112563c7. -- Add de_LI.UTF-8 locale. -- Make ldconfig and sln the same binary. (#1315476) - -* Fri Jul 08 2016 Mike FABIAN - 2.23.90-27 -- Unicode 9.0.0 updates (ctype, charmap, transliteration) (#1351108) - -* Tue Jul 05 2016 Florian Weimer - 2.23.90-26 -- Auto-sync with upstream master, up to commit - 30e4cc5413f72c2c728a544389da0c48500d9904, fixing these bug: -- strcasecmp failure on ppc64le (#nscd breaks initgroups with nis (initgroups are empty) (#1294574) - -* Fri Jun 24 2016 Carlos O'Donell - 2.23.90-25 -- Properly handle more invalid --install-langs arguments (#1349906). - -* Tue Jun 21 2016 Florian Weimer - 2.23.90-24 -- Auto-sync with upstream master, commit - a3b473373ee43a292f5ec68a7fda6b9cfb26a9b0, fixing these bugs: -- Unnecessary mmap fallback in malloc (#1348620) -- pwritev system call passes incorrect offset to kernel (#1346070) - -* Sat Jun 18 2016 Carlos O'Donell - 2.23.90-23 -- Use scriptlet expansion in all-langpacks posttrans script to expand - _install_langes macro. - -* Mon Jun 13 2016 Florian Weimer - 2.23.90-22 -- Remove glibc-fedora-uname-getrlimit.patch. This patch was - introduced to fix bug rhbz#579086 (Preloading a replacement uname - is causing environment to be cleaned if libpthread is loaded). - UTS namespaces should now offer a cleaner way yo do this. -- Drop sendmmsg/recvmmsg compat symbols on 32-bit architectures (#1344830) -* Sat Jun 11 2016 Florian Weimer - 2.23.90-21 -- First phase of sendmsg/recvmsg/sendmmsg/recvmmsg ABI revert: - GLIBC_2.24 compatibility symbols (#1344830) -- Auto-sync with upstream master - (commit 31d0a4fa646db8b8c97ce24e0ec0a7b73de4fca1), - fixing the following bugs: -- Add eo locale -- Crash in the nss_db NSS service module during iteration (#1344480) - -* Thu Jun 09 2016 Florian Weimer - 2.23.90-20 -- Auto-sync with upstream master, fixing this bug: -- Emacs crashes on startup (#1342976) - -* Wed Jun 01 2016 Florian Weimer - 2.23.90-19 -- Auto-sync with upstream master. -- Adjust glibc-rh1315108.patch accordingly. -- Fix fork redirection in libpthread (#1326903) -- CVE-2016-4429: stack overflow in Sun RPC clntudp_call (#1337140) -- Do not disable assertions in release builds (#1338887) - -* Wed May 11 2016 Carlos O'Donell - 2.23.90-18 -- Move support for building GCC 2.96 into compat-gcc-296. - -* Wed May 11 2016 Florian Weimer - 2.23.90-17 -- Temporily revert dlsym (RTLD_NEXT)/dlerror change, to unbreak - ASAN until it is fixed (#1335011) - -* Mon May 9 2016 Florian Weimer - 2.23.90-16 -- Drop the “fix” for fork/vfork NULL symbols in libpthread. It does - not work because ld.so apparently supports some variant of direct - binding. - -* Mon May 09 2016 Florian Weimer - 2.23.90-15 -- Auto-sync with upstream master. -- Drop glibc-nsswitch-Add-group-merging-support.patch, applied upstream. -- Drop glibc-rh1252570.patch, alternative fixes applied upstream. -- Adjust glibc-rh1315108.patch to minor upstream change. -- Update SUPPORTED file. -- Experimental fix for NULL fork/vfork symbols in libpthread (#1326903) - -* Tue May 03 2016 Carlos O'Donell - 2.23.90-14 -- Require libselinux for nscd in non-bootstrap configuration. - -* Fri Apr 29 2016 Carlos O'Donell - 2.23.90-13 -- Auto-sync with upstream master. - -* Thu Apr 28 2016 Carlos O'Donell - 2.23.90-12 -- Move spec file system information logging to the build stage. - -* Thu Apr 14 2016 Florian Weimer - 2.23.90-11 -- Auto-sync with upstream master. -- Unbreak pread/pread64 on armhfp (#1327277) - -* Thu Apr 14 2016 Florian Weimer - 2.23.90-10 -- Auto-sync with upstream master. - -* Thu Apr 14 2016 Florian Weimer - 2.23.90-9 -- Auto-sync with upstream master. Removes type union wait. -- Update SUPPORTED locales file. - -* Fri Apr 08 2016 Florian Weimer - 2.23.90-8 -- Auto-sync with upstream master. - -* Tue Mar 29 2016 Florian Weimer - 2.23.90-7 -- Auto-sync with upstream master. -- Adjust glibc-rh1252570.patch to partial upstream fix. -- Drop glibc-fix-an_ES.patch, now included upstream. - -* Wed Mar 16 2016 Carlos O'Donell - 2.23.90-6 -- Use 'an' as language abbreviation for an_ES. - -* Mon Mar 07 2016 Carlos O'Donell - 2.23.90-5 -- Auto-sync with upstream master. - -* Sun Mar 6 2016 Florian Weimer - 2.23.90-4 -- Remove extend_alloca (#1315108) - -* Mon Feb 29 2016 Carlos O'Donell - 2.23.90-3 -- Enhance support for upgrading from a non-language-pack system. - -* Fri Feb 26 2016 Mike FABIAN - 2.23.90-2 -- Create new language packages for all supported languages. - Locales, translations, and locale sources are split into - distinct sub-packages. A meta-package is created for users - to install all languages. Transparent installation support - is provided via dnf langpacks. - -* Fri Feb 26 2016 Carlos O'Donell - 2.23.90-1 -- Upstream development version is now 2.23.90. - -* Thu Feb 25 2016 Carlos O'Donell - 2.22.90-38 -- Auto-sync with upstream master. - -* Fri Feb 19 2016 Florian Weimer - 2.22.90-37 -- Remove stray newline from Serbian locales (#1114591). - -* Tue Feb 16 2016 CArlos O'Donell - 2.22.90-36 -- Fix CVE-2015-7547: getaddrinfo() stack-based buffer overflow (#1308943). - -* Mon Feb 15 2016 Florian Weimer - 2.22.90-35 -- Revert may_alias attribute for struct sockaddr (#1306511). -- Revert upstream commit 2212c1420c92a33b0e0bd9a34938c9814a56c0f7 (#1252570). - -* Sat Feb 13 2016 Florian Weimer - 2.22.90-34 -- Auto-sync with upstream master. -- Support aliasing with struct sockaddr pointers (#1306511). - -* Tue Feb 09 2016 Carlos O'Donell - 2.22.90-33 -- Use --with-cpu=power8 for ppc64le default runtime (#1227361). - -* Tue Feb 02 2016 Florian Weimer - 2.22.90-32 -- Auto-sync with upstream master. -- Add glibc-isinf-cxx11.patch to improve C++11 compatibility. - -* Thu Jan 28 2016 Florian Weimer - 2.22.90-31 -- Add workaround for GCC PR69537. - -* Thu Jan 28 2016 Florian Weimer - 2.22.90-30 -- Auto-sync with upstream master. - -* Wed Jan 13 2016 Carlos O'Donell - 2.22.90-29 -- New pthread_barrier algorithm with improved standards compliance. - -* Wed Jan 13 2016 Carlos O'Donell - 2.22.90-28 -- Add group merging support for distributed management (#1146822). - -* Tue Jan 12 2016 Carlos O'Donell - 2.22.90-27 -- Remove 32-bit POWER support. -- Add 64-bit POWER7 BE and 64-bit POWER8 BE optimized libraries. - -* Mon Dec 21 2015 Florian Weimer - 2.22.90-26 -- Auto-sync with upstream master. - -* Wed Dec 16 2015 Florian Weimer - 2.22.90-25 -- Auto-sync with upstream master. -- Includes fix for malloc assertion failure in get_free_list. (#1281714) -- Drop Unicode 8.0 patches (now merged upstream). - -* Sat Dec 5 2015 Florian Weimer - 2.22.90-24 -- Put libmvec_nonshared.a into the -devel package. (#1288738) - -* Sat Dec 05 2015 Florian Weimer - 2.22.90-23 -- Auto-sync with upstream master. - -* Thu Nov 26 2015 Carlos O'Donell - 2.22.90-22 -- The generic hidden directive support is already used for - preinit/init/fini-array symbols so we drop the Fedora-specific - patch that does the same thing. - Reported by Dmitry V. Levin - -* Thu Nov 26 2015 DJ Delorie - 2.22.90-22 -- Require glibc-static for C++ tests. -- Require gcc-c++, libstdc++-static, and glibc-static only when needed. -- Fix --without docs to not leave info files. - -* Fri Nov 20 2015 Florian Weimer - 2.22.90-21 -- Auto-sync with upstream master. - -* Wed Nov 18 2015 Florian Weimer - 2.22.90-20 -- Auto-sync with upstream master. - -* Wed Nov 18 2015 Florian Weimer - 2.22.90-19 -- Disable -Werror on s390 (#1283184). - -* Mon Nov 16 2015 Florian Weimer - 2.22.90-18 -- Auto-sync with upstream master. - -* Mon Nov 16 2015 Florian Weimer - 2.22.90-17 -- Revert temporary armhfp build fix. - -* Mon Nov 9 2015 Florian Weimer - 2.22.90-16 -- Apply temporary fix for armhfp build issue. - -* Mon Nov 09 2015 Florian Weimer - 2.22.90-15 -- Auto-sync with upstream master. - -* Tue Nov 3 2015 Florian Weimer - 2.22.90-14 -- Log uname, cpuinfo, meminfo during build (#1276636) - -* Fri Oct 30 2015 Florian Weimer - 2.22.90-13 -- Auto-sync with upstream master. - -* Fri Oct 30 2015 Florian Weimer - 2.22.90-12 -- Revert to upstream implementation of condition variables (#1229659) - -* Wed Oct 28 2015 Florian Weimer - 2.22.90-11 -- Disable valgrind test on ppc64p7, too. - -* Mon Oct 26 2015 Carlos O'Donell - 2.22.90-10 -- Disable valgrind test for ppc64. - -* Wed Oct 21 2015 Carlos O'Donell - 2.22.90-9 -- Sync with upstream master. -- Update new condvar implementation. - -* Fri Oct 9 2015 Carlos O'Donell - 2.22.90-8 -- Remove libbsd.a (#1193168). - -* Wed Sep 16 2015 Mike FABIAN - 2.22.90-7 -- Add the C.UTF-8 locale (#902094). - -* Wed Sep 16 2015 Carlos O'Donell - 2.22.90-6 -- Fix GCC 5 and -Werror related build failures. -- Fix --install-langs bug which causes SIGABRT (#1262040). - -* Fri Aug 28 2015 Carlos O'Donell - 2.22.90-5 -- Auto-sync with upstream master. - -* Thu Aug 27 2015 Carlos O'Donell - 2.22.90-4 -- Build require gcc-c++ for the C++ tests. -- Support --without testsuite option to disable testing after build. -- Support --without benchtests option to disable microbenchmarks. -- Update --with bootstrap to disable benchtests, valgrind, documentation, - selinux, and nss-crypt during bootstrap. -- Support --without werror to disable building with -Werror. -- Support --without docs to disable build requirement on texinfo. -- Support --without valgrind to disable testing with valgrind. -- Remove c_stubs add-on and enable fuller support for static binaries. -- Remove librtkaio support (#1227855). - -* Sun Aug 16 2015 Siddhesh Poyarekar - 2.22.90-3 -- Auto-sync with upstream master. - -* Fri Aug 14 2015 Siddhesh Poyarekar - 2.22.90-2 -- Remove initgroups from the default nsswitch.conf (#751450). - -* Fri Aug 14 2015 Siddhesh Poyarekar - 2.22.90-1 -- Sync with upstream master. - -* Tue Jul 28 2015 Siddhesh Poyarekar - 2.21.90-20 -- Sync with upstream master. - -* Thu Jul 23 2015 Mike FABIAN - 2.21.90-19 -- some more additions to the translit_neutral file by Marko Myllynen - -* Tue Jul 14 2015 Mike FABIAN - 2.21.90-18 -- Unicode 8.0.0 updates, including the transliteration files (#1238412). - -* Sun Jun 21 2015 Carlos O'Donell - 2.21.90-17 -- Remove all linuxthreads handling from glibc spec file. - -* Wed Jun 17 2015 Carlos O'Donell - 2.21.90-16 -- Move split out architecture-dependent header files into devel package - and keep generic variant in headers package, thus keeping headers package - content and file list identical across multilib rpms. - -* Wed Jun 17 2015 Fedora Release Engineering - 2.21.90-15.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Wed Jun 3 2015 Carlos O'Donell - 2.21.90-15 -- Remove patch to increase DTV surplus which is no longer needed after - upstream commit f8aeae347377f3dfa8cbadde057adf1827fb1d44. - -* Sat May 30 2015 Siddhesh Poyarekar - 2.21.90-14 -- Fix build failure on aarch64 (#1226459). - -* Mon May 18 2015 Siddhesh Poyarekar - 2.21.90-13 -- Sync with upstream master. -- Install new condvar implementation. - -* Fri May 08 2015 Siddhesh Poyarekar - 2.21.90-12 -- Add benchmark comparison scripts. - -* Thu May 07 2015 Siddhesh Poyarekar - 2.21.90-11 -- Auto-sync with upstream master. -- Revert arena threshold fix to work around #1209451. - -* Tue Apr 07 2015 Siddhesh Poyarekar - 2.21.90-10 -- Revert last auto-sync (#1209451). - -* Mon Apr 06 2015 Siddhesh Poyarekar - 2.21.90-9 -- Auto-sync with upstream master. - -* Tue Mar 24 2015 Siddhesh Poyarekar - 2.21.90-8 -- Auto-sync with upstream master. - -* Tue Mar 17 2015 Carlos O'Donell - 2.21.90-7 -- Use rpm.expand in scripts to reduce set of required RPM features. - -* Thu Mar 12 2015 Siddhesh Poyarekar - 2.21.90-6 -- Auto-sync with upstream master. - -* Tue Mar 3 2015 Mike Fabian - 2.21.90-5 -- Support installing only those locales specified by the RPM macro - %%_install_langs (#156477). - -* Mon Feb 23 2015 Siddhesh Poyarekar - 2.21.90-4 -- Auto-sync with upstream master. - -* Sat Feb 21 2015 Till Maas - 2.21.90-3.1 -- Rebuilt for Fedora 23 Change - https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code - -* Thu Feb 12 2015 Carlos O'Donell - 2.21.90-3 -- Fix missing clock_* IFUNCs in librtkaio. - -* Thu Feb 12 2015 Carlos O'Donell - 2.21.90-2 -- Auto-sync with upstream master. - -* Wed Feb 11 2015 Carlos O'Donell - 2.21.90-1 -- Add back x86 vDSO support. -- Fix rtkaio build to reference clock_* functions from libc. - -* Wed Jan 21 2015 Siddhesh Poyarekar - 2.20.90-20 -- Sync with upstream master. -- Disable werror on s390x. -- Revert x86 vDSO support since it breaks i686 rtkaio build. - -* Tue Jan 20 2015 Peter Robinson 2.20.90-19 -- Drop large ancient ChangeLogs (rhbz #1169546) - -* Mon Jan 12 2015 Siddhesh Poyarekar - 2.20.90-18 -- Pass address of main_arena.mutex to mutex_lock/unlock. - -* Thu Jan 08 2015 Siddhesh Poyarekar - 2.20.90-17 -- Define a __tls_get_addr macro to avoid a conflicting declaration. - -* Wed Jan 07 2015 Siddhesh Poyarekar - 2.20.90-16 -- Disable -Werror for s390 as well. - -* Wed Jan 07 2015 Siddhesh Poyarekar - 2.20.90-14 -- Sync with upstream master. -- Disable -Werror on powerpc and armv7hl. -- Temporarily disable valgrind test on ppc64. - -* Sun Dec 28 2014 Dan Horák -- valgrind available only on selected arches (missing on s390) - -* Wed Dec 10 2014 Kyle McMartin -- aarch64: Drop strchrnul.S revert, apply fix from Richard Earnshaw. - -* Fri Dec 05 2014 Carlos O'Donell - 2.20.90-13 -- Fix permission of debuginfo source files to allow multiarch - debuginfo packages to be installed and upgraded. - -* Fri Dec 05 2014 Siddhesh Poyarekar - 2.20.90-12 -- Remove LIB_LANG since we don't install locales in /usr/lib/locale anymore. -- Don't own any directories in /usr/share/locale (#1167445). -- Use the %%find_lang macro to get the *.mo files (#1167445). -- Add %%lang tags to language locale files in /usr/share/i18n/locale (#1169044). - -* Wed Dec 03 2014 Kyle McMartin - 2.20.90-11 -- aarch64: revert optimized strchrnul.S implementation (rhbz#1167501) - until it can be debugged. - -* Fri Nov 28 2014 Carlos O'Donell - 2.20.90-10 -- Auto-sync with upstream master. - -* Wed Nov 19 2014 Carlos O'Donell - 2.20.90-9 -- Sync with upstream master. - -* Wed Nov 05 2014 Siddhesh Poyarekar - 2.20.90-8 -- Make getconf return only /usr/bin (#1138835). -- Sync with upstream master. - -* Tue Nov 04 2014 Arjun Shankar - 2.20.90-7 -- Add patch that modifies several tests to use test-skeleton.c. - The patch is accepted but not yet committed upstream. - https://sourceware.org/ml/libc-alpha/2014-10/msg00744.html - -* Tue Sep 30 2014 Siddhesh Poyarekar - 2.20.90-6 -- Sync with upstream master. -- Disable more Intel TSX usage in rwlocks (#1146967). -- Enable lock elision again on s390 and s390x. -- Enable Systemtap SDT probes for all architectures (#985109). - -* Fri Sep 26 2014 Carlos O'Donell - 2.20.90-5 -- Disable lock elision support for Intel hardware until microcode - updates can be done in early bootup (#1146967). -- Fix building test tst-strtod-round for ARM. - -* Tue Sep 23 2014 Siddhesh Poyarekar - 2.20.90-4 -- Sync with upstream master. -- Don't own the common debuginfo directories (#1144853). -- Run valgrind in the %%check section to ensure that it does not break. - -* Tue Sep 16 2014 Siddhesh Poyarekar - 2.20.90-3 -- Sync with upstream master. -- Revert patch for #737223. - -* Mon Sep 08 2014 Siddhesh Poyarekar - 2.20.90-2 -- Build build-locale-archive statically again. - -* Mon Sep 08 2014 Siddhesh Poyarekar - 2.20.90-1 -- Sync with upstream master. - -* Thu Sep 4 2014 Carlos O'Donell - 2.19.90-36 -- Allow up to 32 dlopened modules to use static TLS (#1124987). -- Run glibc tests in %%check section of RPM spec file. -- Do not run tests with `-k` and fail if any test fails to build. - -* Tue Aug 26 2014 Siddhesh Poyarekar - 2.19.90-35 -- Sync with upstream master. -- Use INTERNAL_SYSCALL in TLS_INIT_TP (#1133134). -- Remove gconv loadable module transliteration support (CVE-2014-5119, #1119128). - -* Fri Aug 22 2014 Dennis Gilmore - 2.19.90-34 -- add back sss to nsswitch.conf we have added workarounds in the tools - -* Thu Aug 21 2014 Kevin Fenzi - 2.19.90-33.1 -- Rebuild for rpm bug 1131960 - -* Tue Aug 19 2014 Dennis Gilmore - 2.19.90-33 -- remove sss from default nsswitch.conf it causes issues with live image composing - -* Wed Aug 13 2014 Siddhesh Poyarekar - 2.19.90-32 -- Auto-sync with upstream master. -- Revert to only defining __extern_always_inline for g++-4.3+. -- Fix build failure in compat-gcc-32 (#186410). - -* Mon Jul 28 2014 Siddhesh Poyarekar - 2.19.90-31 -- Auto-sync with upstream master. - -* Wed Jul 23 2014 Siddhesh Poyarekar - 2.19.90-30 -- Undo last master sync to fix up rawhide. - -* Tue Jul 15 2014 Siddhesh Poyarekar - 2.19.90-29 -- Auto-sync with upstream master. - -* Sat Jul 12 2014 Tom Callaway - 2.19.90-28 -- fix license handling - -* Mon Jul 07 2014 Siddhesh Poyarekar - 2.19.90-27 -- Auto-sync with upstream master. - -* Fri Jul 04 2014 Siddhesh Poyarekar - 2.19.90-26 -- Sync with upstream roland/nptl branch. -- Improve testsuite failure outputs in build.log - -* Thu Jul 03 2014 Siddhesh Poyarekar - 2.19.90-25 -- Sync with upstream roland/nptl branch. - -* Wed Jul 02 2014 Siddhesh Poyarekar - 2.19.90-24 -- Sync with upstream master. - -* Tue Jun 24 2014 Siddhesh Poyarekar - 2.19.90-23 -- Sync with upstream master. -- Add fix to unbreak i386 ABI breakage due to a change in scalbn. - -* Fri Jun 20 2014 Kyle McMartin - 2.19.90-22 -- AArch64: Save & restore NZCV (flags) upon entry to _dl_tlsdesc_dynamic - in order to work around GCC reordering compares across the TLS - descriptor sequence (GCC PR61545.) Committing a (temporary) fix here - allows us to avoid rebuilding the world with gcc 4.9.0-11.fc21. - -* Mon Jun 16 2014 Kyle McMartin - 2.19.90-21 -- Auto-sync with upstream master. - -* Thu Jun 12 2014 Siddhesh Poyarekar - 2.19.90-20 -- Auto-sync with upstream master. - -* Sat Jun 07 2014 Fedora Release Engineering - 2.19.90-19.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Tue Jun 03 2014 Siddhesh Poyarekar - 2.19.90-19 -- Sync with upstream master. - -* Mon May 26 2014 Siddhesh Poyarekar - 2.19.90-18 -- Sync with upstream master. -- Adjust rtkaio patches to build with upstream master. - -* Wed May 21 2014 Kyle McMartin - 2.19.90-17 -- Backport some upstream-wards patches to fix TLS issues on AArch64. - -* Wed May 21 2014 Kyle McMartin - 2.19.90-16 -- AArch64: Fix handling of nocancel syscall failures (#1098327) - -* Thu May 15 2014 Siddhesh Poyarekar - 2.19.90-15 -- Sync with upstream master. - -* Wed May 14 2014 Carlos O'Donell - 2.19.90-14 -- Add support for displaying all test results in build logs. - -* Wed May 14 2014 Carlos O'Donell - 2.19.90-13 -- Add initial support for ppc64le. - -* Tue Apr 29 2014 Siddhesh Poyarekar - 2.19.90-12 -- Auto-sync with upstream master. -- Remove ports addon. - -* Fri Apr 18 2014 Siddhesh Poyarekar - 2.19.90-11 -- Sync with upstream master. - -* Thu Apr 10 2014 Siddhesh Poyarekar - 2.19.90-10 -- Sync with upstream master. - -* Thu Apr 03 2014 Siddhesh Poyarekar - 2.19.90-9 -- Sync with upstream master. - -* Wed Mar 26 2014 Siddhesh Poyarekar - 2.19.90-8 -- Sync with upstream master. - -* Wed Mar 19 2014 Siddhesh Poyarekar - 2.19.90-7 -- Sync with upstream master. -- Fix offset computation for append+ mode on switching from read (#1078355). - -* Wed Mar 12 2014 Carlos O'Donell - 2.19.90-6 -- Sync with upstream master. -- Use cleaner upstream solution for -ftree-loop-distribute-patterns (#911307). - -* Tue Mar 04 2014 Siddhesh Poyarekar - 2.19.90-5 -- Sync with upstream master. - -* Thu Feb 27 2014 Siddhesh Poyarekar - 2.19.90-4 -- Use nscd service files from glibc sources. -- Make nscd service forking in systemd service file. - -* Tue Feb 25 2014 Siddhesh Poyarekar - 2.19.90-3 -- Sync with upstream master. -- Separate ftell from fseek logic and avoid modifying FILE data (#1069559). - -* Mon Feb 24 2014 Carlos O'Donell - 2.19.90-2 -- Fix build-locale-archive failure to open default template. - -* Tue Feb 18 2014 Siddhesh Poyarekar - 2.19.90-1 -- Sync with upstream master. - -* Tue Feb 04 2014 Siddhesh Poyarekar - 2.18.90-27 -- Sync with upstream master. - -* Wed Jan 29 2014 Siddhesh Poyarekar - 2.18.90-26 -- Modify regular expressions to include powerpcle stubs-*.h (#1058258). - -* Wed Jan 29 2014 Siddhesh Poyarekar - 2.18.90-25 -- Sync with upstream master. - -* Sat Jan 25 2014 Ville Skyttä - 2.18.90-24 -- Own the %%{_prefix}/lib/locale dir. - -* Thu Jan 23 2014 Siddhesh Poyarekar - 2.18.90-23 -- Sync with upstream master. - -* Thu Jan 16 2014 Siddhesh Poyarekar - 2.18.90-22 -- Back out ftell test case (#1052846). - -* Tue Jan 14 2014 Siddhesh Poyarekar - 2.18.90-21 -- Sync with upstream master. -- Fix infinite loop in ftell when writing wide char data (#1052846). - -* Tue Jan 7 2014 Siddhesh Poyarekar - 2.18.90-20 -- Sync with upstream master. -- Enable systemtap probes on Power and S/390. - -* Fri Dec 27 2013 Siddhesh Poyarekar - 2.18.90-19 -- Sync with upstream master. - -* Fri Dec 20 2013 Siddhesh Poyarekar - 2.18.90-18 -- Sync with upstream master. - -* Wed Dec 4 2013 Siddhesh Poyarekar - 2.18.90-17 -- Sync with upstream master. - - Fix shm_open validation (#1037787); - -* Thu Nov 28 2013 Siddhesh Poyarekar - 2.18.90-16 -- Sync with upstream master. - -* Wed Nov 20 2013 Siddhesh Poyarekar - 2.18.90-15 -- Sync with upstream master. - -* Fri Nov 8 2013 Carlos O'Donell - 2.18.90-14 -- Enhance NSCD's SELinux support to use dynamic permission names (#1025126). - -* Mon Oct 28 2013 Siddhesh Poyarekar - 2.18.90-13 -- Sync with upstream master. - - Skip over unimplemented timezone format specifier in strptime (#947722). - -* Mon Oct 21 2013 Siddhesh Poyarekar - 2.18.90-12 -- Allow fill_archive to be called with NULL fname. -- Sync with upstream master. - -* Tue Oct 15 2013 Siddhesh Poyarekar - 2.18.90-11 -- Sync with upstream master. - -* Thu Oct 3 2013 Carlos O'Donell - 2.18.90-10 -- Allow applications to use pthread_atfork without explicitly - requiring libpthread.so. (#1013801) -- Support `--list-archive FILE' in localedef utility. - -* Thu Oct 3 2013 Siddhesh Poyarekar - 2.18.90-9 -- Define swap_endianness_p in build-locale-archive. - -* Wed Oct 2 2013 Carlos O'Donell - 2.18.90-8 -- Allow ldconfig cached objects previously marked as hard or soft - ABI to now become unmarked without raising an error. This works - around a binutils bug that caused objects to become unmarked. - (#1009145) - -* Tue Oct 1 2013 Siddhesh Poyarekar - 2.18.90-7 -- Fix check for PI mutex on non-x86 systems (#1007590). -- Resync with upstream master. - -* Tue Sep 24 2013 Carlos O'Donell - 2.18.90-6 -- Avoid the use of __block which is a reserved keyword for clang++ - (#1009623). - -* Mon Sep 23 2013 Siddhesh Poyarekar - 2.18.90-5 -- Resync with upstream master. - -* Sun Sep 22 2013 Carlos O'Donell - 2.18.90-4 -- Fix CVE-2013-4788: Static applications now support pointer mangling. - Existing static applications must be recompiled (#985625). - -* Wed Sep 18 2013 Patsy Franklin - 2.18.90-3 -- Fix conditional requiring specific binutils for s390/s390x. - -* Mon Sep 16 2013 Siddhesh Poyarekar - 2.18.90-2 -- Resync with upstream master. -- Fix CVE-2013-4332 (#1008299). - -* Thu Sep 5 2013 Siddhesh Poyarekar - 2.18.90-1 -- Resync with upstream master. -- Drop patch for #800224. - -* Thu Aug 29 2013 Carlos O'Donell - 2.18-6 -- Fix Power build (#997531). - -* Wed Aug 28 2013 Carlos O'Donell - 2.18-5 -- Fix indirect function support to avoid calling optimized routines - for the wrong hardware (#985342). - -* Mon Aug 26 2013 Siddhesh Poyarekar - 2.18-4 -- Initialize res_hconf in nscd. (#1000924). - -* Tue Aug 20 2013 Siddhesh Poyarekar - 2.18-3 -- Remove non-ELF support in rtkaio. -- Avoid inlining of cleanup function for kaio_suspend. -- Expand sizes of some types in strcoll (#855399, CVE-2012-4424). -- Fix tst-aiod2 and tst-aiod3 test failures (#970865). - -* Mon Aug 19 2013 Siddhesh Poyarekar - 2.18-2 -- Fix buffer overflow in readdir_r (#995841, CVE-2013-4237). -- Remove releng tarball. - -* Fri Aug 16 2013 Siddhesh Poyarekar - 2.18-1 -- Upstream release 2.18. -- Pull in systemd during build and use the tmpfilesdir macro. - -* Wed Aug 14 2013 Carlos O'Donell - 2.17.90-14 -- Update spec file to use rpm prefix everywhere. - -* Tue Aug 13 2013 Carlos O'Donell - 2.17.90-13 -- Revert `Move to /usr' transition. - -* Tue Aug 13 2013 Carlos O'Donell - 2.17.90-12 -- Complete `Move to /usr' transition. All relevant files are now - installed into `/usr'. - -* Wed Aug 07 2013 Karsten Hopp 2.17.90-11 -- rebuild with the latest rpm to fix missing ld64.so provides on PPC - -* Mon Jul 29 2013 Carlos O'Donell - 2.17.90-10 -- Fix missing libbsd.a in debuginfo packages. - -* Mon Jul 29 2013 Siddhesh Poyarekar - 2.17.90-9 -- Fix strcoll flaws (#855399, CVE-2012-4412, CVE-2012-4424). - -* Mon Jul 29 2013 Siddhesh Poyarekar - 2.17.90-8 -- Resync with upstream master. -- Disable pt_chown (CVE-2013-2207). - -* Thu Jul 25 2013 Carlos O'Donell - 2.17.90-7 -- Correctly name the 240-bit slow path sytemtap probe slowpow_p10 for slowpow. - -* Wed Jul 24 2013 Carlos O'Donell - 2.17.90-6 -- Add build requirement on static libstdc++ library to fix testsuite failures - for static C++ tests. - -* Fri Jul 12 2013 Siddhesh Poyarekar - 2.17.90-5 -- Enable lock elision support (#982363). -- Depend on systemd instead of systemd-units (#983760). - -* Tue Jul 9 2013 Siddhesh Poyarekar - 2.17.90-4 -- Resync with upstream master. - -* Thu Jun 20 2013 Siddhesh Poyarekar - 2.17.90-3 -- Resync with upstream master. - -* Tue Jun 11 2013 Remi Collet - 2.17.90-2 -- rebuild for new GD 2.1.0 - -* Tue Jun 4 2013 Siddhesh Poyarekar - 2.17.90-1 -- Resync with upstream master. - -* Tue May 14 2013 Siddhesh Poyarekar - 2.17-9 -- Avoid crashing in LD_DEBUG when program name is unavailable (#961238). - -* Sun May 5 2013 Patsy Franklin - 2.17-8 -- Fix _nl_find_msg malloc failure case, and callers. (#959034). - -* Tue Apr 23 2013 Patsy Franklin - 2.17-7 -- Test init_fct for NULL, not result->__init_fct, after demangling (#952799). - -* Tue Apr 23 2013 Patsy Franklin - 2.17-6 -- Increase limits on xdr name and record requests (#892777). -- Consistently MANGLE/DEMANGLE init_fct, end_fct and btow_fct (#952799). - -* Thu Mar 28 2013 Siddhesh Poyarekar - 2.17-5 -- Don't add input group during initgroups_dyn in hesiod (#921760). - -* Sun Mar 17 2013 Carlos O'Donell - 2.17-4 -- Fixed i386 glibc builds (#917161). -- Fixed multibyte character processing crash in regexp (#905877, CVE-2013-0242) - -* Wed Feb 27 2013 Carlos O'Donell - 2.17-3 -- Renamed release engineering directory to `releng' (#903754). -- Fix building with gcc 4.8.0 (#911307). - -* Thu Feb 7 2013 Carlos O'Donell - 2.17-2 -- Fix ownership of /usr/lib[64]/audit (#894307). -- Support unmarked ARM objects in ld.so.cache and aux cache (#905184). - -* Tue Jan 1 2013 Jeff Law - 2.17-1 -- Resync with official glibc-2.17 release -* Fri Dec 21 2012 Jeff Law - 2.16.90-40 -- Resync with master - -* Wed Dec 19 2012 Jeff Law - 2.16.90-39 -- Add rtld-debugger-interface.txt as documentation. (#872242) - -* Fri Dec 7 2012 Jeff Law - 2.16.90-38 -- Resync with master -- Drop patch for 731228 that is no longer needed. - -* Thu Dec 6 2012 Jeff Law - 2.16.90-37 -- Resync with master -- Patch for 697421 has been submitted upstream. -- Drop local patch for 691912 that is no longer needed. - -* Mon Dec 3 2012 Jeff Law - 2.16.90-36 -- Resync with master -- Drop local patch for 657588 that is no longer needed. -- Drop local patch for 740682 that is no longer needed. -- Drop local patch for 770439 that is no longer needed. -- Drop local patch for 789209 that is no longer needed. -- Drop local patch for nss-files-overflow that seems - useless. -- Drop localedata-locales-fixes as they were rejected - upstream. -- Drop test-debug-gnuc-hack.patch that seems useless now. -- Repack patchlist. - -* Fri Nov 30 2012 Jeff Law - 2.16.90-35 -- Resync with master (#882137). -- Remove local patch for strict-aliasing warnings that - is no longer needed. -- Remove local patch for 730856 that is no longer needed. -- Repack patchlist. - -* Thu Nov 29 2012 Jeff Law - 2.16.90-34 -- Remove local patch which "temporarily" re-added currences - obsoleted by the Euro. -- Remove hunks from strict-aliasing patch that are no longer - needed. - -* Thu Nov 29 2012 Jeff Law - 2.16.90-33 -- Resync with master. -- Drop local patch for 788989. -- Repack patchlist. - -* Wed Nov 28 2012 Jeff Law - 2.16.90-32 -- Resync with master. -- Drop local patch for 878913. -- Drop local patch for 880666. -- Drop local patch for 767693. -- Repack patchlist. - -* Tue Nov 27 2012 Siddhesh Poyarekar - 2.16.90-31 -- Ensure that hashtable size is greater than 3 (#878913). -- fwrite returns 0 on EOF (#880666). - -* Mon Nov 26 2012 Jeff Law - 2.16.90-30 -- Resync with upstream sources -- Drop local patch for getconf. -- Repack patchlist. - -* Fri Nov 16 2012 Jeff Law - 2.16.90-29 -- Rsync with upstream sources -- Drop local patches for 803286, 791161, 790292, 790298 - -* Wed Nov 7 2012 Jeff Law - 2.16.90-28 -- Resync with upstream sources (#873397) - -* Mon Nov 5 2012 Jeff Law - 2.16.90-27 -- Resync with upstream sources. -- Don't use distinct patches for 770869, 787201 and 688948 - as they all modify stuff under fedora/ -- Repack patchlist - -* Thu Nov 1 2012 Jeff Law - 2.16.90-26 -- Resync with upstream sources (#872336) - -* Mon Oct 22 2012 Jeff Law - 2.16.90-25 -- Rsync with upstream sources -- Drop 864820 patch as now that it's upstream. -- Add sss to /etc/nsswitch.conf (#867473) - -* Thu Oct 11 2012 Jeff Law - 2.16.90-24 -- Rsync with upstream sources -- Drop local 552960-2 patch now that it's upstream. -- Drop local 858274 patch now that the root problem is fixed upstream. -- Repack patchlist. - -* Wed Oct 10 2012 Siddhesh Poyarekar - 2.16.90-23 -- Fix Marathi names for Wednesday, September and October (#rh864820). - -* Fri Oct 5 2012 Jeff Law - 2.16.90-22 -- Resync with upstream sources -- Drop local 552960 patch now that it's upstream -- Drop local stap patch now obsolete -- Drop local s390 patch which avoided problems with old assemblers -- Drop old fortify source patch to deal with old compilers - -* Thu Oct 4 2012 Siddhesh Poyarekar - 2.16.90-21 -- Take mutex in cleanup only if it is not already taken. - -* Tue Oct 2 2012 Jeff Law - 2.16.90-20 -- Resync with upstream sources. -- Repack patchlist. - -* Mon Oct 1 2012 Jeff Law - 2.16.90-19 -- Resync with upstream sources to pick up fma fixes - -* Fri Sep 28 2012 Jeff Law - 2.16.90-18 -- Resync with upstream sources. -- Drop fedora-cdefs-gnuc.patch, it's not needed anymore. -- Drop fedora-gai-rfc1918.patch, it's upstream now. -- Drop fedora-localedata-no_NO.patch, it was supposed to be - temporary -- that was back in 2003. This should have been - sorted out long ago. We'll just have to deal with the - fallout. -- Drop fedora-vfprintf-sw6530.patch, it's upstream now. -- Drop rh769421.patch; Siddhesh has fixed this properly with 552960. - -* Fri Sep 28 2012 Siddhesh Poyarekar - 2.16.90-17 -- Release mutex before going back to wait for PI mutexes (#552960). - -* Tue Sep 25 2012 Jeff Law - 2.16.90-16 -- Resync with upstream sources. - -* Fri Sep 21 2012 Jeff Law - 2.16.90-15 -- Remove most of fedora-nscd patch as we no longer use the - old init files, but systemd instead. -- Remove path-to-vi patch. With the usr-move changes that - patch is totally unnecessary. -- Remove i686-nopl patch. Gas was changed back in 2011 to - avoid nopl. -- Move gai-rfc1918 patch to submitted upstream status - -* Fri Sep 21 2012 Jeff Law - 2.16.90-14 -- Revert patch for 816647, it's blatently broken. - -* Fri Sep 21 2012 Siddhesh Poyarekar - 2.16.90-13 -- Bring back byteswap-16.h (#859268). - -* Thu Sep 20 2012 Jeff Law - 2.16.90-12 -- Revert recent upstream strstr changes (#858274) -- Demangle function pointers before testing them (#816647) -- Remove handling of /etc/localtime and /var/spool/postfix/etc/localtime - as systemd will be handling them from now on (#858735). - -* Fri Sep 14 2012 Jeff Law - 2.16.90-11 -- Resync with upstream sources (#857236). - -* Sat Sep 8 2012 Peter Robinson - 2.16.90-10 -- Enable ports to fix FTBFS on ARM - -* Wed Sep 5 2012 Jeff Law - 2.16.90-9 -- Resync with upstream sources. - -* Tue Sep 4 2012 Jeff Law - 2.16.90-8 -- Incorporate ppc64p7 arch changes (#854250) - -* Thu Aug 30 2012 Jeff Law - 2.16.90-7 -- Resync with upstream sources. - -* Wed Aug 22 2012 Jeff Law - 2.16.90-6 -- Resync with upstream sources. - -* Tue Aug 21 2012 Jeff Law - 2.16.90-5 -- Replace manual systemd scriptlets with macroized scriptlets (#850129) - -* Mon Aug 20 2012 Jeff Law - 2.16.90-4 -- Move /etc/localtime into glibc-common package since glibc-common - owns the scriptlets which update it. - -* Mon Aug 20 2012 Jeff Law - 2.16.90-3 -- Remove obsolete patches from glibc-fedora.patch. Explode - remaining patches into distinct patchfiles. Thanks to - Dmitry V. Levin for identifying them! - Drop ia64 specific patches and specfile fragments - -* Wed Aug 15 2012 Jeff Law - 2.16.90-2 -- Fix integer overflow leading to buffer overflow in strto* (#847718) - -* Mon Aug 13 2012 Jeff Law - 2.16.90-1 -- Resync with upstream sources, drop obsolete patches. -- Drop glibc-ports bits as they're part of the master - sources now. - -* Mon Aug 13 2012 Jeff Law - 2.16-9 -- Replace patch for 179072 with official version from upstream. - -* Fri Aug 10 2012 Jeff Law - 2.16-8 -- Replace patch for 789238 with official version from upstream. - -* Wed Jul 25 2012 Jeff Law - 2.16-7 -- Pack IPv4 servers at the start of nsaddr_list and - only track the number of IPV4 servers in EXT(statp->nscounti (#808147) -- Mark set*uid, set*gid as __wur (warn unused result) (#845960) - -* Wed Jul 25 2012 Jeff Law - 2.16-6 -- Revert patch for BZ696143, it made it impossible to use IPV6 - addresses explicitly in getaddrinfo, which in turn broke - ssh, apache and other code. (#808147) -- Avoid another unbound alloca in vfprintf (#841318) -- Remove /etc/localtime.tzupdate in lua scriptlets -- Revert back to using posix.symlink as posix.link with a 3rd - argument isn't supported in the lua version embedded in rpm. -- Revert recent changes to res_send (804630, 835090). -- Fix memcpy args in res_send (#841787). - -* Thu Jul 19 2012 Fedora Release Engineering - 2.16-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Thu Jul 5 2012 Jeff Law - 2.16-2 -- Use posix.link rather than posix.symlink in scriptlet to - update /etc/localtime (#837344). - -* Mon Jul 2 2012 Jeff Law - 2.16-1 -- Resync with upstream glibc-2.16 release. - -* Fri Jun 22 2012 Jeff Law - 2.15.90-16 -- Resync with upstream sources, drop obsolete patch. - -* Thu Jun 21 2012 Jeff Law - 2.15.90-15 -- Resync with upstream sources (#834447). -- Fix use-after-free in dcigettext.c (#816647). - -* Fri Jun 15 2012 Jeff Law - 2.15.90-14 -- Resync with master. - -* Thu Jun 14 2012 Jeff Law - 2.15.90-13 -- Delay setting DECIDED field in locale file structure until - we have read the file's data (#827510). - -* Mon Jun 11 2012 Dennis Gilmore - 2.15.90-12 -- actually apply the arm linker hack - -* Mon Jun 11 2012 Dennis Gilmore - 2.15.90-11 -- only deal with the arm linker compat hack on armhfp arches -- armsfp arches do not have a linker change -- Backward compat hack for armhf binaries. - -* Thu Jun 7 2012 Jeff Law - 2.15.90-10 -- Fix parsing of /etc/sysconfig/clock when ZONE has spaces. (#828291) - -* Tue Jun 5 2012 Jeff Law - 2.15.90-9 -- Resync with upstream sources, drop unnecessary patches. -- Fix DoS in RPC implementation (#767693) -- Remove deprecated alpha support. -- Remove redundant hunk from patch. (#823905) - -* Fri Jun 1 2012 Patsy Franklin - 2.15.90-8 -- Fix iconv() segfault when the invalid multibyte character 0xffff is input - when converting from IBM930 (#823905) - -* Fri Jun 1 2012 Jeff Law - 2.15.90-7 -- Resync with upstream sources. (#827040) - -* Thu May 31 2012 Patsy Franklin - 2.15.90-6 -- Fix fnmatch() when '*' wildcard is applied on a file name containing - multibyte chars. (#819430) - -* Wed May 30 2012 Jeff Law - 2.15.90-5 -- Resync with upstream sources, drop unnecessary patches. - -* Tue May 29 2012 Jeff Law - 2.15.90-4 -- Build info files in the source dir, then move to objdir - to avoid multilib conflicts (#825061) - -* Fri May 25 2012 Jeff Law - 2.15.90-3 -- Work around RPM dropping the contents of /etc/localtime - when it turns into a symlink with %post common script (#825159). - -* Wed May 23 2012 Jeff Law - 2.15.90-2 -- Fix option rotate when one IPV6 server is enabled (#804630) -- Reenable slow/uberslow path taps slowpow/slowexp. - -* Wed May 23 2012 Jeff Law - 2.15.90-1 -- Resync with upstream sources, drop unnecessary patches. - -* Tue May 22 2012 Patsy Franklin - 2.15-41 -- Fix tzdata trigger (#822200) -- Make the symlink relative rather than linking into the buildroot (#822200). -- Changed /etc/localtime to a symlink. 8222000 (#822200) - -* Tue May 15 2012 Jeff Law - 2.15-40 -- Update to upstream patch for 806070 (#806070) - -* Mon May 14 2012 Jeff Law - 2.15-39 -- Update upstream patch for AVX testing (#801650) - -* Fri May 11 2012 Jeff Law - 2.15-38 -- Upstream patch to fix AVX testing (#801650) - -* Thu May 10 2012 Jeff Law - 2.15-37 -- Try again to fix AVX testing (#801650) - -* Mon May 7 2012 Jeff Law - 2.15-36 -- Improve fortification disabled warning. -- Change location of dynamic linker for armhf. - -* Mon Apr 30 2012 Jeff Law - 2.15-35 -- Implement context routines for ARM (#817276) - -* Fri Apr 13 2012 Jeff Law - 2.15-34 -- Issue a warning if FORTIFY_CHECKING is requested, but disabled. - -* Thu Apr 12 2012 Jeff Law - 2.15-33 -- Fix another unbound alloca in nscd groups (#788989) - -* Tue Apr 3 2012 Jeff Law - 2.15-32 -- Fix first day of week for lv_LV (#682500) - -* Mon Apr 2 2012 Jeff Law - 2.15-31 -- When retrying after main arena failure, always retry in a - different arena. (#789238) - -* Tue Mar 27 2012 Jeff Law - 2.15-30 -- Avoid unbound alloca usage in *-crypt routines (#804792) -- Fix data race in nscd (#806070) - -* Fri Mar 23 2012 Jeff Law - 2.15-29 -- Fix typo in __nss_getent (#806403). - -* Wed Mar 14 2012 Jeff Law - 2.15-28 -- Add doi_IN, sat_IN and mni_IN to SUPPORTED locals (#803286) -- Add stap probes in slowpow and slowexp. - -* Fri Mar 09 2012 Jeff Law - 2.15-27 -- Fix AVX checks (#801650) - -* Wed Feb 29 2012 Jeff Law - 2.15-26 -- Set errno properly in vfprintf (#794797) -- Don't kill application when LD_PROFILE is set. (#800224) - -* Wed Feb 29 2012 Jeff Law - 2.15-25 -- Fix out of bounds memory access in resolver (#798471) -- Always mark vDSO as used (#758888) - -* Fri Feb 24 2012 Jeff Law - 2.15-24 -- Fix bogus underflow (#760935) -- Correctly handle dns request where large numbers of A and AAA records - are returned (#795498) -- Fix nscd crash when group has many members (#788989) - -* Mon Feb 20 2012 Jeff Law - 2.15-23 -- Avoid "nargs" integer overflow which could be used to bypass FORTIFY_SOURCE (#794797) - -* Mon Feb 20 2012 Jeff Law - 2.15-22 -- Fix main arena locking in malloc/calloc retry path (#789238) - -* Fri Feb 17 2012 Jeff Law - 2.15-21 -- Correctly identify all 127.x.y.z addresses (#739743) -- Don't assign native result if result has no associated interface (#739743) - -* Fri Feb 17 2012 Jeff Law - 2.15-20 -- Ignore link-local IPV6 addresses for AI_ADDRCONFIG (#697149) - -* Fri Feb 17 2012 Jeff Law - 2.15-19 -- Fix reply buffer mismanagement in resolver (#730856) - -* Thu Feb 16 2012 Jeff Law - 2.15-18 -- Revert 552960/769421 changes again, still causing problems. -- Add doi_IN (#791161) -- Add sat_IN (#790292) -- Add mni_IN (#790298) - -* Thu Feb 9 2012 Jeff Law - 2.15-17 -- Fix lost wakeups in pthread_cond_*. (#552960, #769421) -- Clarify info page for snprintf (#564528) -- Fix first_weekday and first_workday for ru_UA (#624296) - -* Tue Feb 7 2012 Jeff Law - 2.15-16 -- Fix currency_symbol for uk_UA (#789209) -- Fix weekday names in Kashmiri locale (#770439) - -* Tue Feb 7 2012 Jeff Law - 2.15-15 -- Remove change for 787662, correct fix is in gcc. - -* Mon Feb 6 2012 Jeff Law - 2.15-13 -- More accurately detect if we're in a chroot (#688948) - -* Fri Feb 3 2012 Jeff Law - 2.15-12 -- Add fedfs to /etc/rpc (#691912) -- Run nscd in the foreground w/ syslogging, fix systemd config (#770869) -- Avoid mapping past end of shared object (#741105) -- Turn off -mno-minimal-toc on PPC (#787201) -- Remove hunk from glibc-rh657588.patch that didn't belong - -* Wed Feb 1 2012 Jeff Law - 2.15-8 -- Prevent erroneous inline optimization of initfini.s on PowerPC64 (#783979) -- Use upstream variant of fix for 740506. -- Fix month abbreviations for zh_CN (#657588) - -* Sun Jan 29 2012 Jeff Law - 2.15-7 -- Sort objects before relocations (sw#13618) -- Fix bogus sort code that was copied from dl-deps.c. - -* Thu Jan 26 2012 Jeff Law - 2.15-6 -- First argument to settimeofday can be null (#740682) -- Add aliases for ISO-10646-UCS-2 (#697421) - -* Tue Jan 24 2012 Jeff Law - 2.15-4 -- Update ports from master. -- Fix first workday/weekday for it_IT (#622499) -- Fix type to uint16_t based on upstream comments (729661) -- Do not cache negative results in nscd if these are transient (#784402) - -* Mon Jan 23 2012 Jeff Law - 2.15-3 -- Fix cycle detection (#729661) -- Fix first workday/weekday for it_IT (#446078) -- Fix first workday/weekday for ca_ES (#454629) - -* Fri Jan 13 2012 Fedora Release Engineering - 2.15-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Sun Jan 1 2012 Jeff Law - 2.15-1.fc17 -- Update from master (a316c1f) - -* Thu Dec 22 2011 Jeff Law - 2.14.90-26.fc17 -- Update from master (16c6f99) -- Fix typo in recent tzfile change (#769476) -- Make MALLOC_ARENA_MAX and MALLOC_ARENA_TEST match documentation (#740506) -- Revert "fix" to pthread_cond_wait (#769421) -- Extract patch for 730856 from fedora-patch into a distinct patchfile - -* Mon Dec 19 2011 Jeff Law - 2.14.90-25.fc17 -- Update from master (a4647e7). - -* Sun Dec 18 2011 Jeff Law - 2.14.90-24.fc16.3 -- Check values from TZ file header (#767696) -- Handle EAGAIN from FUTEX_WAIT_REQUEUE_PI (#552960) -- Add {dist}.# -- Correct return value from pthread_create when stack alloction fails. - (#767746) - -* Wed Dec 7 2011 Jeff Law - 2.14.90-23 -- Fix a wrong constant in powerpc hypot implementation (#750811) - #13534 in python bug database - #13472 in glibc bug database -- Truncate time values in Linux futimes when falling back to utime - -* Mon Dec 5 2011 Jeff Law - 2.14.90-22 -- Mark fortified __FD_ELT as extension (#761021) -- Fix typo in manual (#708455) - -* Wed Nov 30 2011 Jeff Law - 2.14.90-21 -- Don't fail in makedb if SELinux is disabled (#750858) -- Fix access after end of search string in regex matcher (#757887) - -* Mon Nov 28 2011 Jeff Law - 2.14.90-20 -- Drop lock before calling malloc_printerr (#757881) - -* Fri Nov 18 2011 Jeff Law - 2.14.90-19 -- Check malloc arena atomically (BZ#13071) -- Don't call reused_arena when _int_new_arena failed (#753601) - -* Wed Nov 16 2011 Jeff Law - 2.14.90-18 -- Fix grouping and reuse other locales in various locales (BZ#13147) - -* Tue Nov 15 2011 Jeff Law - 2.14.90-17 -- Revert bogus commits/rebasing of Nov 14, Nov 11 and Nov 8. Sources - should be equivalent to Fedora 16's initial release. - -* Wed Oct 26 2011 Fedora Release Engineering - 2.14.90-15 -- Rebuilt for glibc bug#747377 - -* Wed Oct 19 2011 Jim Meyering - 2.14.90-14 -- Revert the upstream patch that added the leaf attribute, since it - caused gcc -O2 to move code past thread primitives and sometimes - even out of critical sections. See http://bugzilla.redhat.com/747377 - -* Wed Oct 19 2011 Andreas Schwab - 2.14.90-13 -- Update from master - - Fix linkage conflict with feraiseexcept (#746753) - - More libm optimisations - -* Mon Oct 17 2011 Andreas Schwab - 2.14.90-12 -- Update from master - - Correctly handle missing initgroups database (#745675) - - Optimize many libm functions - - Optimize access to isXYZ and toXYZ tables - - Optimized memcmp and wmemcmp for x86-64 and x86-32 - - Add parameter annotation to modf (BZ#13268) - - Support optimized isXXX functions in C++ code - - Check for zero size in memrchr for x86_64 (#745739) - - Optimized memchr, memrchr, rawmemchr for x86-32 - -* Tue Oct 11 2011 Andreas Schwab - 2.14.90-11 -- Update from master - - Clean up locarchive mmap reservation code - - Fix netname2host (BZ#13179) - - Fix remainder (NaN, 0) (BZ#6779, BZ#6783) - - S/390: Fix longlong.h inline asms for zarch - - Improve 64 bit memchr, memrchr, rawmemchr with SSE2 - - Update translations - - Implement caching of netgroups in nscd - - Handle OOM in NSS - - Don't call ifunc functions in trace mode -- Convert tzdata-update to lua (#729796) -- Horrible workaround for horribly broken software (#737223) - -* Wed Sep 28 2011 Andreas Schwab - 2.14.90-10 -- Update from master - - Correctly reparse group line after enlarging the buffer (#739360) - - Fix parse error in bits/mathinline.h with --std=c99 (#740235) -- Update nscd service file (#740284) -- Drop nscd init file (#740196) - -* Fri Sep 16 2011 Andreas Schwab - 2.14.90-9 -- Update from master - - Define IP_MULTICAST_ALL (BZ#13192) - - Add fmax and fmin inlines for x86-64 - - Avoid race between {,__de}allocate_stack and __reclaim_stacks - during fork (#737387) - - Optimized lrint and llrint for x86-64 - - Also relocate in dependency order when doing symbol dependency - testing (#737459) - - Optimize logb code for 64-bit machines - - Fix jn precision (BZ#11589) - - Fix boundary conditions in scanf (BZ#13138) - - Don't lock string streams in stream cleanup code (BZ#12847) - - Define ELFOSABI_GNU - - Fix lround loss of precision - - Add range checking for FD_SET, FD_CLR, and FD_ISSET -- Make sure AVC thread has capabilities - -* Thu Sep 8 2011 Andreas Schwab - 2.14.90-8 -- Update from master - - Use O_CLOEXEC when loading objects and cache in ld.so (BZ#13068) - - Fix memory leak in case of failed dlopen (BZ#13123) - - Optimizations for POWER - - Prefer real syscalls instead of vsyscalls on x86-64 outside libc.so - - Add Atom-optimized strchr and strrchr for x86-64 - - Try shell in posix_spawn* only in compat mode (BZ#13134) - - Fix glob.h header by removing gcc 1.x support (BZ#13150) - - Optimized strchr and strrchr with SSE2 on x86-32 - - Add optimized x86 wcscmp - - Fixes and optimizations for 32-bit sparc fabs - - Fix nptl semaphore cleanup invocation - - Sanitize HWCAP_SPARC_* defines/usage, and add new entries - -* Thu Sep 1 2011 Andreas Schwab - 2.14.90-7 -- Update from master - - Relocate objects in dependency order (#733462) -- Avoid assertion failure when first DNS answer was empty (#730856) -- Don't treat tls_offset == 1 as forced dynamic (#731228) - -* Wed Aug 24 2011 Andreas Schwab - 2.14.90-6 -- Update from master - - Correct cycle detection during dependency sorting - - Use ifuncs for time and gettimeofday on x86-64 - - Fix fopen (non-existing-file, "re") errno - - Fix CFI info in x86-64 trampolines for non-AVX code - - Build libresolv with SSP flags - - Avoid executable stack in makedb (#731063) - - Align x86 TCB to 64 bytes (cache line size), important for Atom - -* Mon Aug 15 2011 Andreas Schwab - 2.14.90-5 -- Update from master - - Implement LD_DEBUG=scopes - - Locale-independent parsing in libintl (#726536) - - Fix stack alignment on x86_64 (#728762) - - Implement scandirat function - -* Tue Aug 9 2011 Andreas Schwab - 2.14.90-4 -- Update from master - - Properly tokenize nameserver line for servers with IPv6 address - - Fix encoding name for IDN in getaddrinfo (#725755) - - Fix inline strncat/strncmp on x86 - - Define SEEK_DATA and SEEK_HOLE - - Define AF_NFC and PF_NFC - - Update ptrace constants - - Add read barriers in cancellation initialization - - Add read barrier protecting DES initialization - - Fix overflow bug in optimized strncat for x86-64 - - Check for overflows in expressions (BZ#12852) - - Fix check for AVX enablement (#720176, BZ#13007) - - Force La_x86_64_ymm to be 16-byte aligned - - Add const attr to gnu_dev_{major,minor,makedev} -- Filter out GLIBC_PRIVATE symbols again - -* Wed Jul 20 2011 Andreas Schwab - 2.14.90-3 -- Update from master - - S/390: Don't use r11 in INTERNAL_VSYSCALL_NCS macro - - Avoid warning in nscd config file parsing code - - Improve 64 bit strcat functions with SSE2/SSSE3 - - Fix alloca accounting in strxfrm - - Avoid possible crashes in anormal nscd exits - - Updated Swedish and Dutch translations - -* Thu Jul 14 2011 Andreas Schwab - 2.14.90-2 -- Update from master - - Generalize framework to register monitoring of files in nscd - - Handle ext4 in {,f}pathconf - - Handle Lustre filesystem (BZ#12868) - - Handle W; without long options in getopt (BZ#12922) - - Change error code for underflows in strtod (BZ#9696) - - Fix handling of chained netgroups - - Optimize long-word additions in SHA implementation - - Handle nscd negtimeout==0 - - nss_compat: query NIS domain only when needed - - Fix robust mutex handling after fork - - Make sure RES_USE_INET6 is always restored -- Add systemd configuration for nscd -- Be more careful running build-locale-archive - -* Thu Jun 30 2011 Andreas Schwab - 2.14.90-1 -- Update from master - - Fix quoting in some installed shell scripts (BZ#12935) - - Fix missing .ctors/.dtors lead word in soinit - - Improved st{r,p}{,n}cpy for SSE2 and SSSE3 on x86 - - Avoid __check_pf calls in getaddrinfo unless really needed - (BZ#12907) - - Rate limit expensive _SC_NPROCESSORS_ONLN computation - - Add initgroups lookup support to getent - - Reenable nss_db with a completely new implementation - - Rewrite makedb to avoid using db library - - Add pldd program -- Obsolete nss_db -- Don't build tzdata-update and build-locale-archive statically - -* Tue Jun 28 2011 Andreas Schwab - 2.14-4 -- Update from 2.14 branch - - Fix crash in GB18030 encoder (#712901) -- Fix more bugs in GB18030 charmap -- Don't use gethostbyaddr to determine canonical name - -* Tue Jun 21 2011 Andreas Schwab - 2.14-3 -- Update from 2.14 branch - - Fix typo in recent resolver change which causes segvs (#710279) - - Fix memory leak in getaddrinfo (#712178) - - Fix for C++ (BZ#12841) - - Assume Intel Core i3/i5/i7 processor if AVX is available -- Filter results from gethostbyname4_r according to request flags - (#711827) -- Repair GB18030 charmap (#712901) -- Revert "Use .machine to prevent AS from complaining about z9-109 - instructions in iconv modules" (#711330) - -* Fri Jun 3 2011 Andreas Schwab - 2.14-2 -- Revert "Handle DNS server failures in case of AF_UNSPEC lookups - correctly" (#710279) - -* Tue May 31 2011 Andreas Schwab - 2.14-1 -- Update to 2.14 release - - Handle DNS server failures in case of AF_UNSPEC lookups correctly - (BZ#12684) - - Prevent loader from loading itself - - Restore _res correctly (BZ#12350) - - Interpret numeric values in shadow file as signed (BZ#11099) - - Recognize use-vc option in resolv.conf (BZ#11558) - - Mark malloc hook variables as deprecated - - Declare malloc hook variables as volatile (BZ#11781) - - Don't document si_code used for raise (BZ#11799) - - Fix unnecessary overallocation due to incomplete character (BZ#12811) - - Handle failure of _nl_explode_name in all cases - - Add support for time syscall in vDSO (BZ#12813) - - Add sendmmsg and setns syscalls - - Use getcpu definition from vDSO on x86-64 (BZ#12813) -- Don't free non-malloced memory and fix memory leak (#709267) - -* Fri May 27 2011 Andreas Schwab - 2.13.90-14 -- Update from master - - Fix conversion to ISO-2022-JP-2 with ISO-8859-7 designation - (BZ#12814) - - Undo accidental change in x86-64 user.h - - Update Japanese translation - - Define RLIMIT_RTTIME (BZ#12795) - - Update longlong.h from GCC - - Add a few more alloca size checks (BZ#12671) - - Fix flags parameter value passed to pltenter and pltexit - - Define CLOCK_REALTIME_ALARM and CLOCK_BOOTTIME_ALARM - - Always fill output buffer in XPG strerror function (BZ#12782) - - Nicer output for negative error numbers in strerror_r - - Fix CP1258 conversion (BZ#12777) - - Fix handling of LC_CTYPE in locale name handling (BZ#12788) - - Set stream errors in more cases (BZ#12792) - - Don't unconditionally use alloca in gaih_inet (BZ#11869) - - Update documentation in regex.h (BZ#11857) - - Prevent Altivec and VSX insns on PowerPC64 when no FPRs or VRs are - available - - Fix typo in x86-64 powl (BZ#12775) -- Avoid overriding CFLAGS (#703880) - -* Wed May 18 2011 Andreas Schwab - 2.13.90-13 -- Update from master - - Update GB18030 to 2005 version (BZ#11837) - - Update RE_SYNTAX*_AWK constants in regex.h - - Handle long variable names in putenv (BZ#11892) - - Fix test for error_one_per_line mode in error (BZ#12766) - - Cleanup x86-64 sys/user.h (BZ#11820) - - Several locale data updates (BZ#11987, BZ#9732, BZ#9730, BZ#4357, - BZ#12582) - - Avoid potential deadlock in mtrace (BZ#6420) - - Fix a few problems in fopen and freopen - - Provide more helpful error message in getopt (BZ#7101) - - Make stack canary value harder to read through read overflow (BZ#10149) - - Use mmap for allocation of buffers used for __abort_msg (BZ#11901) - - Fix handling of static TLS in dlopen'ed objects (BZ#12453) - - Fix initialization of optimization values for AIO (BZ#12083) - - Fix handling of conversion problem in CP932 module (BZ#12601) - - Fix potential problem with out-of-scope buffer (BZ#12626) - - Handle recursive calls in backtrace better (BZ#12432) - - Fix handling of incomplete character storage in state - - Fix file descriptor position after fclose (BZ#12724) -- Reinstall NIS RPC headers - -* Fri May 13 2011 Andreas Schwab - 2.13.90-12 -- Update from master - - Fix resizing table for unique symbols when adding symbol for copy - relocation (BZ#12511) - - Fix sched_setscheduler call in spawn implementation (BZ#12052) - - Report write error in addmnt even for cached streams (BZ#12625) - - Translate kernel error into what pthread_create should return - (BZ#386) - - More configurability for secondary group lookup (BZ#11257) - - Several locale data updates (BZ#11258, BZ#11487, BZ#11532, - BZ#11578, BZ#11653, BZ#11668, BZ#11945, BZ#11947, BZ#12158, - BZ#12200, BZ#12178, BZ#12178, BZ#12346, BZ#12449, BZ#12545, - BZ#12551, BZ#12611, BZ#12660, BZ#12681, BZ#12541, BZ#12711, - BZ#12738) - - Fix Linux getcwd for long paths (BZ#12713) - - static tls memory leak on TLS_DTV_AT_TP archs - - Actually undefine ARG_MAX from - - Backport BIND code to query name as TLD (BZ#12734) - - Allow $ORIGIN to reference trusted directoreis in SUID binaries - (BZ #12393) - - Add missing {__BEGIN,__END}_DECLS to sys/sysmacros.h - - Report if no record is found by initgroups in nss_files -- Never leave $ORIGIN unexpanded -- Revert "Ignore origin of privileged program" -- Reexport RPC interface - -* Thu May 5 2011 Andreas Schwab - 2.13.90-11 -- Update from master - - Don't use removed rpc headers -- Install rpc/netdb.h again - -* Wed May 4 2011 Andreas Schwab - 2.13.90-10 -- Update from master - - ldconfig: don't crash on empty path in config file (#699784) - - getaddrinfo(AF_INET6) does not return scope_id info provided by - NSS modules (BZ#12714) - - Fix pathconf(_PC_BUF_SIZE) (BZ#12723) - - Fix getnameinfo flags parameter type (BZ#12717) - - Add finer grained control for initgroups lookups to NSS - - Use all possible bytes from fopen mode string (BZ#12685, #698025) - - Define initgroups callback for nss_files - - elf.h: Define R_ARM_IRELATIVE reloc type - - Fix static linking with checking x86/x86-64 memcpy (BZ#12653) - - Fix POWER4/POWER7 optimized strncmp to not read past differing bytes - - Fix FPU context handling in getcontext on x86-64 (BZ#12420) - - Skip extra zeroes when searching auxv on s390 - - Obsolete RPC implementation in libc - - Fix memory leak in TLS of loaded objects (BZ#12650) - - Don't leave empty element in rpath when skipping an element - - Make ppc sync_file_range cancelable - - Maintain stack alignment in ____longjmp_chk on x86_64 - -* Thu Apr 7 2011 Andreas Schwab - 2.13.90-9 -- Update from master - - Fix typo in cache information table for x86-{32,64} - - Define CLOCK_BOOTTIME, O_PATH, AT_EMPTY_PATH - - Work around old buggy program which cannot cope with memcpy - semantics (BZ#12518) - - Fix visibility of declarations of wcpcpy and wcpncpy (BZ#12631) - - Add clock_adjtime, name_to_handle_at, open_by_handle_at, syncfs - syscalls - - Really implement fallocate{,64} and sync_file_range as - cancellation points -- Enable systemtap support (#690281) - -* Thu Mar 24 2011 Andreas Schwab - 2.13.90-8 -- Update from master - - Fix infinite loop (#690323) - -* Mon Mar 21 2011 Andreas Schwab - 2.13.90-7 -- Update from master - - Handle page boundaries in x86 SSE4.2 strncmp (BZ#12597) - - Implement x86 cpuid handling of leaf4 for cache information (BZ#12587) - - Check size of pattern in wide character representation in fnmatch - (BZ #12583) - - Remove __restrict quals from wmemcmp prototype - - Fix copy relocations handling of unique objects (BZ#12510) -- ldd: never run file directly -- Ignore rpath elements containing non-isolated use of $ORIGIN when - privileged -- Don't leave empty element in rpath when skipping the first element -- Revert "Don't crash when dependencies are missing" (#688990) - -* Mon Mar 7 2011 Andreas Schwab - 2.13.90-6 -- Update from master - - Fix loading first object along a path when tracing - - Enable SSE2 memset for AMD'supcoming Orochi processor - - Don't read past end of buffer in fmemopen -- Revert broken changes (#682307) - -* Wed Mar 2 2011 Andreas Schwab - 2.13.90-5 -- Update from master - - Fix memory leak in dlopen with RTLD_NOLOAD (BZ#12509) - - Don't crash when dependencies are missing (BZ#12454) - - Fix allocation when handling positional parameters in printf - (BZ#12445) - - Fix two printf handler issues -- Fix false assertion (BZ#12454, #673014) - -* Mon Feb 14 2011 Andreas Schwab - 2.13.90-4 -- Update from master - - Update sysdeps/unix/sysv/linux/sparc/bits/socket.h - - Synchronize generic bits/sched.h cpu_set_t with Linux implementation - - Schedule nscd cache pruning more accurately from re-added values - - Fix passing symbol value to pltexit callbacks when ld.so auditing - - Fix range error handling in sgetspent -- Revert "Fix ordering of DSO constructors and destructors" (#673014) -- Create debuginfo-common on biarch archs -- Reinstall assembler workaround. -- Replace setuid by file capabilities (#646469) - -* Tue Jan 25 2011 Andreas Schwab - 2.13.90-1 -- Update from master - - Fix ordering of DSO constructors and destructors (BZ#11724) -- Remove no longer needed assembler workaround - -* Tue Jan 18 2011 Andreas Schwab - 2.13-1 -- Update to 2.13 release - - Define AT_NO_AUTOMOUNT - - Define MADV_HUGEPAGE and MADV_NOHUGEPAGE - - Add definitions for new socket protocols - - Signal temporary host lookup errors in nscd as such to the - requester (BZ#6812) - - Change setgroups to affect all the threads in the process - (BZ#10563) - - FIx handling of unterminated [ expression in fnmatch (BZ#12378) - - Relax requirement on close in child created by posix_spawn - - Fix handling of missing syscall in Linux mkdirat (BZ#12397) - - Handle long lines in host lookups in the right place (BZ#10484) - - Fix assertion when handling DSTs during auditing - - Fix alignment in x86 destructor calls - - Fix grouping when rounding increases number of integer digits - (BZ#12394) - - Update Japanese translations - - Fix infloop on persistent failing calloc in regex (BZ#12348) - - Use prlimit64 for 32-bit [gs]etrlimit64 implementation (BZ#12201) - - Change XPG-compliant strerror_r function to return error code - (BZ#12204) - - Always allow overwriting printf modifiers etc. - - Make PowerPC64 default to nonexecutable stack - -* Tue Dec 14 2010 Andreas Schwab - 2.12.90-21 -- Revert bogus change - -* Mon Dec 13 2010 Andreas Schwab - 2.12.90-20 -- Update from master - - Declare wcpcpy and wcpncpy only under _GNU_SOURCE - - Fix use of restrict in wchar.h and string.h - - Fix race in qsort_r initialization (BZ#11655) - - Don't ignore zero TTL in DNS answers - - Allow aux_cache_file open()ing to fail silently even in the chroot - mode (BZ#11149) - - Fix multiple nss_compat initgroups() bugs (BZ#10085) - - Define MAP_HUGETLB and SWAP_FLAG_DISCARD -- Remove .UTF-8 suffix from locale names when it is the only supported - codeset (#657556) -- Don't ignore $ORIGIN in libraries - -* Fri Nov 12 2010 Andreas Schwab - 2.12.90-19 -- Update from master - - Fix memory leak in fnmatch - - Support Intel processor model 6 and model 0x2c - - Fix comparison in sqrtl for IBM long double - - Fix one exit path in x86-64 SSE4.2 str{,n}casecmp (BZ#12205, #651638) - - Fix warnings in __bswap_16 (BZ#12194) - - Use IFUNC on x86-64 memset - - Power7-optimized mempcpy - - Handle uneven cache size in 32bit SSE2 memset (BZ#12191) - - Verify in ttyname that the symlink is valid (BZ#12167) - - Update Danish translations - - Fix concurrency problem between dl_open and dl_iterate_phdr - - Fix x86-64 strchr propagation of search byte into all bytes of SSE - register (BZ#12159) - - Fix perturbing in malloc on free (BZ#12140) - - PPC/A2 optimized memcpy function - - Add C99 FP_FAST_FMA{,F,L} macros to -- Check that the running kernel is new enough (#649589) - -* Fri Oct 22 2010 Andreas Schwab - 2.12.90-18 -- Require suid bit on audit objects in privileged programs (CVE-2010-3856) - -* Tue Oct 19 2010 Andreas Schwab - 2.12.90-17 -- Update from master - - Fix some fma issues, implement fmal (BZ#3268, #43358) - - Expect PLT call to _Unwind_Find_FDE on s390*-linux -- Never expand $ORIGIN in privileged programs (#643306, CVE-2010-3847) - -* Thu Oct 14 2010 Andreas Schwab - 2.12.90-16 -- Update from master - - Implement accurate fma (BZ#3268, #43358) - - Fix alignment of AVX save area on x86-64 (BZ#12113) - - Fix regex memory leaks (BZ#12078) - - Improve output of psiginfo (BZ#12107, BZ#12108) - - Don't return NULL address in getifaddrs (BZ#12093) - - Fix strstr and memmem algorithm (BZ#12092, #641124) -- Don't discard result of decoding ACE if AI_CANONIDN (#636642) -- Remove /etc/gai.conf from glibc-common and mark it %%ghost in glibc -- Require exact glibc version in nscd - -* Mon Oct 4 2010 Andreas Schwab - 2.12.90-15 -- Update from master - - Handle large requests in debugging hooks for malloc (BZ#12005) - - Fix handling of remaining bytes in buffer for strncmp and - strncasecmp (BZ#12077) - - Handle cgroup and btrfs filesystems in statvfs - - S/390: Fix highgprs check in startup code (BZ#12067) - - Properly convert f_fsid in statvfs (BZ#11611) - -* Tue Sep 28 2010 Andreas Schwab - 2.12.90-14 -- Don't try to write to _rtld_global_ro after performing relro - protection (#638091) - -* Mon Sep 27 2010 Andreas Schwab - 2.12.90-13 -- Update from master - - Add two forgotten licence exceptions - - getdents64 fallback d_type support - - Move freeres function from ld.so to libc.so - - Undo feature selection for ftruncate (BZ#12037) - - Fix namespace pollution in pthread_cleanup_push - - Fix limit detection in x86-64 SSE2 strncasecmp (#632560) - - Add support for fanotify_mark on sparc32 and s390 - - Fix register conflict in s390 ____longjmp_chk (#629970) - - Don't try to free rpath strings allocated during startup (#629976) - - Actually make it possible to user the default name server -- Fix memory leak on init/fini dependency list (#632936) -- Fix handling of collating symbols in regexps (BZ#11561) -- Don't parse %%s format argument as multibyte string (BZ#6530) -- Fix overflow in nss files parser -- Fix spurious nop at start of __strspn_ia32 - -* Wed Sep 15 2010 Dennis Gilmore - 2.12.90-12 -- dont build sparcv9v and sparc64v anymore - -* Mon Sep 13 2010 Andreas Schwab - 2.12.90-11 -- Update from master - - Fix _FORITY_SOURCE version of longjmp for Linux/x86-64 (BZ#11968) -- Work around shortest-stem feature in make 3.82+ - -* Mon Sep 6 2010 Andreas Schwab - 2.12.90-10 -- Update from master - - Remove invalid iconv aliases (BZ#11979) - - Update x86-64 mpn routines from GMP 5.0.1 - - Fix array overflow in floating point parser (BZ#7066) - - Support fanotify_mark syscall on powerpc32 - - Unroll x86-64 strlen - - Unroll 32bit SSE strlen and handle slow bsf - - Missing server address again leads to localhost being used (BZ#10851) -- Revert last change -- Remove or don't install unpackaged files for auxarches - -* Sat Sep 04 2010 Dennis Gilmore - 2.12.90-9 -- disable unpackaged file check on auxarches - -* Mon Aug 23 2010 Andreas Schwab - 2.12.90-8 -- Update from master - - Fix static strspn on x86 (#624852) - - Various POWER7 optimized string functions - - Fix x86 pthread_cond_signal() FUTEX_WAKE_OP fallback - - Add optimized strncasecmp versions for x86-64 - - PowerPC64 ABI fixes - - Properly quote output of locale (BZ#11904) - - f_flags in statfs implementation - - Add support for fanotify_init and fanotify_mask syscalls - - Add support for prlimit and prlimit64 - - Fix IPTOS_CLASS definition (BZ#11903) - - Avoid too much stack use in fnmatch (BZ#11883) - - x86: Add support for frame pointer less mcount -- Disable asynchronous-unwind-tables during configure run - -* Mon Aug 2 2010 Andreas Schwab - 2.12.90-7 -- Update from master - - Add optimized x86-64 implementation of strnlen and strcaecmp - - Document M_PERTURB - - Fix vDSO synthetic hwcap handling so they are not masked out from - ld.so.cache matching - - POWER6/7 optimizations for copysign -- Build with ports addon on alpha and armv5tel -- Add conflict with kernel < 2.6.32 (#619538) -- Switch to xz compressed tar files -- build-locale-archive: process only directories matching *_* - -* Wed Jul 21 2010 Andreas Schwab - 2.12.90-6 -- Bump minimum kernel version to 2.6.32 - -* Mon Jul 12 2010 Andreas Schwab - 2.12.90-5 -- Update from master - - Don't pass NULL occation to dl_signal_cerror - - Implement _PC_PIPE_BUF. -- Add glibc-ports tarball - -* Fri Jul 2 2010 Andreas Schwab - 2.12.90-4 -- Update from master - - Work around kernel rejecting valid absolute timestamps - - Improve 64bit memcpy/memmove for Atom, Core 2 and Core i7 - - Fix error handling in Linux getlogin* -- Workaround assembler bug sneaking in nopl (#579838) -- Fix scope handling during dl_close -- Fix setxid race handling exiting threads - -* Tue Jun 15 2010 Andreas Schwab - 2.12.90-3 -- Update from master - - Power7 string compare optimizations - - Properly resize buffer in NIS initgroups - - Define F_SETPIPE_SZ and F_GETPIPE_SZ - - Fix more C++ incompatibility problems in headers -- Properly set __libc_multiple_libcs -- Don't assume AT_PAGESIZE is always available (#597578) -- Don't call uname or getrlimit in libpthread init function (#579086) -- Mark /etc/rpc as %%config (#587050) - -* Mon May 31 2010 Andreas Schwab - 2.12.90-2 -- Update from master - - Small fix to POWER7 32-bit memcpy - - Correct x86 CPU family and model check (BZ#11640, #596554) - - Fix iov size in SH register_dump - - Don't crash on unresolved weak symbol reference - - Implement recvmmsg also as socketcall - - sunrpc: Fix spurious fall-through - - Make compatible with C++ (#593762) -- Fix users and groups creation in nscd %%post script - -* Wed May 19 2010 Andreas Schwab - 2.12.90-1 -- Update from master - - POWER7 optimized memset - - Fix typo in es_CR locale - - Enable IDN support in getent - - Fix race in free sanity check - - Fix lookup of collation sequence value during regexp matching - - Fix name of tt_RU.UTF-8@iqtelif locale (#589138) - - Handle too-small buffers in Linux getlogin_r (BZ#11571, #589946) - -* Tue May 4 2010 Roland McGrath - 2.12-1 -- Update to 2.12 release. - - Fix ldconfig chroot handling. - - Don't deadlock in __dl_iterate_phdr while (un)loading objects. - - Fix handling of newline in addmntent. - - Fix AIO when thread creation failed. - -* Fri Apr 16 2010 Andreas Schwab - 2.11.90-20 -- Update from master - - Fix bugs in x86-32 strcmp-sse4.S and strcmp-ssse3.S - - Add x86-32 FMA support - - Don't crash in trace mode when dependencies are missing - - x86-64 SSE4 optimized memcmp - - Fix makecontext on s390/s390x - -* Tue Apr 13 2010 Andreas Schwab - 2.11.90-19 -- Avoid multiarch memcmp in tzdata-update (#581677) - -* Mon Apr 12 2010 Andreas Schwab - 2.11.90-18 -- Update from master - - Implement interfaces to set and get names of threads (BZ#11390) - - Locale data updates (BZ#10824, BZ#10936, BZ#11470, BZ#11471) - - Print reload count in nscd statistics (BZ#10915) - - Fix reading loginuid file in getlogin{,_r} - - Fix fallocate error return on i386 - - Fix cproj implmentation (BZ#10401) - - Fix getopt handing (BZ#11039, BZ#11040, BZ#11041) - - Implement new mode for NIS passwd.adjunct.byname table (BZ#11134) - - Obey LD_HWCAP_MASK in ld.so.cache lookups - -* Tue Apr 6 2010 Andreas Schwab - 2.11.90-17 -- Update from master - - Locale data updates (BZ#11007, BZ#11258, BZ#11272, BZ#10554) - - Handle DNS timeouts in old-style lookup code (BZ#11010) - - Fix aux cache handling in ldconfig with chroot (BZ#11149) - - Fix printing error messages in getopt (BZ#11043) - - Declare iruserok and iruserok_af (BZ#11070) - - Fix option aliasing in argp (BZ#11254) - - Handle POSIX-compliant errno value of unlink in remove (BZ#11276) - - Fix definition and testing of S_ISSOCK (BZ#11279) - - Fix retrieving of kernel header version (BZ#11287) - - Fix concurrent handling of __cpu_features (BZ#11292) - - Handle unnecessary padding in getdents64 (BZ#11333) - - Fix changes to interface list during getifaddrs calls (BZ#11387) - - Missing memory barrier in DES initialization (BZ#11449) - - Fix spurious UNAVAIL status is getaddrinfo - - Add support for new clocks (BZ#11389) - - Fix Linux getlogin{_r,} implementation - - Fix missing zero-termination in cuserid (BZ#11397) - - Fix glob with empty pattern - - Fix handling of STB_GNU_UNIQUE in LD_TRACE_PRELINKING - - Unify wint_t handling in wchar.h and wctype.h (BZ#11410) - - Implement handling of libc ABI in ELF header - - Don't underestimate length of DST substitution in rpath - - Power7-optimized 64-bit and 32-bit memcpy -- Assign global scope to RFC 1918 addresses (#577626) - -* Thu Mar 18 2010 Andreas Schwab - 2.11.90-16 -- Fix SSSE3 memcmp (#574210) - -* Tue Mar 9 2010 Andreas Schwab - 2.11.90-15 -- Update from master - - sparc64: Fix handling of R_SPARC_TLS_LE_* relocations (#571551) - - Handle ext4 and logfs in statvfs functions - - Fix setxid race with thread creation - - Pass -mtune=i686 to assembler when compiling for i686 - - Fix R_X86_64_PC32 overflow detection - - Fix msgrcv on sparc64 - - Fix unwind info in x86 strcmp-sse4.S (BZ#11332) - - sparc: Add multiarch support for memset/bzero/memcpy -- Remove directories owned by filesystem (#569414) -- Add %%ghost /etc/gai.conf to glibc-common (#567748) - -* Tue Feb 23 2010 Andreas Schwab - 2.11.90-14 -- Update from master - - Sparc updates -- Fix SSSE3 memcpy (#556584) - -* Mon Feb 22 2010 Andreas Schwab - 2.11.90-13 -- Update from master - - Use CPUID_OFFSET instead of FEATURE_OFFSET - - Add 32bit memcmp/strcmp/strncmp optimized for SSSE3/SSS4.2 - - Fix file descriotor leak in nftw with FTW_CHDIR (BZ#11271) - - Add Sparc STT_GNU_IFUNC support - - Add power7-optimized classification functions -- Reapply "Optimize 32bit memset/memcpy with SSE2/SSSE3." -- Use unsigned comparison in sse memcpy/memset - -* Mon Feb 8 2010 Andreas Schwab - 2.11.90-12 -- Update from master - - Update constants in for current kernels (#11235) - - Fix endless loop with invalid /etc/shells file (#11242) - - Fix sorting of malayalam letter 'na' (#10414) - - Add kok_IN locale - - Use common collation data in as_IN locale - - Avoid alloca in setenv for long strings -- Use shared mapping to reserve memory when creating locale archive (#10855) -- Fix fstat on Linux/sparc64 (#11155) - -* Mon Feb 1 2010 Andreas Schwab - 2.11.90-11 -- Update from master - - Fix error checking in iconv (#558053) - - Don't map U00DF to U1E9E in toupper table - - _nl_load_locale() incorrectly handles mmap() failures (BZ#11200) - - Fix various issues in regex matcher (BZ#11183, BZ#11184, BZ#11185, - BZ#11186, BZ#11187, BZ#11188, BZ#11189, BZ#11190, BZ#11191, - BZ#11192, BZ#11193) - -* Tue Jan 19 2010 Andreas Schwab - 2.11.90-10 -- Update from master - - Fix ____longjmp_chk for s390/s390x - - Remove duplicate definitions of O_DSYNC and O_RSYNC for Linux/sparc - - Ignore negative dynamic entry types (#546890) - - Fix pthread_cond_*wait with requeue-PI on i386 (#548989) - - Fix _XOPEN_SOURCE_EXTENDED handling -- Revert "Optimize 32bit memset/memcpy with SSE2/SSSE3." - -* Fri Jan 15 2010 Andreas Schwab - 2.11.90-9 -- Update from master. - - Define IPTOS_CLASS_* macros according to RFC 2474 (BZ#11027) - - Always use IPv4 sockets for IPv4 addresses (BZ#11141) - - regcomp.c: do not ignore memory allocation failure (BZ#11127) - - Fix malloc_info without prior allocations (BZ#11126) - - Optimize 32bit memset/memcpy with SSE2/SSSE3 - - Relax feature tests in headers - -* Tue Jan 12 2010 Andreas Schwab - 2.11.90-8 -- Update from master. - - More POSIX conformance fixes. - -* Mon Jan 11 2010 Andreas Schwab - 2.11.90-7 -- Fix build failure. - -* Mon Jan 11 2010 Andreas Schwab - 2.11.90-6 -- Update from master. - - POSIX conformance fixes (BZ#11125). - -* Mon Jan 4 2010 Andreas Schwab - 2.11.90-5 -- Update from master. - - Additional setcontext(), etc. conformance tests (BZ#11115). - - Handle AT_FDCWD in futimens (BZ#10992). - - Update poll.h header for POSIX 2008 (BZ#11093). - - Avoid ELF lookup race. - -* Mon Dec 14 2009 Andreas Schwab - 2.11.90-4 -- Update from master. - - Add Requeue-PI support for x86 arch. - - Redefine O_SYNC and O_DSYNC to match 2.6.33+ kernels. - - Fix a few error cases in *name4_r lookup handling (BZ#11000). - - Fix kernel version check in recent ptsname change (BZ#11046). - - Add more warnings to exec functions (BZ#11056). - - Add recvmmsg interface. - - Define SCHED_IDLE and SCHED_RESET_ON_FORK for Linux. - -* Mon Nov 30 2009 Andreas Schwab - 2.11.90-3 -- Update from master. - - Fix infloop in __pthread_disable_asynccancel on x86_64 (#537690). - - Prevent unintended file desriptor leak in grantpt (#530558). - - Fix startup to security-relevant statically linked binaries (#528631). -- Re-install CFI in x86/x86_64 clone (#491542). - -* Tue Nov 24 2009 Andreas Schwab - 2.11.90-2 -- Update from master. - - Define week, first_weekday, and first_workday for en_DK locale (#525126). - - Use struct timespec for timestamps in struct stat also if - __USE_XOPEN2K8 (#539870). - - Fix week information for nl_NL locale (#499748). - - Update ntp_gettime for Linux (#479558). - - Fix getwc* and putwc* on non-wide streams (BZ#10958). - - Avoid warnings in CPU_* macros when using const bitsets (BZ#10918). - - Handle LC_GLOBAL_LOCALE in duplocale (BZ#10969). - - Fix _NC_LOCALE_NAME definition (BZ#10968). - - Add missing Linux MADV_* definitions (BZ#10972). - - Add support for new Linux error ERFKILL (BZ#10939). -- Enable multi-arch support on ppc and ppc64. - -* Thu Nov 12 2009 Andreas Schwab - 2.11.90-1 -- Update from master. - -* Thu Nov 5 2009 Andreas Schwab - 2.11-2 -- Fix readahead on powerpc32. -- Fix R_PPC64_{JMP_IREL,IRELATIVE} handling. -- Fix preadv, pwritev and fallocate for -D_FILE_OFFSET_BITS=64 (#533063). - -* Mon Nov 2 2009 Andreas Schwab - 2.11-1 -- Update to 2.11 release. -- Disable multi-arch support on PowerPC again since binutils is too old. -- Fix crash in tzdata-update due to use of multi-arch symbol (#532128). - -* Fri Oct 30 2009 Andreas Schwab - 2.10.90-27 -- Update from master. - - Fix races in setXid implementation (BZ#3270). - - Implement IFUNC for PPC and enable multi-arch support. - - Implement mkstemps/mkstemps64 and mkostemps/mkostemps64 (BZ#10349). - - Fix IA-64 and S390 sigevent definitions (BZ#10446). - - Fix memory leak in NIS grp database handling (BZ#10713). - - Print timestamp in nscd debug messages (BZ#10742). - - Fix mixing IPv4 and IPv6 name server in resolv.conf. - - Fix range checks in coshl. - - Implement SSE4.2 optimized strchr and strrchr. - - Handle IFUNC symbols in dlsym (#529965). - - Misc fixes (BZ#10312, BZ#10315, BZ#10319, BZ#10391, BZ#10425, - BZ#10540, BZ#10553, BZ#10564, BZ#10609, BZ#10692, BZ#10780, - BZ#10717, BZ#10784, BZ#10789, BZ#10847 -- No longer build with -fno-var-tracking-assignments. - -* Mon Oct 19 2009 Andreas Schwab - 2.10.90-26 -- Update from master. - - Add ____longjmp_chk for sparc. -- Avoid installing the same libraries twice. - -* Mon Oct 12 2009 Andreas Schwab - 2.10.90-25 -- Update from master - - Fix descriptor leak when calling dlopen with RTLD_NOLOAD (#527409). - - Fix week-1stday in C locale. - - Check for integer overflows in formatting functions. - - Fix locale program error handling (#525363). - -* Mon Sep 28 2009 Andreas Schwab - 2.10.90-24 -- Update from master. - - Fix missing reloc dependency (#517001). - -* Mon Sep 21 2009 Andreas Schwab - 2.10.90-23 -- Update from master. - -* Mon Sep 14 2009 Andreas Schwab - 2.10.90-22 -- Update from master. - - Fix endless loop in localedef. - - Fix __longjmp_chk on s390/s390x. -- Fix exit codes in nscd start script (#521848). -- Build with -fno-var-tracking-assignments for now (#523172). - -* Mon Sep 7 2009 Andreas Schwab - 2.10.90-21 -- Update from master. - - Fix strstr/strcasestr on i386 (#519226). - -* Thu Sep 3 2009 Andreas Schwab - 2.10.90-20 -- Update from master. - - Fix strstr/strcasestr/fma/fmaf on x86_64 (#519226). - - Fix lookup of group names in hesiod initgroups (#520472). - -* Wed Sep 2 2009 Andreas Schwab - 2.10.90-19 -- Update from master. - - Fix x86_64 bits/mathinline.h for -m32 compilation. - -* Tue Sep 1 2009 Andreas Schwab - 2.10.90-18 -- Update from master. - - fix parse error in (#520209). - -* Thu Aug 27 2009 Roland McGrath - 2.10.90-17 -- Update from master. - -* Wed Aug 26 2009 Andreas Schwab - 2.10.90-16 -- Update from master. - - handle AVX saving on x86-64 in interrupted symbol lookups (#519081). - -* Mon Aug 24 2009 Andreas Schwab - 2.10.90-15 -- Update from master. - - fix fortify failure with longjmp from alternate stack (#512103). -- Add conflict with prelink (#509655). - -* Mon Aug 17 2009 Andreas Schwab - 2.10.90-14 -- Update from master. - - fix pthread_cond_signal (#516469) - -* Mon Aug 10 2009 Andreas Schwab - 2.10.90-13 -- Update from master. - - fix rehashing of unique symbols (#515677) -- Fix spurious messages with --excludedocs (#515948) - -* Mon Aug 3 2009 Andreas Schwab - 2.10.90-12 -- Update from master. - - fix fortify failure with longjmp from alternate stack (#512103) - -* Thu Jul 30 2009 Andreas Schwab - 2.10.90-11 -- Update from master. -- Don't package debuginfo files in glibc-devel. - -* Tue Jul 28 2009 Andreas Schwab - 2.10.90-10 -- Update from master. - * fix memory ordering in pthread_mutex_unlock (BZ#10418) - * implement RES_USE_DNSSEC option in resolver (#205842) - * fix hang in ldd -r (#513945) - -* Mon Jul 27 2009 Andreas Schwab - 2.10.90-9 -- Update from master. - -* Fri Jul 24 2009 Fedora Release Engineering - 2.10.90-8.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Fri Jul 24 2009 Jakub Jelinek - 2.10.90-7.1 -- Fix up pthread_cond_timedwait on x86_64 with old kernels. - -* Thu Jul 23 2009 Andreas Schwab - 2.10.90-7 -- Update from master. -- Build with -DNDEBUG unless using a prerelease. - -* Thu Jul 23 2009 Andreas Schwab - 2.10.90-6 -- Rebuilt with binutils-2.19.51.0.14-29.fc12 to fix static binaries - -* Wed Jul 22 2009 Andreas Schwab - 2.10.90-5 -- Update from master. -- Undefine __i686 on x86 to fix build. - -* Mon Jul 20 2009 Andreas Schwab - 2.10.90-4 -- Update from master. -- Don't build separate i686 package. - -* Wed Jul 8 2009 Andreas Schwab 2.10.90-3 -- Reenable setuid on pt_chown. - -* Thu Jul 2 2009 Andreas Schwab 2.10.90-2 -- Update from master. - -* Fri Jun 26 2009 Andreas Schwab 2.10.90-1 -- Update from master. -- Enable multi-arch support on x86/x86-64. -- Add requires glibc-headers to glibc-devel (#476295). -- Implement second fallback mode for DNS requests (#505105). -- Don't generate invalid POSIX TZ string for Asia/Dhaka timezone (#506941). -- Allow backtrace through __longjmp_chk on powerpc. - -* Fri May 22 2009 Jakub Jelinek 2.10.1-2 -- fix accept4 on architectures other than i?86/x86_64 -- robustify nscd client code during server GC -- fix up nscd segfaults during daemon shutdown -- fix memchr on ia64 (BZ#10162) -- replace the Sun RPC license with the BSD license, with the explicit - permission of Sun Microsystems -- fix up powerpc long double errno reporting - -* Sun May 10 2009 Jakub Jelinek 2.10.1-1 -- fix up getsgent_r and getsgnam_r exports on i?86 and ppc - -* Sat May 9 2009 Jakub Jelinek 2.10-2 -- update from trunk - - glibc 2.10 release - - fix memchr on x86_64 (#499689) - -* Mon Apr 27 2009 Jakub Jelinek 2.9.90-22 -- update from trunk - - further localedef fixes -- fix build-locale-archive - -* Fri Apr 24 2009 Jakub Jelinek 2.9.90-21 -- update from trunk - - fix localedef - - fix SHIFT_JIS iconv EILSEQ handling (#497267) - - misc fixes (BZ#10093, BZ#10100) - -* Fri Apr 24 2009 Jakub Jelinek 2.9.90-20 -- update from trunk - - fix p{read,write}v{,64} (#497429, #497434) - - fix strfmon (#496386) - -* Thu Apr 16 2009 Jakub Jelinek 2.9.90-19 -- update from trunk - - fix dlopen from statically linked binaries (#495830) - -* Thu Apr 16 2009 Jakub Jelinek 2.9.90-18 -- update from trunk - - fix fallocate - -* Wed Apr 15 2009 Jakub Jelinek 2.9.90-17 -- update from trunk - - if threads have very small stack sizes, use much smaller buffer - in __get_nprocs when called from within malloc (#494631) - -* Tue Apr 14 2009 Jakub Jelinek 2.9.90-16 -- update from trunk - -* Thu Apr 9 2009 Jakub Jelinek 2.9.90-15 -- rebuilt with fixed gcc to avoid miscompilation of i586 memmove -- reenable experimental malloc again - -* Wed Apr 8 2009 Jakub Jelinek 2.9.90-14 -- update from trunk -- temporarily disable experimental malloc - -* Tue Apr 7 2009 Jakub Jelinek 2.9.90-13 -- update from trunk - - fix strverscmp (#494457) -- configure with --enable-nss-crypt - -* Wed Apr 1 2009 Jakub Jelinek 2.9.90-12 -- update from trunk -- configure with --enable-experimental-malloc - -* Fri Mar 20 2009 Jakub Jelinek 2.9.90-11 -- update from trunk - - POSIX 2008 prototype adjustments for scandir{,64}, alphasort{,64} and - versionsort{,64} - - fix libthread_db (#491197) - -* Tue Mar 10 2009 Jakub Jelinek 2.9.90-10 -- update from trunk - - fix atexit/__cxa_atexit - -* Mon Mar 9 2009 Jakub Jelinek 2.9.90-9 -- update from trunk - - POSIX 2008 support: -D_XOPEN_SOURCE=700 and -D_POSIX_C_SOURCE=200809L -- move libnldbl_nonshared.a on ppc*/s390*/sparc* back to glibc-devel - -* Fri Feb 27 2009 Roland McGrath - 2.9.90-8.1 -- fix libthread_db (#487212) - -* Tue Feb 24 2009 Fedora Release Engineering - 2.9.90-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Wed Feb 18 2009 Jakub Jelinek 2.9.90-7 -- update from trunk -- adjust for i586 + i686 from i386 + i686 build -- split static libraries into glibc-static subpackage -- ld -r the whole libpthread.a together to avoid endless issues with - -static ... -lpthread -- require 2.6.18 and later kernel - -* Wed Feb 4 2009 Jakub Jelinek 2.9.90-3 -- update from trunk - - ISO C++ compliant strchr etc. with GCC 4.4+ - - AT_RANDOM support - -* Thu Jan 8 2009 Jakub Jelinek 2.9.90-2 -- update from trunk - -* Fri Jan 2 2009 Jakub Jelinek 2.9.90-1 -- update from trunk (#478314) - -* Mon Dec 8 2008 Jakub Jelinek 2.9-3 -- temporarily disable _nss_dns_gethostbyname4_r (#459756) -- NIS hostname lookup fixes (#473073, #474800, BZ#7058) -- fix unsetenv (#472941) - -* Thu Nov 13 2008 Jakub Jelinek 2.9-2 -- glibc 2.9 release -- fix CPU_ALLOC_SIZE on 32-bit arches (BZ#7029) - -* Wed Nov 12 2008 Jakub Jelinek 2.8.90-17 -- update from trunk - - don't abort on broken DNS replies (#469299, BZ#7009) - - misc fixes (BZ#6966, BZ#7008, BZ#6955, BZ#6843) - -* Fri Oct 31 2008 Jakub Jelinek 2.8.90-16 -- update from trunk - - further resolver fixes - - another dynamic TLS handling fix (#469263) - - misc fixes (BZ#6867, BZ#6875, BZ#6919, BZ#6920, BZ#6942, BZ#6947, - BZ#6968, BZ#6974, BZ#6980, BZ#6995) -- rebuild with newer rpm to avoid stripping - shared libraries when they shouldn't be (#468129) - -* Tue Oct 28 2008 Jakub Jelinek 2.8.90-15 -- update from trunk - - __libc_res_nquery fixes (#466786) - -* Sun Oct 19 2008 Jakub Jelinek 2.8.90-14 -- update from trunk - - fix dynamic TLS handling (#467309) - - fix sys/signalfd.h for C++ (#467172) - - fix sprof (#458861) - - fix _mcount and socket syscalls on s390x (#464146) - - try harder to allocate memory in valloc and pvalloc (#461481) -- fix power6 32-bit libs (#467311) - -* Fri Oct 10 2008 Dennis Gilmore 2.8.90-13 -- apply sparcv9v memset patch from jakub and davem - -* Fri Aug 29 2008 Jakub Jelinek 2.8.90-12 -- update from trunk - - revert origin changes (#457849) - - use MAP_STACK for thread stacks - - misc fixes (BZ#6845, BZ#6544, BZ#6634, BZ#6589, BZ#6790, BZ#6791, - BZ#6824) - - power7 bits (BZ#6817) - - fix expm1 on i?86/x86_64 (#43354, BZ#5794) - -* Sat Aug 2 2008 Jakub Jelinek 2.8.90-11 -- update from trunk - - fix non-absolute $ORIGIN handling (#457560) - - exported some further libresolv APIs (#453325) - - misc fixes - -* Tue Jul 29 2008 Jakub Jelinek 2.8.90-10 -- update from trunk - - resolver fixes - - misc fixes (BZ#6771, BZ#6763, BZ#6698, BZ#6712) - - s390{,x} utmp/utmpx bi-arch support (BZ#6724) - - popen "e" flag -- fr_FR locale changes reenabled - -* Wed Jul 16 2008 Jakub Jelinek 2.8.90-9 -- update from trunk - - fix unbuffered vfprintf if writing to the stream fails (#455360) - - remove useless "malloc: using debugging hooks" message (#455355) - - nscd fixes - - fix resolver alignment issues (#454500) - - fix setvbuf (BZ#6719) - -* Thu Jul 3 2008 Jakub Jelinek 2.8.90-8 -- update from trunk - - watch even resolv.conf in nscd using inotify - - some nscd fixes - -* Fri Jun 13 2008 Jakub Jelinek 2.8.90-7 -- update from trunk - - avoid *lround* on ppc* clobbering cr3/cr4 registers (#450790) - - further nscd fixes (#450704) - - use inotify in nscd to watch files - -* Thu Jun 12 2008 Jakub Jelinek 2.8.90-6 -- update from trunk - - nscd fixes (#450704) - - fix getservbyport (#449358) - - fix regexp.h (#446406) - - avoid crashing on T_DNAME in DNS responses (#450766) - -* Sun May 25 2008 Jakub Jelinek 2.8.90-5 -- update from trunk - -* Tue May 20 2008 Jakub Jelinek 2.8.90-4 -- further getaddrinfo and nscd fixes - -* Sun May 18 2008 Jakub Jelinek 2.8.90-3 -- getaddrinfo and nscd fixes -- reenable assertion checking in rawhide - -* Fri May 16 2008 Jakub Jelinek 2.8.90-2 -- fix getaddrinfo (#446801, #446808) - -* Thu May 15 2008 Jakub Jelinek 2.8.90-1 -- update to trunk - - O(n) memmem/strstr/strcasestr - - i386/x86_64 TLS descriptors support - - concurrent IPv4 and IPv6 DNS lookups by getaddrinfo - -* Mon May 5 2008 Jakub Jelinek 2.8-3 -- don't run telinit u in %%post if both /dev/initctl and - /sbin/initctl exist (#444978) -- workaround GCC ppc64 miscompilation of c{log{,10},acosh,atan}l - (#444996) - -* Wed Apr 30 2008 Jakub Jelinek 2.8-2 -- fix nscd races during GC (BZ#5381) -- rebuilt with fixed GCC to fix regex miscompilation on power6 -- SPARC fixes - -* Sat Apr 12 2008 Jakub Jelinek 2.8-1 -- 2.8 release - -* Fri Apr 11 2008 Jakub Jelinek 2.7.90-16 -- update to trunk - - misc fixes (BZ#4997, BZ#5741) - - make sure all users of __libc_setlocale_lock know it is - now a rwlock - - fix ppc/ppc64 compatibility _sys_errlist and _sys_siglist - symbols - -* Thu Apr 10 2008 Jakub Jelinek 2.7.90-15 -- update to trunk - - misc fixes (BZ#4314, BZ#4407, BZ#5209, BZ#5436, BZ#5768, BZ#5998, - BZ#6024) -- restart sshd in %%post when upstart is used - it doesn't have - /dev/initctl (#441763) -- disable assert checking again - -* Tue Apr 8 2008 Jakub Jelinek 2.7.90-14 -- update to trunk - - misc fixes (BZ#5443, BZ#5475, BZ#5478, BZ#5939, BZ#5979, BZ#5995, - BZ#6004, BZ#6007, BZ#6020, BZ#6021, BZ#6042) - - change mtrace to keep perl 5.10 quiet (#441082) - - don't share conversion state between mbtowc and wctomb (#438687) - - if st_blksize is too large and malloc fails, retry with smaller - buffer in opendir (#430768) - - correct *printf overflow test (#358111) - -* Fri Mar 28 2008 Jakub Jelinek 2.7.90-13 -- update to trunk - - don't define ARG_MAX in , as it is no longer - constant - use sysconf (_SC_ARG_MAX) to get the current - argument size limit - - fix build on sparc64 -- only service sshd condrestart if /etc/rc.d/init.d/sshd exists - (#428859) - -* Wed Mar 26 2008 Jakub Jelinek 2.7.90-12 -- update to trunk - - new CLONE_* flags in (#438542) - - nis+ errno clobbering fix (#437945) - - fix adjtime (#437974) - -* Fri Mar 14 2008 Jakub Jelinek 2.7.90-11 -- update to trunk -- remove , define _XOPEN_STREAMS -1 (#436349) - -* Wed Mar 5 2008 Jakub Jelinek 2.7.90-8 -- update to trunk - - {,v}{as,d}printf and obstack_{,v}printf fortification (#435905) - - fix getnameinfo/gethostbyaddr (#428067, BZ#5790) - - fix yp_order (#435519, BZ#5854) - - misc fixes (BZ#5779, BZ#5736, BZ#5627, BZ#5818, BZ#5012) -- merge review cleanup (Tom Callaway, #225806) - -* Sat Feb 16 2008 Jakub Jelinek 2.7.90-7 -- update to trunk - - make NI_MAXHOST and NI_MAXSERV available even in BSDish - namespaces (BZ#5737) - - timerfd_* syscalls - -* Fri Feb 1 2008 Jakub Jelinek 2.7.90-6 -- fix build - -* Thu Jan 31 2008 Jakub Jelinek 2.7.90-5 -- update to trunk -- rebuild with gcc 4.3 - -* Fri Jan 11 2008 Jakub Jelinek 2.7.90-4 -- update to trunk - - misc fixes (BZ#5541, BZ#5545, BZ#5553, BZ#5112, BZ#5520) - - getaddrinfo fixes - - signalize EOVERFLOW from sem_post instead of overflowing - the counter - - fix i?86 makecontext - - fix iconv for iso-2022-jp//translit (#397021) - -* Thu Jan 3 2008 Jakub Jelinek 2.7.90-3 -- update to trunk - - fix recognition of interface family (#425768) - - add __THROW to __ctype_{b,tolower,toupper}_loc prototypes - -* Thu Dec 27 2007 Jakub Jelinek 2.7.90-2 -- update to trunk - - nsswitch fix (#425768) -- temporarily enable assert checking - -* Wed Dec 12 2007 Jakub Jelinek 2.7.90-1 -- update to trunk - - fix __USE_STRING_INLINES on i?86 (#408731, #371711) - - fix *scanf (#388751) - -* Wed Oct 17 2007 Jakub Jelinek 2.7-1 -- glibc 2.7 release -- fix tzfile.c for times after last transition (#333561) -- fix sem_post@GLIBC_2.0 on i?86 -- appease valgrind in libpthread.so initialization -- misc fixes (BZ#3425, BZ#5184, BZ#5186) - -* Mon Oct 15 2007 Jakub Jelinek 2.6.90-21 -- fix getgr{name,gid}{,_r} with nscd - -* Sun Oct 14 2007 Jakub Jelinek 2.6.90-20 -- install (#330031) -- disable -D_FORTIFY_SOURCE{,=2} support (with a warning) for - GCC 3.4.x and earlier(#327641) -- pl_PL locale changes (BZ#4098, #242296) -- misc fixes (BZ#1140, BZ#3195, BZ#3242, BZ#4359) - -* Thu Oct 11 2007 Jakub Jelinek 2.6.90-19 -- fix -- simple preprocessor in localedef, fix de_DE collation with it - -* Wed Oct 10 2007 Jakub Jelinek 2.6.90-18 -- add signalfd, eventfd, eventfd_read, eventfd_write -- qsort speedups -- workaround for cpuid bugs (#324081) -- make sure gettext's conversion_lock is initialized even if - program isn't linked against libpthread.so.0, only dlopens it (#321761) -- misc fixes (BZ#5112, BZ#5113, BZ#5104, BZ#5063, BZ#5010, BZ#4407, - BZ#3924, BZ#5103, BZ#2633, BZ#181, BZ#73, #321901) - -* Wed Oct 3 2007 Jakub Jelinek 2.6.90-17 -- fix {,v}swprintf with -D_FORTIFY_SOURCE=1 -mlong-double-64 on ppc*/s390*/sparc* -- strcoll fixes -- misc fixes (BZ#645, BZ#5071) -- locale fixes (BZ#4941, #299321, #203364, #196711, #236212) - -* Sat Sep 29 2007 Jakub Jelinek 2.6.90-16 -- misc fixes (BZ#4963, BZ#4972, BZ#5028, BZ#5043, BZ#5058) -- improve -D_FORTIFY_SOURCE{,=2} diagnostic through warning/error - attributes -- fix wcscpy, wcpcpy, fgetws, fgetws_unlocked, swprintf and vswprintf - fortification inlines -- fix a scalability issue with lazy binding in heavily multithreaded - programs - -* Thu Sep 20 2007 Jakub Jelinek 2.6.90-15 -- $5$ (SHA-256) and $6$ (SHA-512) support in crypt - (#228697, #249477, #173834) - -* Tue Sep 18 2007 Jakub Jelinek 2.6.90-14 -- -D_FORTIFY_SOURCE{,=2} support for C++ -- fortification of fread{,_unlocked} -- support *scanf m allocation modifier (%%ms, %%mls, %%mc, ...) -- in -std=c99 or -D_XOPEN_SOURCE=600 mode don't recognize - %%as, %%aS and %%a[ as a GNU extension for *scanf -- fix splice, vmsplice, tee return value, make them cancellation - points -- mq_open checking -- use inline function rather than function-like macro - for open{,at}{,64} checking -- IFA_F_OPTIMISTIC handling in getaddrinfo (#259681) -- fix an ABBA deadlock in ld.so (#284171) -- remove sparc{32,64} unwind info from _start and clone - -* Mon Aug 27 2007 Jakub Jelinek 2.6.90-13 -- fix personality on x86_64/ppc/ppc64 (#256281) - -* Sat Aug 25 2007 Jakub Jelinek 2.6.90-12 -- readd x86_64 gettimeofday stuff, initialize it earlier -- nis_list fix (#254115) -- workaround for bugs in ia64 silly /emul/ia32-linux hack (#253961) -- misc fixes (BZ#3924, BZ#4566, BZ#4582, BZ#4588, BZ#4726, BZ#4946, - BZ#4905, BZ#4814, BZ#4925, BZ#4936, BZ#4896, BZ#4937, BZ#3842, - BZ#4554, BZ#4557, BZ#4938) - -* Fri Aug 17 2007 Jakub Jelinek 2.6.90-11 -- remove __strtold_internal and __wcstold_internal from ppc*/s390*/sparc* - *-ldbl.h headers -- temporarily backout x86_64 gettimeofday.S changes (#252453) -- some further sparc, sparc64 and alpha fixes - -* Wed Aug 15 2007 Jakub Jelinek 2.6.90-10 -- don't open /etc/ld.so.{cache,preload} with O_NOATIME (#252146) -- s390{,x}, alpha and sparc fixes -- sparcv9 is no longer an aux arch, as we expect - to not build sparc.rpm glibc any longer, only sparcv9.rpm, - sparc64.rpm and new two aux arches sparcv9v.rpm and sparc64v.rpm - -* Tue Aug 14 2007 Jakub Jelinek 2.6.90-9 -- private futex even for mutexes and condvars -- some further O_CLOEXEC changes -- use vDSO on x86_64 if available -- ia64 build fixes (#251983) - -* Fri Aug 10 2007 Roland McGrath 2.6.90-8 -- update to trunk - - fix missing strtold_l export on ppc64 - -* Thu Aug 9 2007 Roland McGrath 2.6.90-6 -- update to trunk - - fix local PLT regressions -- spec file revamp for new find-debuginfo.sh - -* Sun Aug 5 2007 Jakub Jelinek 2.6.90-4 -- fix librt.so and librtkaio.so on ppc32, so that it is not using - bss PLT - -* Sat Aug 4 2007 Jakub Jelinek 2.6.90-3 -- fix open{,at}{,64} macro for -pedantic (#250897) -- add transliteration for l with stroke (#250492) -- fix strtod ("-0", NULL) -- update License tag - -* Wed Aug 1 2007 Jakub Jelinek 2.6.90-2 -- make aux-cache purely optional performance optimization in ldconfig, - don't issue any errors if it can't be created (#250430) -- remove override_headers hack, BuildRequire >= 2.6.22 kernel-headers - and rely on its content - -* Tue Jul 31 2007 Jakub Jelinek 2.6.90-1 -- update to trunk - - private futex optimizations - - open{,at}{,64} argument checking -- ldconfig speedups - -* Sun Jul 8 2007 Jakub Jelinek 2.6-4 -- filter pseudo-files from debuginfo source lists (#245714) -- fix sscanf when errno is EINTR before the call (BZ#4745) -- save/restore errno around reading /etc/default/nss (BZ#4702) -- fix LD_HWCAP_MASK handling -- disable workaround for #210748, instead backport - ld.so locking fixes from the trunk (#235026) -- new x86_64 memcpy -- don't write uninitialized padding bytes to nscd socket -- fix dl{,v}sym, dl_iterate_phdr and dlopen if some library is - mapped into ld.so's inter-segment hole on x86_64 (#245035, #244545) -- fix LD_AUDIT=a:b program (#180432) -- don't crash on pseudo-zero long double values passed to - *printf on i?86/x86_64/ia64 (BZ#4586) -- fix *printf %%La and strtold with some hexadecimal floating point - constants on ppc/ppc64 -- fix nextafterl on ppc/ppc64 -- fix sem_timedwait on i?86 and x86_64 - -* Thu May 24 2007 Jakub Jelinek 2.6-3 -- don't use %%config(missingok) for locale-archive.tmpl, - instead of removing it altogether truncate it to zero - size (#240697) -- add a workaround for #210748 - -* Mon May 21 2007 Jakub Jelinek 2.6-2 -- restore malloc_set_state backwards compatibility (#239344) -- fix epoll_pwait (BZ#4525) -- fix printf with unknown format spec or positional arguments - and large width and/or precision (BZ#4514) -- robust mutexes fix (BZ#4512) - -* Tue May 15 2007 Roland McGrath 2.6-1 -- glibc 2.6 release - -* Fri May 11 2007 Jakub Jelinek 2.5.90-24 -- utimensat, futimens and lutimes support - -* Thu May 10 2007 Jakub Jelinek 2.5.90-23 -- use madvise MADV_DONTNEED in malloc -- fix ia64 feraiseexcept -- fix s390{,x} feholdexcept (BZ#3427) -- ppc fenv fixes -- make fdatasync a cancellation point (BZ#4465) -- fix *printf for huge precisions with wide char code and multi-byte - strings -- fix dladdr (#232224, BZ#4131) - -* Fri May 4 2007 Jakub Jelinek 2.5.90-22 -- add transliteration for (BZ#3213) -- fix *scanf with %%f on hexadecimal floats without exponent (BZ#4342) -- fix *printf with very large precisions for %%s (#238406, BZ#4438) -- fix inet_ntop size checking for AF_INET (BZ#4439) -- for *printf %%e avoid 1.000e-00, for exponent 0 always use + sign (#238431) -- fix a regression introduced in #223467 changes -- gethostby*_r alignment fixes (BZ#4381) -- fix ifaddrs error handling - -* Mon Apr 16 2007 Jakub Jelinek 2.5.90-21 -- don't include individual locale files in glibc-common, - rather include prepared locale-archive template and let - build-locale-archive create locale-archive from the template - and any user supplied /usr/lib/locale/*_* directories, - then unlink the locale-archive template - this should save - > 80MB of glibc-common occupied disk space -- fix _XOPEN_VERSION (BZ#4364) -- fix printf with %%g and values tiny bit smaller than 1.e-4 (#235864, - BZ#4362) -- fix NIS+ __nisfind_server (#235229) - -* Sat Mar 31 2007 Jakub Jelinek 2.5.90-20 -- assorted NIS+ speedups (#223467) -- fix HAVE_LIBCAP configure detection (#178934) -- remove %%{_prefix}/sbin/rpcinfo from glibc-common (#228894) -- nexttoward*/nextafter* fixes (BZ#3306) -- feholdexcept/feupdateenv fixes (BZ#3427) -- speed up fnmatch with two or more * in the pattern - -* Sat Mar 17 2007 Jakub Jelinek 2.5.90-19 -- fix power6 libm compat symbols on ppc32 (#232633) -- fix child refcntr in NPTL fork (#230198) -- fix ifaddrs with many net devices on > 4KB page size arches (#230151) -- fix pthread_mutex_timedlock on x86_64 (#228103) -- various fixes (BZ#3919, BZ#4101, BZ#4130, BZ#4181, BZ#4069, BZ#3458) - -* Wed Feb 21 2007 Jakub Jelinek 2.5.90-18 -- fix nftw with FTW_CHDIR on / (BZ#4076) -- nscd fixes (BZ#4074) -- fix fmod{,f,l} on i?86 (BZ#3325) -- support localized digits for fp values in *scanf (BZ#2211) -- namespaces fixes (BZ#2633) -- fix euidaccess (BZ#3842) -- glob fixes (BZ#3996) -- assorted locale data fixes (BZ#1430, BZ#672, BZ#58, BZ#3156, - BZ#2692, BZ#2648, BZ#3363, BZ#3334, BZ#3326, BZ#3322, BZ#3995, - BZ#3885, BZ#3884, BZ#3851) - -* Sun Feb 11 2007 Jakub Jelinek 2.5.90-17 -- RFC2671 support in resolver (#205842) -- fix strptime (BZ#3944) -- fix regcomp with REG_NEWLINE (BZ#3957) -- fix pthread_mutex_timedlock on x86_64 (#228103) - -* Fri Feb 2 2007 Jakub Jelinek 2.5.90-16 -- add strerror_l -- fix application crashes when doing NSS lookups through nscd - mmapped databases and nscd decides to start garbage collection - during the lookups (#219145, #225315) -- fix %%0lld printing of 0LL on 32-bit architectures (BZ#3902) -- ignore errors from install-info in glibc-devel scriptlets - (#223691) - -* Wed Jan 17 2007 Jakub Jelinek 2.5.90-15 -- fix NIS getservbyname when proto is NULL -- fix nss_compat +group handling (#220658) -- cache services in nscd -- fix double free in fts_close (#222089) -- fix vfork+execvp memory leak (#221187) -- soft-fp fixes (BZ#2749) -- further strtod fixes (BZ#3855) -- make sure pthread_kill doesn't return EINVAL even if - the target thread exits in between pthread_kill ESRCH check - and the actual tgkill syscall (#220420) -- fix ABBA deadlock possibility in ld.so scope locking code - -* Tue Dec 19 2006 Jakub Jelinek 2.5.90-14 -- fix {j,m}rand48{,_r} on 64-bit arches (BZ#3747) -- handle power6x AT_PLATFORM (#216970) -- fix a race condition in getXXbyYY_r (#219145) -- fix tst-pselect testcase - -* Thu Dec 14 2006 Jakub Jelinek 2.5.90-13 -- fix setcontext on ppc32 (#219107) -- fix wide stdio after setvbuf (#217064, BZ#2337) -- handle relatime mount option in statvfs -- revert i?86/x86_64 clone CFI temporarily - -* Sun Dec 10 2006 Jakub Jelinek 2.5.90-12 -- fix hasmntopt (#218802) -- fix setusershell and getusershell (#218782) -- strtod fixes (BZ#3664, BZ#3673, BZ#3674) -- fix memusage with realloc (x, 0) - -* Tue Dec 5 2006 Jakub Jelinek 2.5.90-11 -- allow suid apps to setenv NIS_PATH and influence through that - nis_list and nis_lookup (#209155) -- fix ttyname and ttyname_r with invalid file descriptor (#218276) -- cs_CZ LC_TIME fixes (#218438) -- fix build with 2.6.19+ headers (#217723) - -* Fri Dec 1 2006 Jakub Jelinek 2.5.90-10 -- fix x86-64 restore_rt unwind info - -* Thu Nov 30 2006 Jakub Jelinek 2.5.90-9 -- fix last svc_run change (#217850) -- on ppc64 build __libc_start_main without unwind info, - as it breaks MD_FROB_UPDATE_CONTEXT (#217729, #217775; in the - future that could be fixable just by providing .cfi_undefined r2 - in __libc_start_main instead) -- add unwind info for x86-64 restore_rt signal return landing pad - (#217087) -- add power6x subdir to /%%{_lib}/ and /%%{_lib}/rtkaio/, - link all libs from ../power6/* into them - -* Tue Nov 28 2006 Jakub Jelinek 2.5.90-8 -- fix svc_run (#216834, BZ#3559) -- add -fasynchronous-unwind-tables to CFLAGS (#216518) -- make sure there is consistent timestamp for /etc/ld.so.conf, - /etc/localtime and /etc/rpc between multilib glibc rpms - -* Mon Nov 20 2006 Jakub Jelinek 2.5.90-7 -- handle IPv6 addresses in /etc/hosts that are mappable to - IPv4 addresses in IPv4 host lookups (#215283) -- fix :include: /etc/alias handling (#215572) -- handle new tzdata format to cope with year > 2037 transitions - on 64-bit architectures - -* Fri Nov 10 2006 Jakub Jelinek 2.5.90-6 -- fix strxfrm fix -- fix i?86 floor and ceil inlines (BZ#3451) - -* Thu Nov 9 2006 Jakub Jelinek 2.5.90-5 -- fix sysconf (_SC_LEVEL{2,3}_CACHE_SIZE) on Intel Core Duo - CPUs -- fix libthread_db.so on TLS_DTV_AT_TP architectures -- fix --inhibit-rpath (#214569) -- fix _r_debug content when prelinked ld.so executes - a program as its argument -- fix strxfrm -- powerpc-cpu add-on updates - -* Fri Nov 3 2006 Jakub Jelinek 2.5.90-4 -- fix atexit backwards compatibility (#213388) -- add mai_IN locale (#213415) -- remove bogus %%{_libdir}/librt.so.1 symlink (#213555) -- fix memusage (#213656) -- change libc.info category (#209493) - -* Sun Oct 29 2006 Jakub Jelinek 2.5.90-3 -- fix suid/sgid binaries on i?86/x86_64 (#212723) - -* Fri Oct 27 2006 Jakub Jelinek 2.5.90-2 -- fix ia64 build -- don't call _dl_close outside of dl_load_lock critical section - if dlopen failed (BZ#3426) -- add rtld scope locking (#211133) - -* Wed Oct 25 2006 Jakub Jelinek 2.5.90-1 -- fix i?86 6 argument syscalls (e.g. splice) -- fix rtld minimal realloc (BZ#3352) -- fix RFC3484 getaddrinfo sorting according to rules 4 and 7 (BZ#3369) -- fix xdrmem_setpos (#211452) -- bump __GLIBC_MINOR__ -- increase PTHREAD_STACK_MIN on ppc{,64} to 128K to allow - 64K pagesize kernels (#209877) -- speed up initgroups on NIS+ (#208203) - -* Mon Oct 2 2006 Jakub Jelinek 2.5-2 -- fix nscd database growing (#207928) -- bypass prelinking when LD_DYNAMIC_WEAK=1 is in the environment - -* Fri Sep 29 2006 Jakub Jelinek 2.5-1 -- glibc 2.5 release - -* Wed Sep 27 2006 Jakub Jelinek 2.4.90-36 -- rebuilt with gcc-4.1.1-26 to fix unwind info - -* Mon Sep 25 2006 Jakub Jelinek 2.4.90-35 -- fix glob with large number of matches (BZ#3253) -- fix fchownat on kernels that don't support that syscall (BZ#3252) -- fix lrintl on s390{,64} - -* Sat Sep 23 2006 Jakub Jelinek 2.4.90-34 -- fix ppc{32,64} longjmp (BZ#3225) -- fix user visible spelling errors (BZ#3137) -- fix l{,l}rint{,f,l} around zero (BZ#2592) -- avoid stack trampoline in s390{,x} makecontext - -* Tue Sep 19 2006 Jakub Jelinek 2.4.90-33 -- fix dlclose (#206639) -- don't load platform optimized libraries if kernel doesn't set - AT_PLATFORM -- fix ppc{32,64} libSegFault.so -- use -mtune=generic even for glibc-devel.i386 (#206437) -- fix /%%{_lib}/librt.so.1 symlink - -* Fri Sep 15 2006 Jakub Jelinek 2.4.90-32 -- on ppc* use just AT_PLATFORM and altivec AT_HWCAP bit for library selection -- fix lrintl and lroundl on ppc{,64} -- use hidden visibility on fstatat{,64} and mknodat in libc_nonshared.a - -* Sun Sep 10 2006 Jakub Jelinek 2.4.90-31 -- fix pthread_cond_{,timed}wait cancellation (BZ#3123) -- fix lrint on ppc32 (BZ#3155) -- fix malloc allocating more than half of address space (BZ#2775) -- fix mktime on 32-bit arches a few years after 2038 (BZ#2821) - -* Thu Sep 7 2006 Jakub Jelinek 2.4.90-30 -- add librtkaio, to use it add /%%{lib}/rtkaio to your - LD_LIBRARY_PATH or /etc/ld.so.conf -- fix or_IN February name (#204730) -- fix pthread_create called from cancellation handlers (BZ#3124) -- fix regex case insensitive searches with characters where upper - and lower case multibyte representations have different length - (e.g. I and dotless i, #202991) - -* Tue Sep 5 2006 Jakub Jelinek 2.4.90-29 -- randomize resolver query ids before use instead after use (#205113) -- fix resolver symver checking with DT_GNU_HASH (#204909) -- put .hash section in glibc libraries at the end of RO segment - when .gnu.hash is present - -* Thu Aug 31 2006 Jakub Jelinek 2.4.90-28 -- another malloc doubly linked list corruption problem fix (#204653) - -* Thu Aug 31 2006 Jakub Jelinek 2.4.90-27 -- allow $LIB and $PLATFORM in dlopen parameters even in suid/sgid (#204399) -- handle $LIB/$PLATFORM in LD_LIBRARY_PATH -- fix splice prototype (#204530) - -* Mon Aug 28 2006 Jakub Jelinek 2.4.90-26 -- real fix for the doubly linked list corruption problem -- try harder in realloc to allocate memory (BZ#2684) -- fix getnameinfo error reporting (#204122) -- make localedef more robust on invalid input (#203728) - -* Fri Aug 25 2006 Jakub Jelinek 2.4.90-25 -- temporarily back out code to limit number of unsorted block - sort iterations (#203735, #204027) -- handle PLT symbols in dladdr properly (BZ#2683) -- avoid malloc infinite looping for allocations larger than - the system can allocate (#203915) - -* Tue Aug 22 2006 Jakub Jelinek 2.4.90-23 -- malloc fixes, especially for 32-bit arches (#202309) -- further *_IN locale fixes (#200230) -- fix get{serv,rpc}ent{,_r} if NIS map is empty (#203237) -- fix /usr/bin/iconv (#203400) - -* Fri Aug 18 2006 Jakub Jelinek 2.4.90-22 -- rebuilt with latest binutils to pick up 64K -z commonpagesize - on ppc/ppc64 (#203001) - -* Tue Aug 15 2006 Jakub Jelinek 2.4.90-21 -- if some test gets stuck, kill the tee process after make check - finishes -- build with -mtune=generic on i686 and x86_64 - -* Tue Aug 15 2006 Jakub Jelinek 2.4.90-20 -- PTHREAD_PRIO_PROTECT support -- fix errno if nice() fails (#201826) - -* Thu Aug 10 2006 Jakub Jelinek 2.4.90-19 -- adaptive malloc brk/mmap threshold -- fix fchownat to use kernel syscall (if available) on many arches (#201870) -- only define O_DIRECT with -D_GNU_SOURCE on ia64 to match all - other arches (#201748) - -* Mon Aug 7 2006 Jakub Jelinek 2.4.90-18 -- NIS+ fixes -- fix memusage and xtrace scripts (#200736) -- redirect /sbin/service sshd condrestart std{out,err} to /dev/null - when executed from glibc_post_upgrade - -* Wed Aug 2 2006 Jakub Jelinek 2.4.90-17 -- typo fix for the dladdr patch -- build i?86 glibc with -mno-tls-direct-seg-refs (#200469) - -* Wed Aug 2 2006 Jakub Jelinek 2.4.90-16 -- fix dladdr on binaries/libraries with only DT_GNU_HASH and no - DT_HASH (#200635) -- fix early timeout of initgroups data in nscd (#173019) -- add am/pm display to es_PE and es_NI locales (#167101) -- fix nss_compat failures when nis/nis+ unavailable (#192072) - -* Mon Jul 31 2006 Roland McGrath 2.4.90-15 -- fix missing destructor calls in dlclose (#197932) -- enable transliteration support in all locales (#196713) -- disallow RTLD_GLOBAL flag for dlmopen in secondary namespaces (#197462) -- PI mutex support - -* Mon Jul 10 2006 Jakub Jelinek 2.4.90-13 -- DT_GNU_HASH support - -* Fri Jun 30 2006 Jakub Jelinek 2.4.90-12 -- buildrequire gettext -- enable fstatat64/newfstatat syscalls even on ppc*/s390*/ia64 (#196494) -- fix out of memory behavior in gettext (#194321) -- fix regex on multi-byte non-UTF-8 charsets (#193873) -- minor NIS+ fixes (#190803) -- don't use cancellable calls in posix_spawn* and only set{u,g}id - current thread if requested (#193631) - -* Wed May 31 2006 Jakub Jelinek 2.4.90-11 -- don't exit from nscd -i before the database is - actually invalidated, add locking to prune_cache (#191464) -- build glibc-devel.i386 static libraries with - -mno-tls-direct-seg-refs -DNO_TLS_DIRECT_SEG_REFS -- RFC3542 support (advanced API for IPv6; #191001, BZ##2693) - -* Wed May 24 2006 Jakub Jelinek 2.4.90-10 -- on i686 make glibc owner of /lib/i686 directory (#192597) -- search parent NIS+ domains (#190803) - -* Sun May 21 2006 Jakub Jelinek 2.4.90-9 -- update from CVS - - big NIS+ changes - -* Fri May 19 2006 Jakub Jelinek 2.4.90-8 -- update from CVS - - fix nss_compat when SETENT_BATCH_READ=TRUE is in /etc/default/nss - - fix RFC3484 precedence table for site-local and ULA addresses (#188364) - - fix a sunrpc memory leak - -* Thu May 11 2006 Jakub Jelinek 2.4.90-7 -- update from CVS - - fix tcgetattr (#177965) - - fix (#191264) - -* Fri May 5 2006 Jakub Jelinek 2.4.90-6 -- update from CVS -- rebuilt using fixed rpm - -* Fri May 5 2006 Jakub Jelinek 2.4.90-5 -- update from CVS - - some NIS+ fixes - - allow overriding rfc3484 address sorting tables for getaddrinfo - through /etc/gai.conf (sample config file included in %%doc directory) - -* Mon May 1 2006 Jakub Jelinek 2.4.90-4 -- update from CVS - - SETENT_BATCH_READ /etc/default/nss option for speeding up - some usages of NIS+ (#188246) - - move debug state change notification (#179208) - - fix ldd script if one of the dynamic linkers is not installed (#190259) - -* Thu Apr 27 2006 Jakub Jelinek 2.4.90-3 -- update from CVS - - fix a typo in nscd.conf (#190085) - - fix handling of SIGHUP in nscd when some caches are disabled (#189978) - - make nscd paranoia mode working with non-root server-user (#189779) - -* Wed Apr 26 2006 Jakub Jelinek 2.4.90-2 -- update from CVS - - fix getaddrinfo (#190002) - - add auto-propagate nscd.conf options (#177154) - - fix nscd auditing (#169148) - -* Tue Apr 25 2006 Jakub Jelinek 2.4.90-1 -- update from CVS - -* Mon Apr 24 2006 Jakub Jelinek 2.4-6 -- update from CVS - - NIS+ fixes - - don't segfault on too large argp key values (#189545) - - getaddrinfo fixes for RFC3484 (#188364) - -* Tue Mar 28 2006 Jakub Jelinek 2.4-5 -- update from CVS - - pshared robust mutex support - - fix btowc and bwtoc in C++ (#186410) - - fix NIS+ (#186592) - - don't declare __wcsto*l_internal for non-GCC or if not -O1+ (#185667) -- don't mention nscd failures on 2.0 kernels (#185335) - -* Tue Mar 7 2006 Roland McGrath 2.4-4 -- back up %%{ix86} gdb conflicts to < 6.3.0.0-1.111 - -* Tue Mar 7 2006 Jakub Jelinek 2.4-3 -- really fix rintl on ppc64 - -* Tue Mar 7 2006 Jakub Jelinek 2.4-2 -- accurate unwind info for lowlevellock.h stubs on %%{ix86} -- fix ppc/ppc64 ceill, floorl, rintl, roundl and truncl (BZ#2423) - -* Mon Mar 6 2006 Jakub Jelinek 2.4-1 -- update from CVS - - glibc 2.4 release - -* Mon Mar 6 2006 Jakub Jelinek 2.3.91-2 -- update from CVS - - fix sYSMALLOc for MALLOC_ALIGNMENT > 2 * SIZE_SZ (#183895) - - revert ppc32 malloc alignment patch, it breaks malloc_set_state - and needs some further thoughts and time (#183894) -- provide accurate unwind info for lowlevellock.h stubs on x86_64 - -* Thu Mar 2 2006 Jakub Jelinek 2.3.91-1 -- update from CVS - - fixes for various arches -- ensure malloc returns pointers aligned to at least - MIN (2 * sizeof (size_t), __alignof__ (long double)) - (only on ppc32 this has not been the case lately with addition - of 128-bit long double, #182742) - -* Wed Mar 1 2006 Jakub Jelinek 2.3.90-39 -- update from CVS - -* Fri Feb 17 2006 Jakub Jelinek 2.3.90-38 -- update from CVS - - robust mutexes rewrite - -* Mon Feb 13 2006 Jakub Jelinek 2.3.90-37 -- update from CVS - - *at fixes - - unshare syscall wrapper - -* Sat Feb 4 2006 Jakub Jelinek 2.3.90-36 -- update from CVS - - fix frequency setting for ITIMER_PROF (#179938, BZ#2268) - - fix powerpc inline fegetround () - - fix nptl_db (#179946) - -* Fri Feb 3 2006 Jakub Jelinek 2.3.90-35 -- update from CVS - - handle futimesat (fd, NULL, tvp) as futimes (fd, tvp) -- fix q{e,f,g}cvt{,_r} for -mlong-double-64 - -* Thu Feb 2 2006 Jakub Jelinek 2.3.90-34 -- fix with C++ and -mlong-double-64 (#179742) -- add nexttowardl redirect for -mlong-double-64 - -* Thu Feb 2 2006 Jakub Jelinek 2.3.90-33 -- update from CVS - - long double support fixes - -* Wed Feb 1 2006 Jakub Jelinek 2.3.90-32 -- update from CVS - - 128-bit long double fixes for ppc{,64}, s390{,x} and sparc{,v9}, - alpha 128-bit long double support -- add inotify syscall numbers to the override headers - (#179366) - -* Mon Jan 30 2006 Jakub Jelinek 2.3.90-31 -- update from CVS - - 128-bit long double on ppc, ppc64, s390, s390x and sparc{,v9} -- add some new syscall numbers to the override - headers - -* Mon Jan 9 2006 Jakub Jelinek 2.3.90-30 -- update from CVS - - initializer fixes for -std=c{8,9}9 on 32-bit - arches -- avoid writable .rodata (#177121) - -* Fri Jan 6 2006 Jakub Jelinek 2.3.90-29 -- update from CVS - - make pthread_mutex_t an unnamed union again, as it affects - libstdc++ ABI mangling - -* Fri Jan 6 2006 Jakub Jelinek 2.3.90-28 -- update from CVS - - make aio_suspend interruptible by signals (#171968) - -* Fri Jan 6 2006 Jakub Jelinek 2.3.90-27 -- only rely on d_type in 32-bit getdents on s390 for 2.6.11+ - -* Wed Jan 4 2006 Jakub Jelinek 2.3.90-26 -- update from CVS - - for newly linked lio_listio* callers, send per request - notifications (#170116) - - fixup nscd -S option removal changes (#176860) - - remove nonnull attribute from ctermid (#176753) - - fix PTHREAD_*_INITIALIZER{,_NP} on 64-bit arches - - SPARC NPTL support for pre-v9 CPUs -- drop support for 2.4.xx and < 2.6.9 kernels - -* Mon Jan 2 2006 Jakub Jelinek 2.3.90-25 -- update from CVS - - s390{,x} and sparc{,64} pointer mangling fixes -- install a sanitized LinuxThreads - -* Mon Jan 2 2006 Jakub Jelinek 2.3.90-24 -- update from CVS - - nscd audit changes (#174422) - - ppc{32,64} vDSO support and ppc32 hp-timing - -* Tue Dec 27 2005 Jakub Jelinek 2.3.90-23 -- update from CVS - - robust mutexes -- fix transliteration segfaults (#176573, #176583) -- ignore prelink temporaries in ldconfig (#176570) - -* Wed Dec 21 2005 Jakub Jelinek 2.3.90-22 -- update from CVS - - minor fts fixes -- revert broken _Pragma () workaround -- fix ldconfig on bi-arch architectures (#176316) - -* Tue Dec 20 2005 Jakub Jelinek 2.3.90-21 -- update from CVS - - fix pointer (de)mangling in gconv_cache.c - -* Tue Dec 20 2005 Jakub Jelinek 2.3.90-20 -- update from CVS - - time ((void *) 1) should segfault, not return -EFAULT (#174856, BZ#1952) - - fix errlist generation -- update ulps for GCC 4.1 on IA-64 - -* Mon Dec 19 2005 Jakub Jelinek 2.3.90-19 -- update from CVS - - sysdeps/generic reorg - - setjmp/longjmp jump pointer mangling -- rebuilt with GCC 4.1-RH prerelease, worked around broken _Pragma () - handling in it -- remove glibc-profile subpackage -- use non-PLT calls for malloc/free/realloc/memalign invocations in - mtrace and mcheck hooks (#175261) -- setjmp/longjmp jump pointer mangling on ppc{,64}/ia64/s390{,x} - -* Sat Nov 19 2005 Jakub Jelinek 2.3.90-18 -- update from CVS - - change for broken apps that #define const /**/, - handle non-GCC compilers - - fix ppc{32,64} strncmp (BZ#1877, #173643, IT#83510) - - provide shmatt_t typedef in ia64 2.3.90-17 -- update from CVS - - fix in C++ - - {fstat,fchown,rename,unlink}at fixes - - epoll_wait is now a cancellation point - -* Tue Nov 15 2005 Jakub Jelinek 2.3.90-16 -- update from CVS -- make sure waitid syscall is used on ppc*/s390* - -* Thu Oct 20 2005 Jakub Jelinek 2.3.90-15 -- update from CVS - - be permissive in %%n check because of kernel bug #165351 (#171240) - - don't misalign stack in pthread_once on x86_64 (#170786, IT#81521) - - many locale fixes - -* Mon Oct 10 2005 Jakub Jelinek 2.3.90-14 -- update from CVS - - fix malloc bug after fork introduced in the last update - - fix getent hosts IP for IPv4 IPs (#169831) - -* Mon Oct 3 2005 Jakub Jelinek 2.3.90-13 -- update from CVS - - fix setuid etc. hangs if some thread exits during the call (#167766) - - fix innetgr memory leak (#169051) - - support > 2GB nscd log files (#168851) - - too many other changes to list here -- include errno in nscd message if audit_open failed (#169148) - -* Mon Sep 12 2005 Jakub Jelinek 2.3.90-12 -- update from CVS - - netgrp handling fixes (#167728) - - fix memory leak in setlocale (BZ#1318) - - fix hwcaps computation - - several regex portability improvements (#167019) - - hypotf fix - - fix *printf return code if underlying write fails (BZ#1146) - - PPC64 dl{,v}sym fixes for new ABI .opd symbols -- fix calloc with MALLOC_PERTURB_ in environment on 64-bit architectures - (#166719) -- source /etc/sysconfig/nscd (if it exists) in /etc/rc.d/init.d/nscd - (#167083) -- add %%triggerin for tzdata to glibc-common, so that tzdata updates - update /etc/localtime and /var/spool/postfix/etc/localtime if they - exist (#167787) - -* Mon Aug 29 2005 Jakub Jelinek 2.3.90-11 -- FUTEX_WAKE_OP support to speed up pthread_cond_signal - -* Wed Aug 24 2005 Jakub Jelinek 2.3.90-10 -- update from CVS - - fix growing of nscd persistent database (BZ#1204) - - fix _FORTIFY_SOURCE mbstowcs and wcstombs if destination size - is known at compile time, but length argument is not - -* Mon Aug 22 2005 Jakub Jelinek 2.3.90-9 -- update from CVS - - fix resolving over TCP (#161181, #165802) - - on ia64 don't abort on unhandled math function exception codes - (#165693) - -* Mon Aug 8 2005 Jakub Jelinek 2.3.90-8 -- update from CVS - - nscd persistent database verifier (#164001) - - cleanup _FORTIFY_SOURCE bits/*.h headers (#165000) - - handle EINTR in sigwait properly -- make sure poor man's stack guard randomization keeps first - byte 0 even on big-endian 32-bit arches -- fix {elf,nptl}/tst-stackguard1 -- obsolete linuxthreads-devel in glibc-devel - -* Fri Jul 29 2005 Jakub Jelinek 2.3.90-7 -- update from CVS -- do some poor man's stack guard randomization even without - the costly --enable-stackguard-randomization -- rebuilt with new GCC to make it use -msecure-plt on PPC32 - -* Mon Jul 25 2005 Jakub Jelinek 2.3.90-6 -- update from CVS - - fix execvp if PATH is not in environment and the call is going - to fail (BZ#1125) - - another bits/wchar2.h fix (#163990) - -* Fri Jul 22 2005 Jakub Jelinek 2.3.90-5 -- update from CVS - - fix stubs.h generation -- don't use _G_va_list in bits/wchar2.h - -* Fri Jul 22 2005 Jakub Jelinek 2.3.90-4 -- update from CVS - - make sure bits/wchar2.h header is installed - - fix __getgroups_chk return type - -* Thu Jul 21 2005 Jakub Jelinek 2.3.90-3 -- update from CVS - - make sure nscd cmsg buffers aren't misaligned, handle EINTR from - poll when contacting nscd more gracefully - - remove malloc attribute from posix_memalign - - correctly size nscd buffer for grpcache key (#163538) - - fix atan2f - - fix error memory leaks - - some more _FORTIFY_SOURCE protection - -* Fri Jul 8 2005 Jakub Jelinek 2.3.90-2 -- update from CVS - - ia64 stack protector support - - handle DNS referral results as server errors (#162625) - - ctan{,h}{,f,l} fixes (#160759) - - pass argc, argv and envp also to executable's *ni_array - functions (BZ#974) - - add ellipsis to clone prototype (#161593) - - fix glibc-profile (#162601) - - nss_compat fixes -- use sysdeps/generic version of in installed - headers instead of NPTL version (#162634) - -* Mon Jun 27 2005 Jakub Jelinek 2.3.90-1 -- update from CVS - - stack protector support - - fix xdr_{,u_}{longlong_t,hyper} on 64-bit arches (#161583) -- enable @GLIBC_2.4 symbols -- remove linuxthreads - -* Mon Jun 20 2005 Jakub Jelinek 2.3.5-11 -- update from CVS - - PPC32 -msecure-plt support - - support classes keyword in /etc/hesiod.conf (#150350) - - add RLIMIT_NICE and RLIMIT_RTPRIO to (#157049) - - decrease number of .plt relocations in libc.so - - use -laudit in nscd (#159217) - - handle big amounts of networking interfaces in getifaddrs/if_nameindex - (#159399) - - fix pa_IN locale's am_pm (#158715, BZ#622) - - fix debugging of PIEs - -* Mon May 30 2005 Jakub Jelinek 2.3.5-10 -- fix LD_ASSUME_KERNEL (since 2.3.5-8 GLRO(dl_osversion) - has been always overwritten with the version of currently - running kernel) -- remove linuxthreads man pages other than those covered in - 3p section, as 3p man pages are far better quality and describe - POSIX behaviour that NPTL implements (#159084) - -* Tue May 24 2005 Jakub Jelinek 2.3.5-9 -- update from CVS - - increase bindresvport's LOWPORT to 512, apparently some - broken daemons don't think 0 .. 511 ports are reserved - -* Mon May 23 2005 Jakub Jelinek 2.3.5-8 -- update from CVS - - fix kernel version check in ld.so -- fix sendfile{,64} prototypes (BZ#961) -- try more ports in bindresvport if all 600..1023 are - used, don't use priviledged ports when talking to portmap - (#141773) - -* Fri May 20 2005 Jakub Jelinek 2.3.5-7 -- update from CVS - - make regexec thread safe (BZ#934) -- fix statically linked programs on i?86, x86_64, s390* and - sparc* (#158027) -- fix IBM939 iconv module (BZ#955) - -* Wed May 4 2005 Jakub Jelinek 2.3.5-6 -- update from CVS - - fix cancellation on i?86 - - add call frame information to i?86 assembly - -* Tue May 3 2005 Jakub Jelinek 2.3.5-5 -- update from CVS - - add some more UTF-8 locales (#156115) -- clean up /lib64/tls instead of /lib/tls on x86-64, s390x and - ppc64 in glibc_post_upgrade (#156656) -- fix posix_fallocate{,64} (#156289) - -* Thu Apr 28 2005 Jakub Jelinek 2.3.5-4 -- update from CVS - - fix nscd cache pruning (#150748) - -* Wed Apr 27 2005 Jakub Jelinek 2.3.5-3 -- update from CVS - - fix linuxthreads clocks -- put xen libs into the glibc-2*.i686 package instead of a separate one -- fix librt.so symlink in linuxthreads-devel -- do not include linuxthreads-devel on %%{auxarches}, - just on the base architectures - -* Wed Apr 27 2005 Jakub Jelinek 2.3.5-2 -- update from CVS - - with MALLOC_CHECK_=N N>0 (#153003) - - fix recursive dlclose (#154641) - - handle %%z in strptime (#154804) - - automatically append /%%{_lib}/obsolete/linuxthreads/ - to standard library search path if LD_ASSUME_KERNEL=N N <= 2.4.19 - or for glibc 2.0 binaries (or broken ones that don't use errno/h_errno - properly). Warning: all those will stop working when LinuxThreads - is finally nuked, which is not very far away - - remove nonnull attribute from acct prototype (BZ#877) - - kernel CPU clocks support - - fix *scanf in locales with multi-byte decimal point - -* Wed Apr 27 2005 Roland McGrath -- glibc-xen subpackage for i686 - -* Fri Apr 15 2005 Roland McGrath 2.3.5-1 -- update from CVS - - fix execvp regression (BZ#851) - - ia64 libm updates - - sparc updates - - fix initstate{,_r}/strfry (#154504) - - grok PT_NOTE in vDSO for kernel version and extra hwcap dirs, - support "hwcap" keyword in ld.so.conf files - -* Tue Apr 5 2005 Jakub Jelinek 2.3.4-21 -- update from CVS - - fix xdr_rmtcall_args on 64-bit arches (#151686) -- fix and with -std=c89 -fexceptions (#153774) - -* Mon Apr 4 2005 Jakub Jelinek 2.3.4-20 -- move LinuxThreads libraries to /%%{_lib}/obsolete/linuxthreads/ - and NPTL libraries to /%%{_lib}. To run a program against LinuxThreads, - LD_ASSUME_KERNEL=2.4.xx LD_LIBRARY_PATH=/%%{_lib}/obsolete/linuxthreads/ - is now needed -- bzip2 ChangeLog* files instead of gzipping them - -* Sat Apr 2 2005 Jakub Jelinek 2.3.4-19 -- update from CVS - - fix nextafterl and several other libm routines on ia64 - - fix initgroups (BZ#661) -- kill nptl-devel subpackage, add linuxthreads-devel, - compile and link by default against NPTL and only with - -I/usr/include/linuxthreads -L/usr/%%{_lib}/linuxthreads - against LinuxThreads -- package /usr/lib/debug/%%{_lib}/tls/i{5,6}86 symlinks in - i386 glibc-debuginfo -- limit number of ChangeLog* files in glibc-common %%doc - to last 2.5 years of changes only to save space - -* Fri Mar 25 2005 Jakub Jelinek 2.3.4-18 -- fix build on 64-bit arches with new GCC - -* Thu Mar 24 2005 Jakub Jelinek 2.3.4-17 -- update from CVS - - fix LD_AUDIT in LinuxThreads ld.so - - fix calloc with M_PERTURB - - fix error handling in pthread_create with PTHREAD_EXPLICIT_SCHED - on ppc*/ia64/alpha/mips (BZ#801) - - fix a typo in WINDOWS-31J charmap (#151739) - - fix NIS ypprot_err (#151469) - -* Sun Mar 20 2005 Jakub Jelinek 2.3.4-16 -- fix pread with -D_FILE_OFFSET_BITS=64 (#151573) - -* Sat Mar 19 2005 Jakub Jelinek 2.3.4-15 -- update from CVS - - better fix for the dlclose bug (#145810, #150414) - - fix regex crash on case insensitive search in zh_CN locale - (#151215) - - fix malloc_trim (BZ#779) - - with -D_FORTIFY_SOURCE=*, avoid defining read and a bunch of others - as function-like macros, there are too many broken programs - out there -- add %%dir %%{_prefix}/%%{_lib}/gconv to glibc's file list (#151372) - -* Sun Mar 6 2005 Roland McGrath 2.3.4-14 -- fix bits/socket2.h macro typos - -* Sat Mar 5 2005 Jakub Jelinek 2.3.4-12 -- fix tst-chk{2,3} -- fix up AS_NEEDED directive in /usr/%%{_lib}/libc.so -- BuildReq binutils >= 2.15.94.0.2-1 for AS_NEEDED, in - glibc-devel Conflict with binutils < 2.15.94.0.2-1 - -* Thu Mar 3 2005 Jakub Jelinek 2.3.4-11 -- update from CVS - - fix execvp (#149290) - - fix dlclose (#145810) - - clear padding in gconv-modules.cache (#146614, BZ#776) -- rebuilt with GCC4 -- changed __GLIBC_MINOR__ for now back to 3 -- back out the newly added GLIBC_2.4 *_chk routines, instead - do the checking in macros - -* Sat Feb 12 2005 Jakub Jelinek 2.3.4-10 -- hopefully fix interaction with prelink (#147655) - -* Fri Feb 11 2005 Jakub Jelinek 2.3.4-9 -- update from CVS - - bi-arch (BZ#715) - -* Fri Feb 11 2005 Jakub Jelinek 2.3.4-8 -- update from CVS - - bi-arch (BZ#632) - - fix libdl on s390 and maybe other platforms - - fix initstate{,_r} (BZ#710) - - fix generation (BZ#157) -- define CMSPAR in bits/termios.h (#147533) - -* Tue Feb 8 2005 Jakub Jelinek 2.3.4-7 -- update from CVS - - fix TLS handling in linuxthreads - -* Tue Feb 8 2005 Jakub Jelinek 2.3.4-6 -- update from CVS - - ld.so auditing - - fix segfault if chrooted app attempts to dlopen a library - and no standard library directory exists at all (#147067, #144303) - - fix initgroups when nscd is running, but has group caching disabled - (#146588) - - fix pthread_key_{create,destroy} in LinuxThreads when pthread_create - has not been called yet (#146710) - - fix ppc64 swapcontext and setcontext (#146736, BZ#700) - - service nscd cosmetic fixes (#146776) - - fix IA-32 and x86-64 stack alignment in DSO constructors (#145689) - - fix zdump -v segfaults on x86-64 (#146210) - - avoid calling sigaction (SIGPIPE, ...) inside syslog (#146021, IT#56686) - - fix errno values for futimes (BZ#633) - - unconditionally include in malloc.h (BZ#650) - - change regex \B handling to match old GNU regex as well as perl/grep's dfa - (from empty string inside of word to empty string not at a word boundary, - BZ#693) - - slightly optimize i686 TLS accesses, use direct TLS %%gs access in sem_* - and allow building -mno-tls-direct-seg-refs glibc that is free of direct TLS - %%gs access with negative offsets - - fix addseverity - - fix fmemopen - - fix rewinddir - - increase svc{tcp,unix}_create listen backlog - -* Thu Jan 6 2005 Jakub Jelinek 2.3.4-5 -- update from CVS - - add some warn_unused_result marking - - make ftruncate available even for just -D_POSIX_C_SOURCE=200112L - (BZ#640) - -* Thu Jan 6 2005 Jakub Jelinek 2.3.4-4 -- update from CVS - - fix IA-32 stack alignment for LinuxThreads thread functions - and functions passed to clone(2) directly - - fix ecvt{,_r} on denormals (#143279) - - fix __tls_get_addr typo - - fix rounding in IA-64 alarm (#143710) - - don't reinitialize __environ in __libc_start_main, so that - effects of setenv/putenv done in DSO initializers are preserved - (#144037, IT#57403) - - fix fmemopen - - fix vDSO l_map_end and l_text_end values - - IA64 libm update (#142494) -- fix ppc rint/ceil etc. (BZ#602) - -* Tue Dec 21 2004 Jakub Jelinek 2.3.4-3 -- rebuilt - -* Mon Dec 20 2004 Jakub Jelinek 2.3.4-2 -- work around rpm bug some more, this time by copying - iconvconfig to iconvconfig.%%{_target_cpu}. - -* Mon Dec 20 2004 Jakub Jelinek 2.3.4-1 -- update from CVS - - glibc 2.3.4 release - - add -o and --nostdlib options to iconvconfig -- if /sbin/ldconfig doesn't exist when running - glibc_post_upgrade.%%{_target_cpu}, just don't attempt to run it. - This can happen during first install of bi-arch glibc and the - other arch glibc's %%post wil run /sbin/ldconfig (#143326) -- use -o and --nostdlib options to create all needed - gconv-modules.cache files on bi-arch setups - -* Sun Dec 19 2004 Jakub Jelinek 2.3.3-99 -- rebuilt - -* Sat Dec 18 2004 Jakub Jelinek 2.3.3-98 -- add .%%{_target_cpu} to glibc_post_upgrade, only run telinit u - if /sbin/init is the same ELF class and machine as - glibc_post_upgrade.%%{_target_cpu} and similarly with - condrestarting sshd (#143046) - -* Fri Dec 17 2004 Jakub Jelinek 2.3.3-97 -- update from CVS - - fix ppc64 getcontext and swapcontext (BZ#610) - - sparc/sparc64 fixes - -* Wed Dec 15 2004 Jakub Jelinek 2.3.3-96 -- update from CVS - - fix i686 __USE_STRING_INLINES strncat - - make sure ppc/ppc64 maintain correct stack alignment - across clone - -* Wed Dec 15 2004 Jakub Jelinek 2.3.3-95 -- export nis_domain_of_r from libnsl.so again which was - unintentionally lost - -* Wed Dec 15 2004 Jakub Jelinek 2.3.3-93 -- update from CVS - - ppc/ppc64 clone without CLONE_THREAD getpid () adjustement - - fix MALLOC_CHECK_={1,2,3} for non-contiguous main arena - (BZ#457) - - fix sysconf (_POSIX_V6_*) for other ABI environments in - bi-arch setups -- s390/s390x clone without CLONE_THREAD getpid () adjustement - -* Tue Dec 14 2004 Jakub Jelinek 2.3.3-92 -- update from CVS -- fix %%{_prefix}/libexec/getconf filenames generation - -* Tue Dec 14 2004 Jakub Jelinek 2.3.3-91 -- update from CVS - - double buffer size in getXXbyYY or getXXent on ERANGE - instead of adding BUFLEN (#142617) - - avoid busy loop in malloc if another thread is doing fork - (#142214) - - some more realloc corruption checks - - fix getconf _POSIX_V6_WIDTH_RESTRICTED_ENVS output, - tweak %%{_prefix}/libexec/getconf/ filenames - -* Fri Dec 10 2004 Jakub Jelinek 2.3.3-90 -- update from CVS - - regex speedups - - use | cat in ldd if running under bash3+ to allow running - it on binaries that are not through SELinux allowed to access - console or tty -- add __NR_waitid defines for alpha and ia64 - -* Wed Dec 8 2004 Jakub Jelinek 2.3.3-89 -- update from CVS - - fix clone2 on ia64 - - avoid tst-timer5 failing with linuxthreads implementation -- if __libc_enable_secure, disallow mode != normal -- change ldd script to imply -r when -u is used, properly - propagate return value and handle suid binaries - -* Tue Dec 7 2004 Jakub Jelinek 2.3.3-88 -- update from CVS - - disregard LD_SHOW_AUXV and LD_DYNAMIC_WEAK if __libc_enable_secure - - disregard LD_DEBUG if __libc_enable_secure in normal mode - if /suid-debug doesn't exist - - fix fseekpos after ungetc - - avoid reading bytes before start of buffers in regex's - check_dst_limits_calc_pos_1 (#142060) - - make getpid () working with clone/clone2 without CLONE_THREAD - (so far on i386/x86_64/ia64 only) -- move %%{_prefix}/libexec/getconf/* to glibc from glibc-common -- make %%{_prefix}/libexec/getconf directory owned by glibc package - -* Fri Dec 3 2004 Jakub Jelinek 2.3.3-87 -- update from CVS - - build libpthread_nonshared.a objects with -fPIC on s390/s390x - - fix mktime with < 0 or > 59 tm_sec on entry - - remove nonnull attribute for realpath - - add $(make-target-directory) for errlist-compat.c rule - (hopefully fix #141404) -- add testcase for ungetc bug -- define _POSIX_{,THREAD_}CPUTIME to 0 on all Linux arches - -* Tue Nov 30 2004 Jakub Jelinek 2.3.3-86 -- update from CVS - - some posix_opt.h fixes -- fix strtold use of unitialized memory (#141000) -- some more bugfixes for bugs detected by valgrind -- rebuilt with GCC >= 3.4.3-5 to avoid packed stack layout - on s390{,x} (#139678) - -* Fri Nov 26 2004 Jakub Jelinek 2.3.3-85 -- update from CVS - - support -v specification in getconf - - fix sysconf (_SC_LFS64_CFLAGS) etc. - - avoid thread stack aliasing issues on EM64T (#140803) -- move %%{_prefix}/include/nptl headers from nptl-devel - to glibc-headers, so that even NPTL specific programs - can be built bi-arch without problems - -* Wed Nov 24 2004 Jakub Jelinek 2.3.3-84 -- update from CVS - - fix memory leak in getaddrinfo if using nscd (#139559) - - handle large lines in /etc/hosts and /etc/networks - (#140378) - - add nonnull attributes to selected dirent.h and dlfcn.h - functions - -* Sun Nov 21 2004 Jakub Jelinek 2.3.3-83 -- update from CVS - - add deprecated and/or nonnull attribute to some signal.h - functions - - speed up tzset () by only using stat instead of open/fstat - when calling tzset for the second and following time if - /etc/localtime has not changed -- fix tgamma (BZ #552) - -* Sat Nov 20 2004 Jakub Jelinek 2.3.3-82 -- update from CVS - - some malloc () checking - - libpthread.a object dependency cleanups (#115157) - - fix for -std=c89 -pedantic-errors (#140132) - -* Fri Nov 19 2004 Jakub Jelinek 2.3.3-81 -- don't use chunksize in <= 2 * SIZE_SZ free () checks - -* Fri Nov 19 2004 Jakub Jelinek 2.3.3-80 -- update from CVS - - with -D_FORTIFY_SOURCE=2, prevent missing %%N$ formats - - for -D_FORTIFY_SOURCE=2 and %%n in writable format string, - issue special error message instead of using the buffer overflow - detected one - - speedup regex searching with REG_NOSUB, add RE_NO_SUB, - speedup searching with nested subexps (BZ #544) - - block SIGCANCEL in NPTL timer_* helper thread -- further free () checking - -* Tue Nov 16 2004 Jakub Jelinek 2.3.3-79 -- update from CVS -- fix free () checking -- move /etc/default/nss into glibc-common (hopefully fix #132392) - -* Mon Nov 15 2004 Jakub Jelinek 2.3.3-78 -- update from CVS - - fix LD_DEBUG=statistics - - issue error message before aborting in __chk_fail () -- some more free () checking - -* Fri Nov 12 2004 Jakub Jelinek 2.3.3-77 -- update from CVS - - speedup regex on palindromes (BZ #429) - - fix NPTL set{,e,re,res}[ug]id, so that even if making process - less priviledged all threads change their credentials successfully - -* Wed Nov 10 2004 Jakub Jelinek 2.3.3-76 -- update from CVS - - fix regcomp crash (#138439) - - fix ftell{,o,o64} (#137885) - - robustification of nscd to cope with corrupt databases (#137140) - - fix NPTL with pthread_exit immediately after pthread_create (BZ #530) - - some regex optimizations - -* Tue Nov 2 2004 Jakub Jelinek 2.3.3-75 -- update from CVS - - mktime cleanups (BZ #487, #473) - - unique comments in free(3) check error messages -- adjust some x86_64 headers for -m32 (#129712) -- object size checking support even with GCC-3.4.2-RH >= 3.4.2-8 - -* Wed Oct 27 2004 Jakub Jelinek 2.3.3-74 -- fix header -- fix globfree (#137176) -- fix exiting if there are dlmopened libraries in namespaces - other than main one not closed yet -- export again _res_opcodes and __p_{class,type}_syms from - libresolv.so that were lost in -69 - -* Thu Oct 21 2004 Jakub Jelinek 2.3.3-73 -- remove setaltroot and key{_add,_request,ctl} also from Versions -- back out _sys_errlist changes - -* Thu Oct 21 2004 Jakub Jelinek 2.3.3-72 -- back out setaltroot and key{_add,_request,ctl} addition -- fix severe x86-64 symbol versioning regressions that breaks - e.g. java binaries - -* Wed Oct 20 2004 Jakub Jelinek 2.3.3-71 -- update from CVS - - fix minor catchsegv temp file handling vulnerability - (CAN-2004-0968, #136319) - - add 4 new errno codes - - setaltroot, key{_add,_request,ctl} syscalls on some arches - - export _dl_debug_state@GLIBC_PRIVATE from ld.so again for - gdb purpose - - use inet_pton to decide what is address and what is hostname - in getent (#135422) - - change dladdr/dladdr1, so that dli_saddr is the same kind - of value as dlsym/dlvsym return (makes difference on ia64/hppa only) - - fix catchsegv script so that it works with both 32-bit and 64-bit - programs on multi-arch platforms - -* Tue Oct 19 2004 Jakub Jelinek 2.3.3-70 -- update from CVS -- require newer selinux-policy (#135978) -- add %%dir for /var/run/nscd and /var/db/nscd and %%ghost - files in it -- conflict with gcc4 4.0.0-0.6 and earlier (needs __builtin_object_size) - -* Mon Oct 18 2004 Jakub Jelinek 2.3.3-69 -- update from CVS - - object size checking support (-D_FORTIFY_SOURCE={1,2}) - -* Thu Oct 14 2004 Jakub Jelinek 2.3.3-68 -- update from CVS - - support for namespaces in the dynamic linker - - fix dlclose (BZ #77) - - libSegFault.so uses now backtrace() to work on IA-64, x86-64 - and s390 (#130254) - -* Tue Oct 12 2004 Jakub Jelinek 2.3.3-67 -- update from CVS - - use non-blocking sockets in resolver (#135234) - - reset pd->res options on thread exit, so that threads - reusing cached stacks get resolver state properly initialized - (BZ #434) - -* Wed Oct 6 2004 Jakub Jelinek 2.3.3-66 -- update from CVS -- avoid using perl in the spec file, buildrequire sed >= 3.95 - (#127671) -- export TIMEOUTFACTOR=16 -- fix _JMPBUF_CFA_UNWINDS_ADJ on s390{,x} - -* Tue Oct 5 2004 Jakub Jelinek 2.3.3-65 -- update from CVS - - define _POSIX_THREAD_PROCESS_SHARED and _POSIX_CLOCK_SELECTION - to -1 in LinuxThreads - - define _POSIX_CPUTIME and _POSIX_THREAD_CPUTIME to 0 - on i?86/ia64 and make sure sysconf (_SC_{,THREAD_}CPUTIME) - returns correct value -- if _POSIX_CLOCK_SELECTION == -1 in nscd, still try - sysconf (_SC_CLOCK_SELECTION) and if it returns true, - dlopen libpthread.so and dlsym pthread_condattr_setclock -- build nscd with -z relro and -z now - -* Mon Oct 4 2004 Jakub Jelinek 2.3.3-64 -- update from CVS - - stop using __builtin_expect in assert and assert_perror - (#127606) - - try to avoid too much VA fragmentation with malloc - on flexmap layout (#118574) - - nscd robustification - - change valloc to use debugging hooks (#134385) -- make glibc_post_upgrade more verbose on errors (Fergal Daly, - #125700) - -* Fri Oct 1 2004 Jakub Jelinek 2.3.3-63 -- update from CVS - - fix __nscd_getgrouplist - - fix a typo in x86_64 pthread_mutex_timedwait fix - -* Fri Oct 1 2004 Jakub Jelinek 2.3.3-62 -- update from CVS - - fix NPTL pthread_mutex_timedwait on i386/x86_64 (BZ #417) - -* Thu Sep 30 2004 Jakub Jelinek 2.3.3-61 -- update from CVS - - some nscd fixes (#134193) - - cache initgroups in nscd (#132850) - - reread /etc/localtime in tzset () even if just mtime changed - (#133481) - - fix glob (#126460) - - another get_myaddress fix - -* Wed Sep 29 2004 Jakub Jelinek 2.3.3-60 -- update from CVS - - fix get_myaddress (#133982) - - remove nonnull attribute from second utime argument (#133866) - - handle SIGSETXID the same way as SIGCANCEL in - sigaction/pthread_kill/sigwait/sigwaitinfo etc. - - add __extension__ to long long types in NPTL - -* Mon Sep 27 2004 Jakub Jelinek 2.3.3-59 -- update from CVS - - fix BZ #151, #362, #381, #407 - - fdim fix for +inf/+inf (BZ #376) - -* Sun Sep 26 2004 Jakub Jelinek 2.3.3-58 -- update from CVS - - vasprintf fix (BZ #346) - - gettext locking (BZ #322) -- change linuxthreads useldt.h inclusion login again, the last - one failed all linuxthreads FLOATING_STACKS tests - -* Sat Sep 25 2004 Jakub Jelinek 2.3.3-57 -- update from CVS - - fix setuid in LD_ASSUME_KERNEL=2.2.5 libc (#133558) - - fix nis locking (#132204) - - RTLD_DEEPBIND support - - fix pthread_create bugs (BZ #401, #405) - -* Wed Sep 22 2004 Roland McGrath 2.3.3-56 -- migrated CVS to fedora-branch in sources.redhat.com glibc repository - - source tarballs renamed - - redhat/ moved to fedora/, some old cruft removed -- update from trunk - - some __nonnull annotations - -* Wed Sep 22 2004 Jakub Jelinek 2.3.3-55 -- update from CVS - - set{re,e,res}[ug]id now affect the whole process in NPTL - - return EAGAIN instead of ENOMEM when not enough memory - in pthread_create - -* Fri Sep 17 2004 Jakub Jelinek 2.3.3-54 -- update from CVS - - nscd getaddrinfo caching - -* Tue Sep 14 2004 Jakub Jelinek 2.3.3-53 -- restore temporarily old definition of __P()/__PMT() - for third party apps - -* Tue Sep 14 2004 Jakub Jelinek 2.3.3-52 -- update from CVS - - nscd bi-arch fix - - remove all uses of __P()/__PMT() from glibc headers -- update and reenable nscd SELinux patch -- remove libnss1* and libnss*.so.1 compatibility NSS modules - on IA-32, SPARC and Alpha - -* Fri Sep 10 2004 Jakub Jelinek 2.3.3-51 -- update from CVS - - disable one of the malloc double free checks for non-contiguous - arenas where it doesn't have to be true even for non-broken - apps - -* Thu Sep 9 2004 Jakub Jelinek 2.3.3-50 -- update from CVS - - pwd/grp/host loops with nscd speed up by sharing the - nscd cache r/o with applications - - inexpensive double free check in free(3) - - make NPTL pthread.h initializers usable even from C++ - (BZ #375) -- use atomic instructions even in i386 nscd on i486+ CPUs - (conditionally) - -* Fri Sep 3 2004 Jakub Jelinek 2.3.3-49 -- update from CVS -- fix linuxthreads tst-cancel{[45],-static} - -* Fri Sep 3 2004 Jakub Jelinek 2.3.3-48 -- update from CVS - - fix pthread_cond_destroy (BZ #342) - - fix fnmatch without FNM_NOESCAPE (BZ #361) - - fix ppc32 setcontext (BZ #357) -- add NPTL support for i386 glibc (only if run on i486 or higher CPU) -- add __NR_waitid defines for i386, x86_64 and sparc* - -* Tue Aug 31 2004 Jakub Jelinek 2.3.3-47 -- update from CVS - - persistent nscd caching - - ppc64 32-bit atomicity fix - - fix x86-64 nptl-devel headers for -m32 compilation -- %%ghost /etc/ld.so.cache (#130597) -- edit /etc/ld.so.conf in glibc_post_upgrade if - include ld.so.conf.d/*.conf line is missing (#120588) -- ugly hacks for the IA-64 /emul braindamage (#124996, #128267) - -* Sat Aug 21 2004 Jakub Jelinek 2.3.3-46 -- update from CVS - -* Thu Aug 19 2004 Jakub Jelinek 2.3.3-45 -- update from CVS - - fix nss_compat's initgroups handling (#130363) - - fix getaddrinfo ai_canonname setting - -* Thu Aug 19 2004 Jakub Jelinek 2.3.3-44 -- update from CVS - - add ip6-dotint resolv.conf option, make - no-ip6-dotint the default -- BuildPrereq libselinux-devel (#129946) -- on ppc64, build without dot symbols - -* Thu Aug 12 2004 Jakub Jelinek 2.3.3-43 -- update from CVS - - remove debugging printout (#129747) - - make usable in C++ (IT#45148) -- update RLIMIT_* constants in , make - POSIX compliant (#129740) - -* Wed Aug 11 2004 Jakub Jelinek 2.3.3-42 -- fix last tzset () fixes, disable rereading of /etc/localtime - every time for now -- really enable SELinux support for NSCD - -* Wed Aug 11 2004 Jakub Jelinek 2.3.3-41 -- update from CVS - - fread_unlocked/fwrite_unlocked macro fixes (BZ #309, #316) - - tzset () fixes (BZ #154) -- speed up pthread_rwlock_unlock on arches other than i386 and - x86_64 (#129455) -- fix compilation with -ansi (resp. -std=c89 or -std=c99) and - -D_XOPEN_SOURCE=[56]00 but no -D_POSIX_SOURCE* or -D_POSIX_C_SOURCE* - (BZ #284) -- add SELinux support for NSCD - -* Fri Aug 6 2004 Jakub Jelinek 2.3.3-40 -- update from CVS - - change res_init to force all threads to re-initialize - resolver before they use it next time (#125712) - - various getaddrinfo and related fixes (BZ #295, #296) - - fix IBM{932,943} iconv modules (#128674) - - some nscd fixes (e.g. BZ #292) - - RFC 3678 support (Multicast Source Filters) -- handle /lib/i686/librtkaio-* in i386 glibc_post_upgrade - the same as /lib/i686/librt-* - -* Fri Jul 23 2004 Jakub Jelinek 2.3.3-39 -- update from CVS - - conformance related changes in headers -- remove -finline-limit=2000 for GCC 3.4.x+ - -* Thu Jul 22 2004 Jakub Jelinek 2.3.3-38 -- update from CVS - - fix res_init leaks - - fix newlocale races - - fix ppc64 setjmp -- fix strtold (BZ #274) - -* Fri Jul 16 2004 Jakub Jelinek 2.3.3-37 -- update from CVS - - allow pthread_cancel in DSO destructors run at exit time -- fix pow{f,,l} on IA-32 and powl on x86-64 -- allow PIEs on IA-32 to have main in a shared library they depend on - -* Mon Jul 5 2004 Jakub Jelinek 2.3.3-36 -- s390* .plt slot reduction -- fix pthread_rwlock_timedrdlock on x86_64 - -* Wed Jun 30 2004 Jakub Jelinek 2.3.3-35 -- tweak spec file for the libpthread-0.61.so -> libpthread-2.3.3.so - NPTL changes - -* Wed Jun 30 2004 Jakub Jelinek 2.3.3-34 -- update from CVS - - if_nameindex using preferably netlink - - printf_parsemb initialization fix - - NPTL version is now the same as glibc version - -* Mon Jun 28 2004 Jakub Jelinek 2.3.3-33 -- update from CVS - - reread resolv.conf for nscd --invalidate=hosts - - fix F_GETLK/F_SETLK/F_SETLKW constants on x86_64 for - -m32 -D_FILE_OFFSET_BITS=64 compilations - - avoid calling non-existing fcntl64 syscall on ppc64 - -* Mon Jun 14 2004 Jakub Jelinek 2.3.3-32 -- update from CVS - - FUTEX_CMP_REQUEUE support (fix pthread_cond_* deadlocks) - - fix backtrace in statically linked programs -- rebuilt with GCC 3.4, adjusted ulps and i386 - -* Fri May 28 2004 Jakub Jelinek 2.3.3-31 -- update from CVS -- and changes for GCC 3.{2,4,5}+ -- make c_stubs buildable even with GCC 3.2.x (#123042) - -* Fri May 21 2004 Jakub Jelinek 2.3.3-30 -- fix pthread_cond_wait on architectures other than IA-32 and - x86_64 - -* Thu May 20 2004 Jakub Jelinek 2.3.3-29 -- use lib64 instead of lib on ia64 if %%{_lib} is defined to lib64 - -* Wed May 19 2004 Jakub Jelinek 2.3.3-28 -- update from CVS - - FUTEX_REQUEUE fixes (#115349) - - SPARC GCC 3.4 build fix - - fix handling of undefined TLS symbols on IA32 (RELA only), - SPARC and SH - - regex translate fix - - speed up sprintf - - x86_64 makecontext alignment fix - - make POSIX sigpause the default sigpause, unless BSD sigpause - requested - -* Tue May 11 2004 Jakub Jelinek 2.3.3-27 -- remove /lib64/tls/librtkaio-2.3.[23].so in glibc_post_upgrade - on x86-64, s390x and ppc64 instead of /lib/tls/librtkaio-2.3.[23].so -- build mq_{send,receive} with -fexceptions - -* Fri May 7 2004 Jakub Jelinek 2.3.3-26 -- update from CVS - - fix - - fix memory leaks in nis, getifaddrs, etc. caused by incorrect - use of realloc -- remove /lib/{tls,i686}/librtkaio-2.3.[23].so in glibc_post_upgrade - and rerun ldconfig if needed, otherwise after glibc upgrade librt.so.1 - might be a stale symlink - -* Wed May 5 2004 Jakub Jelinek 2.3.3-25 -- update from CVS -- disable FUTEX_REQUEUE (work around #115349) -- mq for sparc/sparc64/ia64 - -* Tue May 4 2004 Jakub Jelinek 2.3.3-24 -- update from CVS - - define S_ISSOCK in -D_XOPEN_SOURCE=600 and S_I[FS]SOCK - plus F_[SG]ETOWN also in -D_XOPEN_SOURCE=500 (both - included already in XNS5) - - reorder dlopen checks, so that dlopening ET_REL objects - complains about != ET_DYN != ET_EXEC, not about phentsize - (#121606) - - fix strpbrk macro for GCC 3.4+ (BZ #130) - - fix (BZ #140) - - sched_[gs]etaffinity documentation fix (BZ #131) - - fix sparc64 build (BZ #139) - - change linuxthreads back to use non-cancellable writes - to manager pipes etc. - - fix sem_timedwait return value in linuxthreads (BZ #133) - - ia64 unnecessary PLT relocs removal - -* Thu Apr 22 2004 Jakub Jelinek 2.3.3-23 -- update from CVS - - fix *scanf - - fix shm_unlink, sem_unlink and mq_unlink errno values - - avoid memory leaks in error - - execstack fixes on s390 - -* Mon Apr 19 2004 Jakub Jelinek 2.3.3-22 -- update from CVS - - mq and timer fixes -- rebuilt with binutils >= 2.15.90.0.3-2 to fix IA-64 statically - linked binaries -- fix linuxthreads librt.so on s390{,x}, so it is no longer DT_TEXTREL - -* Sat Apr 17 2004 Jakub Jelinek 2.3.3-21 -- disable rtkaio -- update from CVS - - POSIX message passing support - - fixed SIGEV_THREAD support for POSIX timers - - fix free on non-malloced memory in syslog - - fix ffsl on some 64-bit arches - - fix sched_setaffinity on x86-64, ia64 - - fix ppc64 umount - - NETID_AUTHORITATIVE, SERVICES_AUTHORITATIVE support - - various NIS speedups - - fix fwrite with > 2GB sizes on 64-bit arches - - fix pthread_getattr_np guardsize reporting in NPTL -- report PLT relocations in ld.so and libc.so during the build - -* Thu Mar 25 2004 Jakub Jelinek 2.3.3-20 -- update from CVS - - change NPTL PTHREAD_MUTEX_ADAPTIVE_NP mutexes to spin on SMP - - strtol speed optimization - - don't try to use certainly unimplemented syscalls on ppc64 -- kill -debug subpackage, move the libs to glibc-debuginfo{,-common} - into /usr/lib/debug/usr/%%{_lib}/ directory -- fix c_stubs with gcc 3.4 -- move all the up to 3 builds into %%build scriptlet and - leave only installation in the %%install scriptlet - -* Mon Mar 22 2004 Jakub Jelinek 2.3.3-19 -- update from CVS - - affinity API changes - -* Thu Mar 18 2004 Jakub Jelinek 2.3.3-18 -- update from CVS - - fix ia64 iopl (#118591) - - add support for /etc/ld.so.conf.d/*.conf - - fix x86-64 LD_DEBUG=statistics -- fix hwcap handling when using ld.so.cache (#118518) - -* Mon Mar 15 2004 Jakub Jelinek 2.3.3-17 -- update from CVS - - implement non-_l function on top of _l functions - -* Thu Mar 11 2004 Jakub Jelinek 2.3.3-16 -- update from CVS -- fix s390{,x} TLS handling - -* Wed Mar 10 2004 Jakub Jelinek 2.3.3-15 -- update from CVS - - special section for compatibility code - - make getpid () work even in vfork () child -- configure with --enable-bind-now to avoid lazy binding in ld.so - and libc.so - -* Fri Mar 5 2004 Jakub Jelinek 2.3.3-14 -- update from CVS - - fix iconv -c (#117021) - - fix PIEs on sparc/sparc64 - - fix posix_fadvise on 64-bit architectures -- add locale-archive as %%ghost file (#117014) - -* Mon Mar 1 2004 Jakub Jelinek 2.3.3-13 -- update from CVS - -* Fri Feb 27 2004 Jakub Jelinek 2.3.3-12 -- update from CVS - -* Fri Feb 27 2004 Jakub Jelinek 2.3.3-11 -- update from CVS - - fix ld.so when vDSO is randomized - -* Fri Feb 20 2004 Jakub Jelinek 2.3.3-10 -- update from CVS - -* Fri Feb 20 2004 Jakub Jelinek 2.3.3-9 -- update from CVS - -* Tue Feb 10 2004 Jakub Jelinek 2.3.3-8 -- update from CVS - -* Tue Jan 27 2004 Jakub Jelinek 2.3.3-7 -- update from CVS - - dl_iterate_phdr extension to signal number of added/removed - libraries -- fix PT_GNU_RELRO support on ppc* with prelinking - -* Fri Jan 23 2004 Jakub Jelinek 2.3.3-6 -- rebuilt with fixed GCC on IA-64 - -* Thu Jan 22 2004 Jakub Jelinek 2.3.3-5 -- fix PT_GNU_RELRO support - -* Wed Jan 21 2004 Jakub Jelinek 2.3.3-4 -- update from CVS - - some further regex speedups - - fix re.translate handling in regex (#112869) - - change regfree to match old regex behaviour (what is freed - and clearing of freed pointers) - - fix accesses to unitialized memory in regex (#113507, #113425, - #113421) - - PT_GNU_RELRO support - -* Tue Dec 30 2003 Jakub Jelinek 2.3.3-3 -- update from CVS - - fix pmap_set fd and memory leak (#112726) -- fix backreference handling in regex -- rebuilt under glibc without the above bug to fix - libc.so linker script (#112738) - -* Mon Dec 29 2003 Jakub Jelinek 2.3.3-2 -- update from CVS - - faster getpid () in NPTL builds - - fix to make pthread_setcancelstate (PTHREAD_CANCEL_DISABLE, ) - really disable cancellation (#112512) - - more regex fixes and speedups - - fix nextafter*/nexttoward* - - handle 6th syscall(3) argument on AMD64 - - handle memalign/posix_memalign in mtrace - - fix linuxthreads memory leak (#112208) - - remove throw () from cancellation points in linuxthreads (#112602) - - fix NPTL unregister_atfork - - fix unwinding through alternate signal stacks - -* Mon Dec 1 2003 Jakub Jelinek 2.3.3-1 -- update from CVS - - 2.3.3 release - - lots of regex fixes and speedups (#110401) - - fix atan2 - - fix pshared condvars in NPTL - - fix pthread_attr_destroy for attributes created with - pthread_attr_init@GLIBC_2.0 -- for the time being, include both nb_NO* and no_NO* as locales - so that the distribution can catch up with the no_NO->nb_NO - transition -- add BuildPrereq texinfo (#110252) - -* Tue Nov 18 2003 Jakub Jelinek 2.3.2-102 -- update from CVS - - fix getifaddrs (CAN-2003-0859) - - fix ftw fd leak - - fix linuxthreads sigaction (#108634) - - fix glibc 2.0 stdio compatibility - - fix uselocale (LC_GLOBAL_LOCALE) - - speed up stdio locking in non-threaded programs on IA-32 - - try to maintain correct order of cleanups between those - registered with __attribute__((cleanup)) - and with LinuxThreads style pthread_cleanup_push/pop (#108631) - - fix segfault in regex (#109606) - - fix RE_ICASE multi-byte handling in regex - - fix pthread_exit in libpthread.a (#109790) - - FTW_ACTIONRETVAL support - - lots of regex fixes and speedups - - fix ceill/floorl on AMD64 - -* Mon Oct 27 2003 Jakub Jelinek 2.3.2-101 -- update from CVS - - fix ld.so --verify (and ldd) - -* Mon Oct 27 2003 Jakub Jelinek 2.3.2-100 -- update from CVS - - fix sprof (#103727) - - avoid infinite loops in {,f}statvfs{,64} with hosed mounts file - - prevent dlopening of executables - - fix glob with GLOB_BRACE and without GLOB_NOESCAPE - - fix locale printing of word values on 64-bit big-endian arches - (#107846) - - fix getnameinfo and getaddrinfo with reverse IPv6 lookups - (#101261) - -* Wed Oct 22 2003 Jakub Jelinek 2.3.2-99 -- update from CVS - - dl_iterate_phdr in libc.a on arches other than IA-64 - - LD_DEBUG=statistics prints number of relative relocations - - fix hwcap computation -- NPTL is now part of upstream glibc CVS -- include {st,xh,zu}_ZA{,.UTF-8} locales - -* Sat Oct 4 2003 Jakub Jelinek 2.3.2-98 -- update from CVS - - fix close, pause and fsync (#105348) - - fix pthread_once on IA-32 -- implement backtrace () on IA-64, handle -fomit-frame-pointer - in AMD64 backtrace () (#90402) - -* Tue Sep 30 2003 Jakub Jelinek 2.3.2-97 -- update from CVS - - fix with C++ or -ansi or -pedantic C - - fix mknod/ustat return value when given bogus device number (#105768) - -* Fri Sep 26 2003 Jakub Jelinek 2.3.2-96 -- rebuilt - -* Fri Sep 26 2003 Jakub Jelinek 2.3.2-95 -- fix IA-64 getcontext - -* Thu Sep 25 2003 Jakub Jelinek 2.3.2-94 -- update from CVS -- fix syslog with non-C non-en_* locales (#61296, #104979) -- filter GLIBC_PRIVATE symbols from glibc provides -- fix NIS+ - -* Thu Sep 25 2003 Jakub Jelinek 2.3.2-93 -- update from CVS -- assume 2.4.21 kernel features on RHEL/ppc*, so that - {make,set,get,swap}context works -- backout execstack support for RHEL -- build rtkaio on amd64 too - -* Wed Sep 24 2003 Jakub Jelinek 2.3.2-92 -- update from CVS - - execstack/noexecstack support - - build nscd as PIE -- move __libc_stack_end back to @GLIBC_2.1 -- build against elfutils >= 0.86 to fix stripping on s390x - -* Mon Sep 22 2003 Jakub Jelinek 2.3.2-91 -- rebuilt - -* Mon Sep 22 2003 Jakub Jelinek 2.3.2-90 -- update from CVS - - NPTL locking change (#102682) -- don't jump around lock on amd64 - -* Thu Sep 18 2003 Jakub Jelinek 2.3.2-89 -- fix open_memstream/syslog (#104661) - -* Thu Sep 18 2003 Jakub Jelinek 2.3.2-88 -- update from CVS - - retrieve affinity in pthread_getattr_np - - fix pthread_attr_[gs]etaffinity_np - - handle hex and octal in wordexp - -* Wed Sep 17 2003 Jakub Jelinek 2.3.2-87 -- update from CVS - - truncate instead of round in utimes when utimes syscall is not available - - don't align stack in every glibc function unnecessarily on IA-32 - - make sure threads have their stack 16 byte aligned on IA-32 - - move sched_[sg]etaffinity to GLIBC_2.3.3 symbol version (#103231) - - fix pthread_getattr_np for the initial thread (#102683) - - avoid linuxthreads signal race (#104368) -- ensure all gzip invocations are done with -n option - -* Fri Sep 12 2003 Jakub Jelinek 2.3.2-86 -- update from CVS -- avoid linking in libgcc_eh.a unnecessarily -- change ssize_t back to long int on s390 -m31, unless - gcc 2.95.x is used - -* Wed Sep 10 2003 Jakub Jelinek 2.3.2-85 -- update from CVS - - fix IA-64 memccpy (#104114) - -* Tue Sep 9 2003 Jakub Jelinek 2.3.2-84 -- update from CVS - - undo broken amd64 signal context changes - -* Tue Sep 9 2003 Jakub Jelinek 2.3.2-83 -- update from CVS -- change *nlink_t, *ssize_t and *intptr_t types on s390 -m31 to - {unsigned,} int -- change *u_quad_t, *quad_t, *qaddr_t, *dev_t, *ino64_t, *loff_t, - *off64_t, *rlim64_t, *blkcnt64_t, *fsblkcnt64_t, *fsfilcnt64_t - on 64-bit arches from {unsigned,} long long int {,*} to - {unsigned,} long int {,*} to restore binary compatibility - for C++ functions using these types as arguments - -* Sun Sep 7 2003 Jakub Jelinek 2.3.2-82 -- rebuilt - -* Sat Sep 6 2003 Jakub Jelinek 2.3.2-81 -- update from CVS - - fix tc[gs]etattr/cf[gs]et[io]speed on ppc (#102732) - - libio fixes - -* Thu Sep 4 2003 Jakub Jelinek 2.3.2-80 -- update from CVS - - fix IA-64 cancellation when mixing __attribute__((cleanup ())) - and old-style pthread_cleanup_push cleanups - -* Tue Sep 2 2003 Jakub Jelinek 2.3.2-79 -- updated from CVS - - lots of cancellation fixes - - fix posix_fadvise* on ppc32 - - TLS layout fix - - optimize stdio cleanups (#103354) - - sparcv9 NPTL - - include sigset, sighold, sigrelse, sigpause and sigignore prototypes - in signal.h even if -D_XOPEN_SOURCE_EXTENDED (#103269) - - fix svc_getreqset on 64-bit big-endian arches - - return ENOSYS in linuxthreads pthread_barrierattr_setpshared for - PTHREAD_PROCESS_SHARED - - add pthread_cond_timedwait stubs to libc.so (#102709) -- split glibc-devel into glibc-devel and glibc-headers to ensure - amd64 /usr/include always wins on amd64/i386 bi-arch installs -- increase PTHREAD_STACK_MIN on alpha, ia64 and sparc* -- get rid of __syscall_* prototypes and stubs in sysdeps/unix/sysv/linux -- run make check also with linuxthreads (on IA-32 non-FLOATING_STACKS) - ld.so and NPTL (on IA-32 also FLOATING_STACKS linuxthreads) libraries - and tests - -* Mon Aug 25 2003 Jakub Jelinek 2.3.2-78 -- include dl-osinfo.h only in glibc-debuginfo-2*.rpm, not - in glibc-debuginfo-common* - -* Mon Aug 25 2003 Jakub Jelinek 2.3.2-77 -- update from CVS - - fix glibc 2.0 libio compatibility (#101385) - - fix ldconfig with /usr/lib/lib*.so symlinks (#102853) - - fix assert.h (#102916, #103017) - - make ld.so.cache identical between IA-32 and AMD64 (#102887) - - fix static linking of large IA-64 binaries (#102586) -- avoid using floating point regs in lazy binding code on ppc64 (#102763) - -* Fri Aug 22 2003 Roland McGrath 2.3.2-76 -- add td_thr_tls_get_addr changes missed in initial nptl_db rewrite - -* Sun Aug 17 2003 Roland McGrath 2.3.2-74 -- nptl_db rewrite not yet in CVS - -* Thu Aug 14 2003 Jakub Jelinek 2.3.2-72 -- update from CVS - - fix rtkaio aio_fsync{,64} - - update rtkaio for !BROKEN_THREAD_SIGNALS - - fix assert macro when used on pointers - -* Wed Aug 13 2003 Jakub Jelinek 2.3.2-71 -- update from CVS - -* Tue Aug 12 2003 Jakub Jelinek 2.3.2-70 -- update from CVS -- disable CLONE_STOPPED for now until it is resolved -- strip crt files -- fix libio on arches with no < GLIBC_2.2 support (#102102, #102105) -- fix glibc-debuginfo to include all nptl and nptl_db sources - -* Thu Aug 7 2003 Jakub Jelinek 2.3.2-69 -- update from CVS - - fix pthread_create@GLIBC_2.0 (#101767) -- __ASSUME_CLONE_STOPPED on all arches but s390* in RHEL - -* Sun Aug 3 2003 Jakub Jelinek 2.3.2-68 -- update from CVS - - only use CLONE_STOPPED if kernel supports it, fix setting of thread - explicit scheduling (#101457) - -* Fri Aug 1 2003 Jakub Jelinek 2.3.2-67 -- update from CVS - - fix utimes and futimes if kernel doesn't support utimes syscall - - fix s390 ssize_t type - - fix dlerror when called before any dlopen/dlsym - - update IA-64 bits/sigcontext.h (#101344) - - various warning fixes - - fix pthread.h comment typos (#101363) - -* Wed Jul 30 2003 Jakub Jelinek 2.3.2-66 -- update from CVS -- fix dlopen of libraries using TLS IE/LE models - -* Tue Jul 29 2003 Jakub Jelinek 2.3.2-65 -- update from CVS - - fix timer_create - - use __extension__ before long long typedefs in (#100718) - -* Mon Jul 28 2003 Jakub Jelinek 2.3.2-64 -- update from CVS - - fix wcpncpy (#99462) - - export _res@GLIBC_2.0 even from NPTL libc.so (__res_state () - unlike __errno_location () or __h_errno_location () was introduced - in glibc 2.2) - - fix zic bug on 64-bit platforms - - some TLS handling fixes - - make ldconfig look into alternate ABI dirs by default (#99402) -- move %%{_datadir}/zoneinfo to tzdata package, so that it can be - errataed separately from glibc -- new add-on - rtkaio -- prereq libgcc, as glibc now relies on libgcc_s.so.1 for pthread_cancel - -* Tue Jul 15 2003 Jakub Jelinek 2.3.2-63 -- fix thread cancellation on ppc64 - -* Sat Jul 12 2003 Jakub Jelinek 2.3.2-62 -- update from CVS - - fix thread cancellation on ppc32, s390 and s390x - -* Thu Jul 10 2003 Jakub Jelinek 2.3.2-61 -- update from CVS - - build libc_nonshared.a with -fPIC instead of -fpic -- fix ppc64 PIE support -- add cfi directives to NPTL sysdep-cancel.h on ppc/ppc64/s390/s390x - -* Tue Jul 8 2003 Jakub Jelinek 2.3.2-60 -- update from CVS - -* Thu Jul 3 2003 Jakub Jelinek 2.3.2-59 -- update from CVS -- on IA-64 use different symbols for cancellation portion of syscall - handlers to make gdb happier - -* Thu Jun 26 2003 Jakub Jelinek 2.3.2-58 -- update from CVS - - nss_compat supporting LDAP etc. - -* Tue Jun 24 2003 Jakub Jelinek 2.3.2-57 -- update from CVS - -* Thu Jun 19 2003 Jakub Jelinek 2.3.2-56 -- fix condvars and semaphores in ppc* NPTL -- fix test-skeleton.c reporting of timed-out tests (#91269) -- increase timeouts for tests during make check - -* Wed Jun 18 2003 Jakub Jelinek 2.3.2-55 -- make ldconfig default to both /lib+/usr/lib and /lib64+/usr/lib64 - on bi-ABI architectures (#97557) -- disable FUTEX_REQUEUE on ppc* temporarily - -* Wed Jun 18 2003 Jakub Jelinek 2.3.2-54 -- update from CVS -- fix glibc_post_upgrade on ppc - -* Tue Jun 17 2003 Jakub Jelinek 2.3.2-53 -- update from CVS -- fix localedef (#90659) -- tweak linuxthreads for librt cancellation - -* Mon Jun 16 2003 Jakub Jelinek 2.3.2-52 -- update from CVS - -* Thu Jun 12 2003 Jakub Jelinek 2.3.2-51 -- update from CVS -- fix (#97169) - -* Wed Jun 11 2003 Jakub Jelinek 2.3.2-50 -- update from CVS - -* Tue Jun 10 2003 Jakub Jelinek 2.3.2-49 -- update from CVS - - fix pthread_cond_signal on IA-32 (#92080, #92253) - - fix setegid (#91567) -- don't prelink -R libc.so on any architecture, it prohibits - address randomization - -* Thu Jun 5 2003 Jakub Jelinek 2.3.2-48 -- update from CVS - - fix IA-64 NPTL build - -* Thu Jun 5 2003 Jakub Jelinek 2.3.2-47 -- update from CVS -- PT_GNU_STACK segment in binaries/executables and .note.GNU-stack - section in *.[oa] - -* Sun Jun 1 2003 Jakub Jelinek 2.3.2-46 -- update from CVS -- enable NPTL on AMD64 -- avoid using trampolines in localedef - -* Thu May 29 2003 Jakub Jelinek 2.3.2-45 -- enable NPTL on IA-64 - -* Thu May 29 2003 Jakub Jelinek 2.3.2-44 -- update from CVS -- enable NPTL on s390 and s390x -- make __init_array_start etc. symbols in elf-init.oS hidden undefined - -* Thu May 29 2003 Jakub Jelinek 2.3.2-43 -- update from CVS - -* Fri May 23 2003 Jakub Jelinek 2.3.2-42 -- update from CVS - -* Tue May 20 2003 Jakub Jelinek 2.3.2-41 -- update from CVS -- use NPTL libs if uname -r contains nptl substring or is >= 2.5.69 - or set_tid_address syscall is available instead of checking - AT_SYSINFO dynamic tag - -* Thu May 15 2003 Jakub Jelinek 2.3.2-40 -- update from CVS - -* Wed May 14 2003 Jakub Jelinek 2.3.2-39 -- update from CVS - - fix for prelinking of libraries with no dependencies - -* Tue May 13 2003 Jakub Jelinek 2.3.2-38 -- update from CVS -- enable NPTL on ppc and ppc64 - -* Tue May 6 2003 Matt Wilson 2.3.2-37 -- rebuild - -* Sun May 4 2003 Jakub Jelinek 2.3.2-36 -- update from CVS - -* Sat May 3 2003 Jakub Jelinek 2.3.2-35 -- update from CVS - - make -jN build fixes - -* Fri May 2 2003 Jakub Jelinek 2.3.2-34 -- update from CVS -- avoid using trampolines in iconvconfig for now - -* Sat Apr 26 2003 Jakub Jelinek 2.3.2-33 -- update from CVS - -* Fri Apr 25 2003 Jakub Jelinek 2.3.2-32 -- update from CVS -- more ppc TLS fixes - -* Wed Apr 23 2003 Jakub Jelinek 2.3.2-31 -- update from CVS - - nscd fixes - - fix Bahrain spelling (#56298) - - fix Ukrainian collation (#83973) - - accept trailing spaces in /etc/ld.so.conf (#86032) - - perror fix (#85994) - - fix localedef (#88978) - - fix getifaddrs (#89026) - - fix strxfrm (#88409) -- fix ppc TLS -- fix getaddrinfo (#89448) -- don't print warning about errno, h_errno or _res if - LD_ASSUME_KERNEL=2.4.1 or earlier - -* Tue Apr 15 2003 Jakub Jelinek 2.3.2-30 -- update from CVS -- fix prelink on ppc32 -- add TLS support on ppc32 and ppc64 -- make sure on -m64 arches all helper binaries are built with this - option - -* Mon Apr 14 2003 Jakub Jelinek 2.3.2-29 -- update from CVS - - fix strxfrm (#88409) -- use -m64 -mno-minimal-toc on ppc64 -- conflict with kernels < 2.4.20 on ppc64 and < 2.4.0 on x86_64 -- link glibc_post_upgrade against newly built libc.a - -* Sun Apr 13 2003 Jakub Jelinek 2.3.2-28 -- update from CVS - - fix NPTL pthread_detach and already terminated, but not yet - joined thread (#88219) - - fix bug-regex4 testcase (#88118) - - reenable prelink support broken in 2.3.2-13 - - fix register_printf_function (#88052) - - fix double free with fopen using ccs= (#88056) - - fix potential access below $esp in {set,swap}context (#88093) - - fix buffer underrun in gencat -H (#88099) - - avoid using unitialized variable in tst-tgmath (#88101) - - fix gammal (#88104) - - fix iconv -c - - fix xdr_string (PR libc/4999) - - fix /usr/lib/nptl/librt.so symlink - - avoid running NPTL cleanups twice in some cases - - unblock __pthread_signal_cancel in linuxthreads, so that - linuxthreads threaded programs work correctly if spawned - from NPTL threaded programs - - fix sysconf _SC_{NPROCESSORS_{CONF,ONLN},{,AV}PHYS_PAGES} -- remove /lib/i686 directory before running ldconfig in glibc post - during i686 -> i386 glibc "upgrades" (#88456) - -* Wed Apr 2 2003 Jakub Jelinek 2.3.2-22 -- update from CVS - - add pthread_atfork to libpthread.a - -* Tue Apr 1 2003 Jakub Jelinek 2.3.2-21 -- update from CVS -- make sure linuxthreads pthread_mutex_lock etc. is not a cancellation - point - -* Sat Mar 29 2003 Jakub Jelinek 2.3.2-20 -- update from CVS -- if kernel >= 2.4.1 doesn't support NPTL, fall back to - /lib/i686 libs on i686, not stright to /lib - -* Fri Mar 28 2003 Jakub Jelinek 2.3.2-19 -- update from CVS - - timers fixes - -* Thu Mar 27 2003 Jakub Jelinek 2.3.2-18 -- update from CVS -- fix NPTL pthread_cond_timedwait -- fix sysconf (_SC_MONOTONIC_CLOCK) -- use /%%{_lib}/tls instead of /lib/tls on x86-64 -- add /%%{_lib}/tls/librt*so* and /%%{_lib}/i686/librt*so* -- display content of .out files for all make check failures - -* Wed Mar 26 2003 Jakub Jelinek 2.3.2-17 -- update from CVS - - kernel POSIX timers support - -* Sat Mar 22 2003 Jakub Jelinek 2.3.2-16 -- update from CVS - - export __fork from glibc again -- fix glibc-compat build in NPTL -- fix c_stubs -- fix some more atomic.h problems -- don't check abi in glibc-compat libs - -* Fri Mar 21 2003 Jakub Jelinek 2.3.2-15 -- update from CVS -- build glibc-compat (for glibc 2.0 compatibility) and c_stubs add-ons -- condrestart sshd in glibc_post_upgrade so that the user can - log in remotely and handle the rest (#86339) -- fix a typo in glibc_post_upgrade on sparc - -* Tue Mar 18 2003 Jakub Jelinek 2.3.2-14 -- update from CVS -- change i686/athlon libc.so.6 base to 0x00e80000 - -* Mon Mar 17 2003 Jakub Jelinek 2.3.2-13 -- update from CVS - - hopefully last fix for condvar problems - -* Fri Mar 14 2003 Jakub Jelinek 2.3.2-12 -- fix bits/syscall.h creation on x86-64 - -* Thu Mar 13 2003 Jakub Jelinek 2.3.2-11 -- update from CVS - -* Wed Mar 12 2003 Jakub Jelinek 2.3.2-10 -- update from CVS - -* Tue Mar 11 2003 Jakub Jelinek 2.3.2-9 -- update from CVS -- fix glibc-debug description (#85111) -- make librt.so a symlink again, not linker script - -* Tue Mar 4 2003 Jakub Jelinek 2.3.2-8 -- update from CVS -- remove the workarounds for broken software accessing GLIBC_PRIVATE - symbols - -* Mon Mar 3 2003 Jakub Jelinek 2.3.2-7 -- update from CVS - -* Sun Mar 2 2003 Jakub Jelinek 2.3.2-6 -- fix TLS IE/LE model handling in dlopened libraries - on TCB_AT_TP arches - -* Tue Feb 25 2003 Jakub Jelinek 2.3.2-5 -- update from CVS - -* Tue Feb 25 2003 Jakub Jelinek 2.3.2-4 -- update from CVS - -* Mon Feb 24 2003 Jakub Jelinek 2.3.2-3 -- update from CVS -- only warn about errno, h_errno or _res for binaries, never - libraries -- rebuilt with gcc-3.2.2-4 to use direct %%gs TLS access insn sequences - -* Sun Feb 23 2003 Jakub Jelinek 2.3.2-2 -- update from CVS - -* Sat Feb 22 2003 Jakub Jelinek 2.3.2-1 -- update from CVS - -* Thu Feb 20 2003 Jakub Jelinek 2.3.1-51 -- update from CVS - -* Wed Feb 19 2003 Jakub Jelinek 2.3.1-50 -- update from CVS - -* Wed Feb 19 2003 Jakub Jelinek 2.3.1-49 -- update from CVS -- remove nisplus and nis from the default nsswitch.conf (#67401, #9952) - -* Tue Feb 18 2003 Jakub Jelinek 2.3.1-48 -- update from CVS - -* Sat Feb 15 2003 Jakub Jelinek 2.3.1-47 -- update from CVS - -* Fri Feb 14 2003 Jakub Jelinek 2.3.1-46 -- update from CVS - - pthread_cond* NPTL fixes, new NPTL testcases - -* Thu Feb 13 2003 Jakub Jelinek 2.3.1-45 -- update from CVS -- include also linuxthreads FLOATING_STACKS libs on i686 and athlon: - LD_ASSUME_KERNEL=2.2.5 to LD_ASSUME_KERNEL=2.4.0 is non-FLOATING_STACKS lt, - LD_ASSUME_KERNEL=2.4.1 to LD_ASSUME_KERNEL=2.4.19 is FLOATING_STACKS lt, - later is NPTL -- enable TLS on alpha/alphaev6 -- add BuildPreReq: /usr/bin/readlink - -* Tue Feb 11 2003 Jakub Jelinek 2.3.1-44 -- update from CVS - - pthread_once fix - -* Mon Feb 10 2003 Jakub Jelinek 2.3.1-43 -- update from CVS -- vfork fix on s390 -- rebuilt with binutils 2.13.90.0.18-5 so that accesses to errno - don't bind locally (#83325) - -* Thu Feb 06 2003 Jakub Jelinek 2.3.1-42 -- update from CVS -- fix pthread_create after vfork+exec in linuxthreads - -* Wed Feb 05 2003 Jakub Jelinek 2.3.1-41 -- update from CVS - -* Thu Jan 30 2003 Jakub Jelinek 2.3.1-40 -- update from CVS - -* Wed Jan 29 2003 Jakub Jelinek 2.3.1-39 -- update from CVS -- enable TLS on s390{,x} and sparc{,v9} - -* Fri Jan 17 2003 Jakub Jelinek 2.3.1-38 -- update from CVS -- initialize __environ in glibc_post_upgrade to empty array, - so that it is not NULL -- compat symlink for s390x /lib/ld64.so.1 -- enable glibc-profile on x86-64 -- only include libNoVersion.so on IA-32, Alpha and Sparc 32-bit - -* Thu Jan 16 2003 Jakub Jelinek 2.3.1-37 -- update from CVS - - nscd fixes, *scanf fix -- fix %%nptlarches noarch build (#81909) -- IA-64 TLS fixes - -* Tue Jan 14 2003 Jakub Jelinek 2.3.1-36 -- update from CVS -- rework -debuginfo subpackage, add -debuginfo-common - subpackage on IA-32, Alpha and Sparc (ie. auxiliary arches) -- fix vfork in libc.a on PPC32, Alpha, Sparc -- fix libio locks in linuxthreads libc.so if libpthread.so - is dlopened later (#81374) - -* Mon Jan 13 2003 Jakub Jelinek 2.3.1-35 -- update from CVS - - dlclose bugfixes -- fix NPTL libpthread.a -- fix glibc_post_upgrade on several arches - -* Sat Jan 11 2003 Jakub Jelinek 2.3.1-34 -- update from CVS -- TLS support on IA-64 - -* Wed Jan 8 2003 Jakub Jelinek 2.3.1-33 -- fix vfork in linuxthreads (#81377, #81363) - -* Tue Jan 7 2003 Jakub Jelinek 2.3.1-32 -- update from CVS -- don't use TLS libs if kernel doesn't set AT_SYSINFO - (#80921, #81212) -- add ntp_adjtime on alpha (#79996) -- fix nptl_db (#81116) - -* Sun Jan 5 2003 Jakub Jelinek 2.3.1-31 -- update from CVS -- support all architectures again - -* Fri Jan 3 2003 Jakub Jelinek 2.3.1-30 -- fix condvar compatibility wrappers -- add ugly hack to use non-TLS libs if a binary is seen - to have errno, h_errno or _res symbols in .dynsym - -* Fri Jan 3 2003 Jakub Jelinek 2.3.1-29 -- update from CVS - - fixes for new condvar - -* Thu Jan 2 2003 Jakub Jelinek 2.3.1-28 -- new NPTL condvar implementation plus related linuxthreads - symbol versioning updates - -* Thu Jan 2 2003 Jakub Jelinek 2.3.1-27 -- update from CVS -- fix #include with -D_BSD_SOURCE or without - feature set macros -- make *sigaction, sigwait and raise the same between - -lpthread -lc and -lc -lpthread in linuxthreads builds - -* Tue Dec 31 2002 Jakub Jelinek 2.3.1-26 -- fix dlclose - -* Sun Dec 29 2002 Jakub Jelinek 2.3.1-25 -- enable sysenter by default for now -- fix endless loop in ldconfig - -* Sat Dec 28 2002 Jakub Jelinek 2.3.1-24 -- update from CVS - -* Fri Dec 27 2002 Jakub Jelinek 2.3.1-23 -- update from CVS - - fix ptmalloc_init after clearenv (#80370) - -* Sun Dec 22 2002 Jakub Jelinek 2.3.1-22 -- update from CVS -- add IA-64 back -- move TLS libraries from /lib/i686 to /lib/tls - -* Thu Dec 19 2002 Jakub Jelinek 2.3.1-21 -- system(3) fix for linuxthreads -- don't segfault in pthread_attr_init from libc.so -- add cancellation tests from nptl to linuxthreads - -* Wed Dec 18 2002 Jakub Jelinek 2.3.1-20 -- fix up lists of exported symbols + their versions - from the libraries - -* Wed Dec 18 2002 Jakub Jelinek 2.3.1-19 -- fix --with-tls --enable-kernel=2.2.5 libc on IA-32 - -* Wed Dec 18 2002 Jakub Jelinek 2.3.1-18 -- update from CVS - - fix NPTL hanging mozilla - - initialize malloc in mALLOPt (fixes problems with squid, #79957) - - make linuxthreads work with dl_dynamic_weak 0 - - clear dl_dynamic_weak everywhere - -* Tue Dec 17 2002 Jakub Jelinek 2.3.1-17 -- update from CVS - - NPTL socket fixes, flockfile/ftrylockfile/funlockfile fix - - kill -debug sub-package, rename -debug-static to -debug - - clear dl_dynamic_weak for NPTL - -* Mon Dec 16 2002 Jakub Jelinek 2.3.1-16 -- fix and for C++ -- automatically generate NPTL libpthread wrappers - -* Mon Dec 16 2002 Jakub Jelinek 2.3.1-15 -- update from CVS - - all functions which need cancellation should now be cancellable - both in libpthread.so and libc.so - - removed @@GLIBC_2.3.2 cancellation wrappers - -* Fri Dec 13 2002 Jakub Jelinek 2.3.1-14 -- update from CVS - - replace __libc_lock_needed@GOTOFF(%%ebx) with - %%gs:offsetof(tcbhead_t, multiple_threads) - - start of new NPTL cancellation wrappers - -* Thu Dec 12 2002 Jakub Jelinek 2.3.1-13 -- update from CVS -- use inline locks in malloc - -* Tue Dec 10 2002 Jakub Jelinek 2.3.1-12 -- update from CVS - - support LD_ASSUME_KERNEL=2.2.5 in statically linked programs - -* Mon Dec 9 2002 Jakub Jelinek 2.3.1-11 -- update from CVS -- rebuilt with gcc-3.2.1-2 - -* Fri Dec 6 2002 Jakub Jelinek 2.3.1-10 -- update from CVS -- non-nptl --with-tls --without-__thread FLOATING_STACKS libpthread - should work now -- faster libc locking when using nptl -- add OUTPUT_FORMAT to linker scripts -- fix x86_64 sendfile (#79111) - -* Wed Dec 4 2002 Jakub Jelinek 2.3.1-9 -- update from CVS - - RUSCII support (#78906) -- for nptl builds add BuildRequires -- fix byteswap.h for non-gcc (#77689) -- add nptl-devel package - -* Tue Dec 3 2002 Jakub Jelinek 2.3.1-8 -- update from CVS - - make --enable-kernel=2.2.5 --with-tls --without-__thread - ld.so load nptl and other --with-__thread libs -- disable nptl by default for now - -* Wed Nov 27 2002 Jakub Jelinek 2.3.1-7 -- update from CVS -- restructured redhat/Makefile and spec, so that src.rpm contains - glibc-.tar.bz2, glibc-redhat-.tar.bz2 and glibc-redhat.patch -- added nptl - -* Fri Nov 8 2002 Jakub Jelinek 2.3.1-6 -- update from CVS - - even more regex fixes -- run sed testsuite to check glibc regex - -* Thu Oct 24 2002 Jakub Jelinek 2.3.1-5 -- fix LD_DEBUG=statistics and LD_TRACE_PRELINKING in programs - using libpthread.so. - -* Thu Oct 24 2002 Jakub Jelinek 2.3.1-4 -- update from CVS - - fixed %%a and %%A in *printf (#75821) - - fix re_comp memory leaking (#76594) - -* Tue Oct 22 2002 Jakub Jelinek 2.3.1-3 -- update from CVS - - some more regex fixes -- fix libpthread.a (#76484) -- fix locale-archive enlarging - -* Fri Oct 18 2002 Jakub Jelinek 2.3.1-2 -- update from CVS - - don't need to use 128K of stacks for DNS lookups - - regex fixes - - updated timezone data e.g. for this year's Brasil DST - changes - - expand ${LIB} in RPATH/RUNPATH/dlopen filenames - -* Fri Oct 11 2002 Jakub Jelinek 2.3.1-1 -- update to 2.3.1 final - - support really low thread stack sizes (#74073) -- tzdata update - -* Wed Oct 9 2002 Jakub Jelinek 2.3-2 -- update from CVS - - handle low stack limits - - move s390x into */lib64 - -* Thu Oct 3 2002 Jakub Jelinek 2.3-1 -- update to 2.3 final - - fix freopen on libstdc++ <= 2.96 stdin/stdout/stderr (#74800) - -* Sun Sep 29 2002 Jakub Jelinek 2.2.94-3 -- don't prelink -r libc.so on ppc/x86-64/sparc*, it doesn't - speed things up, because they are neither REL arches, nor - ELF_MACHINE_REL_RELATIVE -- fix sparc64 build - -* Sun Sep 29 2002 Jakub Jelinek 2.2.94-2 -- update from CVS - -* Sat Sep 28 2002 Jakub Jelinek 2.2.94-1 -- update from CVS -- prelink on ppc and x86-64 too -- don't remove ppc memset -- instead of listing on which arches to remove glibc-compat - list where it should stay - -* Fri Sep 6 2002 Jakub Jelinek 2.2.93-5 -- fix wcsmbs functions with invalid character sets (or malloc - failures) -- make sure __ctype_b etc. compat vars are updated even if - they are copy relocs in the main program - -* Thu Sep 5 2002 Jakub Jelinek 2.2.93-4 -- fix /lib/libnss1_dns.so.1 (missing __set_h_errno definition - leading to unresolved __set_h_errno symbol) - -* Wed Sep 4 2002 Jakub Jelinek 2.2.93-3 -- security fix - increase dns-network.c MAXPACKET to at least - 65536 to avoid buffer overrun. Likewise glibc-compat - dns-{host,network}.c. - -* Tue Sep 3 2002 Jakub Jelinek 2.2.93-2 -- temporarily add back __ctype_b, __ctype_tolower and __ctype_toupper to - libc.a and export them as @@GLIBC_2.0 symbols, not @GLIBC_2.0 - from libc.so - we have still lots of .a libraries referencing - __ctype_{b,tolower,toupper} out there... - -* Tue Sep 3 2002 Jakub Jelinek 2.2.93-1 -- update from CVS - - 2.2.93 release - - use double instead of single indirection in isXXX macros - - per-locale wcsmbs conversion state - -* Sat Aug 31 2002 Jakub Jelinek 2.2.92-2 -- update from CVS - - fix newlocale/duplocale/uselocale -- disable profile on x86_64 for now - -* Sat Aug 31 2002 Jakub Jelinek 2.2.92-1 -- update from CVS - - 2.2.92 release - - fix gettext after uselocale - - fix locales in statically linked threaded programs - - fix NSS - -* Thu Aug 29 2002 Jakub Jelinek 2.2.91-1 -- update from CVS - - 2.2.91 release - - fix fd leaks in locale-archive reader (#72043) -- handle EROFS in build-locale-archive gracefully (#71665) - -* Wed Aug 28 2002 Jakub Jelinek 2.2.90-27 -- update from CVS - - fix re_match (#72312) -- support more than 1024 threads - -* Fri Aug 23 2002 Jakub Jelinek 2.2.90-26 -- update from CVS - - fix i386 build - -* Thu Aug 22 2002 Jakub Jelinek 2.2.90-25 -- update from CVS - - fix locale-archive loading hang on some (non-primary) locales - (#72122, #71878) - - fix umount problems with locale-archives when /usr is a separate - partition (#72043) -- add LICENSES file - -* Fri Aug 16 2002 Jakub Jelinek 2.2.90-24 -- update from CVS - - only mmap up to 2MB of locale-archive on 32-bit machines - initially - - fix fseek past end + fread segfault with mmaped stdio -- include which is mistakenly not included - in glibc-devel on IA-32 - -* Fri Aug 16 2002 Jakub Jelinek 2.2.90-23 -- don't return normalized locale name in setlocale when using - locale-archive - -* Thu Aug 15 2002 Jakub Jelinek 2.2.90-22 -- update from CVS - - optimize for primary system locale -- localedef fixes (#71552, #67705) - -* Wed Aug 14 2002 Jakub Jelinek 2.2.90-21 -- fix path to locale-archive in libc reader -- build locale archive at glibc-common %%post time -- export __strtold_internal and __wcstold_internal on Alpha again -- workaround some localedata problems - -* Tue Aug 13 2002 Jakub Jelinek 2.2.90-20 -- update from CVS -- patch out set_thread_area for now - -* Fri Aug 9 2002 Jakub Jelinek 2.2.90-19 -- update from CVS -- GB18030 patch from Yu Shao -- applied Debian patch for getaddrinfo IPv4 vs. IPv6 -- fix regcomp (#71039) - -* Sun Aug 4 2002 Jakub Jelinek 2.2.90-18 -- update from CVS -- use /usr/sbin/prelink, not prelink (#70376) - -* Thu Jul 25 2002 Jakub Jelinek 2.2.90-17 -- update from CVS - -* Thu Jul 25 2002 Jakub Jelinek 2.2.90-16 -- update from CVS - - ungetc fix (#69586) - - fseek errno fix (#69589) - - change *etrlimit prototypes for C++ (#68588) -- use --without-tls instead of --disable-tls - -* Thu Jul 11 2002 Jakub Jelinek 2.2.90-15 -- set nscd user's shell to /sbin/nologin (#68369) -- fix glibc-compat buffer overflows (security) -- buildrequire prelink, don't build glibc's own copy of it (#67567) -- update from CVS - - regex fix (#67734) - - fix unused warnings (#67706) - - fix freopen with mmap stdio (#67552) - - fix realloc (#68499) - -* Tue Jun 25 2002 Bill Nottingham 2.2.90-14 -- update from CVS - - fix argp on long words - - update atime in libio - -* Sat Jun 22 2002 Jakub Jelinek 2.2.90-13 -- update from CVS - - a thread race fix - - fix readdir on invalid dirp - -* Wed Jun 19 2002 Jakub Jelinek 2.2.90-12 -- update from CVS - - don't use __thread in headers -- fix system(3) in threaded apps -- update prelink, so that it is possible to prelink -u libc.so.6.1 - on Alpha - -* Fri Jun 7 2002 Jakub Jelinek 2.2.90-11 -- update from CVS - - fix __moddi3 (#65612, #65695) - - fix ether_line (#64427) -- fix setvbuf with mmap stdio (#65864) -- --disable-tls for now, waiting for kernel -- avoid duplication of __divtf3 etc. on IA-64 -- make sure get*ent_r and _IO_wfile_jumps are exported (#62278) - -* Tue May 21 2002 Jakub Jelinek 2.2.90-10 -- update from CVS - - fix Alpha pthread bug with gcc 3.1 - -* Fri Apr 19 2002 Jakub Jelinek 2.2.5-35 -- fix nice - -* Mon Apr 15 2002 Jakub Jelinek 2.2.5-34 -- add relocation dependencies even for weak symbols (#63422) -- stricter check_fds check for suid/sgid binaries -- run make check at %%install time - -* Sat Apr 13 2002 Jakub Jelinek 2.2.5-33 -- handle Dec 31 1969 in mktime for timezones west of GMT (#63369) -- back out do-lookup.h change (#63261, #63305) -- use "memory" clobber instead all the fancy stuff in i386/i686/bits/string.h - since lots of compilers break on it -- fix sparc build with gcc 3.1 -- fix spec file for athlon - -* Tue Apr 9 2002 Jakub Jelinek 2.2.5-32 -- fix debugging of threaded apps (#62804) -- fix DST for Estonia (#61494) -- document that pthread_mutexattr_?etkind_np are deprecated - and pthread_mutexattr_?ettype should be used instead in man - pages (#61485) -- fix libSegFault.so undefined externals - -* Fri Apr 5 2002 Jakub Jelinek 2.2.5-31 -- temporarily disable prelinking ld.so, as some statically linked - binaries linked against debugging versions of old glibcs die on it - (#62352) -- fix for -std=c99 (#62516) -- fix ether_ntohost segfault (#62397) -- remove in glibc_post_upgrade on i386 all /lib/i686/libc-*.so, - /lib/i686/libm-*.so and /lib/i686/libpthread-*.so, not just current - version (#61633) -- prelink -r on alpha too - -* Thu Mar 28 2002 Jakub Jelinek 2.2.5-30 -- update GB18030 iconv module (Yu Shao) - -* Tue Mar 26 2002 Jakub Jelinek 2.2.5-29 -- features.h fix - -* Tue Mar 26 2002 Jakub Jelinek 2.2.5-28 -- update from CVS - - fix nscd with huge groups - - fix nis to not close fds it shouldn't -- rebuilt against newer glibc-kernheaders to use the correct - PATH_MAX -- handle .athlon.rpm glibc the same way as .i686.rpm -- add a couple of .ISO-8859-15 locales (#61908) -- readd temporarily currencies which were superceeded by Euro - into the list of accepted currencies by localedef to make - standard conformance testsuites happy -- temporarily moved __libc_waitpid back to make Sun JDK happy -- use old malloc code -- prelink i686/athlon ld.so and prelink -r i686/athlon libc.so - -* Thu Mar 14 2002 Jakub Jelinek 2.2.5-27 -- update from CVS - - fix DST handling for southern hemisphere (#60747) - - fix daylight setting for tzset (#59951) - - fix ftime (#60350) - - fix nice return value - - fix a malloc segfault -- temporarily moved __libc_wait, __libc_fork and __libc_stack_end - back to what they used to be exported at -- censorship (#60758) - -* Thu Feb 28 2002 Jakub Jelinek 2.2.5-26 -- update from CVS -- use __attribute__((visibility(...))) if supported, use _rtld_local - for ld.so only objects -- provide libc's own __{,u}{div,mod}di3 - -* Wed Feb 27 2002 Jakub Jelinek 2.2.5-25 -- switch back to 2.2.5, mmap stdio needs work - -* Mon Feb 25 2002 Jakub Jelinek 2.2.90-8 -- fix two other mmap stdio bugs (#60228) - -* Thu Feb 21 2002 Jakub Jelinek 2.2.90-7 -- fix yet another mmap stdio bug (#60145) - -* Tue Feb 19 2002 Jakub Jelinek 2.2.90-6 -- fix mmap stdio bug (seen on ld as File truncated error, #60043) -- apply Andreas Schwab's fix for pthread sigwait -- remove /lib/i686/ libraries in glibc_post_upgrade when - performing i386 glibc install - -* Thu Feb 14 2002 Jakub Jelinek 2.2.90-5 -- update to CVS -- added glibc-utils subpackage -- disable autoreq in glibc-debug -- readd %%lang() to locale files - -* Thu Feb 7 2002 Jakub Jelinek 2.2.90-4 -- update to CVS -- move glibc private symbols to GLIBC_PRIVATE symbol version - -* Wed Jan 9 2002 Jakub Jelinek 2.2.90-3 -- fix a sqrt bug on alpha which caused SHN_UNDEF $__full_ieee754_sqrt..ng - symbol in libm - -* Tue Jan 8 2002 Jakub Jelinek 2.2.90-2 -- add debug-static package - -* Mon Dec 31 2001 Jakub Jelinek 2.2.90-1 -- update from CVS -- remove -D__USE_STRING_INLINES -- add debug subpackage to trim glibc and glibc-devel size - -* Wed Oct 3 2001 Jakub Jelinek 2.2.4-19 -- fix strsep - -* Fri Sep 28 2001 Jakub Jelinek 2.2.4-18 -- fix a ld.so bug with duplicate searchlists in l_scope -- fix erfcl(-inf) -- turn /usr/lib/librt.so into linker script - -* Wed Sep 26 2001 Jakub Jelinek 2.2.4-17 -- fix a ld.so lookup bug after lots of dlopen calls -- fix CMSG_DATA for non-gcc non-ISOC99 compilers (#53984) -- prelinking support for Sparc64 - -* Fri Sep 21 2001 Jakub Jelinek 2.2.4-16 -- update from CVS to fix DT_SYMBOLIC -- prelinking support for Alpha and Sparc - -* Tue Sep 18 2001 Jakub Jelinek 2.2.4-15 -- update from CVS - - linuxthreads now retries if -1/EINTR is returned from - reading or writing to thread manager pipe (#43742) -- use DT_FILTER in librt.so (#53394) - - update glibc prelink patch so that it handles filters -- fix timer_* with SIGEV_NONE (#53494) -- make glibc_post_upgrade work on PPC (patch from Franz Sirl) - -* Mon Sep 10 2001 Jakub Jelinek 2.2.4-14 -- fix build on sparc32 -- 2.2.4-13 build for some reason missed some locales - on alpha/ia64 - -* Mon Sep 3 2001 Jakub Jelinek 2.2.4-13 -- fix iconvconfig - -* Mon Sep 3 2001 Jakub Jelinek 2.2.4-12 -- add fam to /etc/rpc (#52863) -- fix for C++ (#52960) -- fix perror - -* Mon Aug 27 2001 Jakub Jelinek 2.2.4-11 -- fix strnlen(x, -1) - -* Mon Aug 27 2001 Jakub Jelinek 2.2.4-10 -- doh, should only define __libc_rwlock_t - if __USE_UNIX98. - -* Mon Aug 27 2001 Jakub Jelinek 2.2.4-9 -- fix bits/libc-lock.h so that gcc can compile -- fix s390 build - -* Fri Aug 24 2001 Jakub Jelinek 2.2.4-8 -- kill stale library symlinks in ldconfig (#52350) -- fix inttypes.h for G++ < 3.0 -- use DT_REL*COUNT - -* Wed Aug 22 2001 Jakub Jelinek 2.2.4-7 -- fix strnlen on IA-64 (#50077) - -* Thu Aug 16 2001 Jakub Jelinek 2.2.4-6 -- glibc 2.2.4 final -- fix -lpthread -static (#51672) - -* Fri Aug 10 2001 Jakub Jelinek 2.2.4-5 -- doh, include libio/tst-swscanf.c - -* Fri Aug 10 2001 Jakub Jelinek 2.2.4-4 -- don't crash on catclose(-1) -- fix wscanf %%[] handling -- fix return value from swprintf -- handle year + %%U/%%W week + week day in strptime - -* Thu Aug 9 2001 Jakub Jelinek 2.2.4-3 -- update from CVS to - - fix strcoll (#50548) - - fix seekdir (#51132) - - fix memusage (#50606) -- don't make gconv-modules.cache %%config file, just don't verify - its content. - -* Mon Aug 6 2001 Jakub Jelinek -- fix strtod and *scanf (#50723, #50724) - -* Sat Aug 4 2001 Jakub Jelinek -- update from CVS - - fix iconv cache handling -- glibc should not own %%{_infodir}, %%{_mandir} nor %%{_mandir}/man3 (#50673) -- add gconv-modules.cache as emtpy config file (#50699) -- only run iconvconfig if /usr is mounted read-write (#50667) - -* Wed Jul 25 2001 Jakub Jelinek -- move iconvconfig from glibc-common into glibc subpackage, - call it from glibc_post_upgrade instead of common's post. - -* Tue Jul 24 2001 Jakub Jelinek -- turn off debugging printouts in iconvconfig - -* Tue Jul 24 2001 Jakub Jelinek -- update from CVS - - fix IA-32 makecontext - - make fflush(0) thread-safe (#46446) - -* Mon Jul 23 2001 Jakub Jelinek -- adjust prelinking DT_* and SHT_* values in elf.h -- update from CVS - - iconv cache - - make iconv work in SUID/SGID programs (#34611) - -* Fri Jul 20 2001 Jakub Jelinek -- update from CVS - - kill non-pic code in libm.so - - fix getdate - - fix some locales (#49402) -- rebuilt with binutils-2.11.90.0.8-5 to place .interp section - properly in libBrokenLocale.so, libNoVersion.so and libanl.so -- add floating stacks on IA-64, Alpha, Sparc (#49308) - -* Mon Jul 16 2001 Jakub Jelinek -- make /lib/i686 directory owned by glibc*.i686.rpm - -* Mon Jul 9 2001 Jakub Jelinek -- remove rquota.[hx] headers which are now provided by quota (#47141) -- add prelinking patch - -* Thu Jul 5 2001 Jakub Jelinek -- require sh-utils for nscd - -* Mon Jun 25 2001 Jakub Jelinek -- update from CVS (#43681, #43350, #44663, #45685) -- fix ro_RO bug (#44644) - -* Wed Jun 6 2001 Jakub Jelinek -- fix a bunch of math bugs (#43210, #43345, #43346, #43347, #43348, #43355) -- make rpc headers -ansi compilable (#42390) -- remove alphaev6 optimized memcpy, since there are still far too many - broken apps which call memcpy where they should call memmove -- update from CVS to (among other things): - - fix tanhl bug (#43352) - -* Tue May 22 2001 Jakub Jelinek -- fix #include with -D_XOPEN_SOURCE=500 on ia64 (#35968) -- fix a dlclose reldeps handling bug -- some more profiling fixes -- fix tgmath.h - -* Thu May 17 2001 Jakub Jelinek -- make ldconfig more quiet -- fix LD_PROFILE on i686 (#41030) - -* Wed May 16 2001 Jakub Jelinek -- fix the hardlink program, so that it really catches all files with - identical content -- add a s390x clone fix - -* Wed May 16 2001 Jakub Jelinek -- fix rpc for non-threaded apps using svc_fdset and similar variables (#40409) -- fix nss compatibility DSO versions for alphaev6 -- add a hardlink program instead of the shell 3x for plus cmp -s/link - which takes a lot of time during build -- rework BuildPreReq and Conflicts with gcc, so that - it applies only where it has to - -* Fri May 11 2001 Jakub Jelinek -- fix locale name of ja_JP in UTF-8 (#39783) -- fix re_search_2 (#40244) -- fix memusage script (#39138, #39823) -- fix dlsym(RTLD_NEXT, ) from main program (#39803) -- fix xtrace script (#39609) -- make glibc conflict with glibc-devel 2.2.2 and below (to make sure - libc_nonshared.a has atexit) -- fix getconf LFS_CFLAGS on 64bitters -- recompile with gcc-2.96-84 or above to fix binary compatibility problem - with __frame_state_for function (#37933) - -* Fri Apr 27 2001 Jakub Jelinek -- glibc 2.2.3 release - - fix strcoll (#36539) -- add BuildPreReqs (#36378) - -* Wed Apr 25 2001 Jakub Jelinek -- update from CVS - -* Fri Apr 20 2001 Jakub Jelinek -- update from CVS - - fix sparc64, ia64 - - fix some locale syntax errors (#35982) - -* Wed Apr 18 2001 Jakub Jelinek -- update from CVS - -* Wed Apr 11 2001 Jakub Jelinek -- update from CVS - -* Fri Apr 6 2001 Jakub Jelinek -- support even 2.4.0 kernels on ia64, sparc64 and s390x -- include UTF-8 locales -- make gconv-modules %%config(noreplace) - -* Fri Mar 23 2001 Jakub Jelinek -- back out sunrpc changes - -* Wed Mar 21 2001 Jakub Jelinek -- update from CVS - - fix ia64 build - - fix pthread_getattr_np - -* Fri Mar 16 2001 Jakub Jelinek -- update from CVS - - run atexit() registered functions at dlclose time if they are in shared - libraries (#28625) - - add pthread_getattr_np API to make JVM folks happy - -* Wed Mar 14 2001 Jakub Jelinek -- require 2.4.1 instead of 2.4.0 on platforms where it required 2.4 kernel -- fix ldd behaviour on unresolved symbols -- remove nonsensical ldconfig warning, update osversion for the most - recent library with the same soname in the same directory instead (#31703) -- apply selected patches from CVS -- s390x spec file changes from Florian La Roche - -* Wed Mar 7 2001 Jakub Jelinek -- fix gencat (#30894) -- fix ldconfig changes from yesterday, fix LD_ASSUME_KERNEL handling - -* Tue Mar 6 2001 Jakub Jelinek -- update from CVS -- make pthread_attr_setstacksize consistent before and after pthread manager - is started (#28194) -- pass back struct sigcontext from pthread signal wrapper (on ia32 only so - far, #28493) -- on i686 ship both --enable-kernel 2.2.5 and 2.4.0 libc/libm/libpthread, - make ld.so pick the right one - -* Sat Feb 17 2001 Preston Brown -- glib-common doesn't require glibc, until we can figure out how to get out of dependency hell. - -* Sat Feb 17 2001 Jakub Jelinek -- make glibc require particular version of glibc-common - and glibc-common prerequire glibc. - -* Fri Feb 16 2001 Jakub Jelinek -- glibc 2.2.2 release - - fix regex REG_ICASE bug seen in ksymoops - -* Sat Feb 10 2001 Jakub Jelinek -- fix regexec leaking memory (#26864) - -* Fri Feb 9 2001 Jakub Jelinek -- update from CVS - - fix ia64 build with gnupro - - make regex 64bit clean - - fix tgmath make check failures on alpha - -* Tue Feb 6 2001 Jakub Jelinek -- update again for ia64 DF_1_INITFIRST - -* Fri Feb 2 2001 Jakub Jelinek -- update from CVS - - fix getaddrinfo (#25437) - - support DF_1_INITFIRST (#25029) - -* Wed Jan 24 2001 Jakub Jelinek -- build all auxiliary arches with --enablekernel 2.4.0, those wanting - to run 2.2 kernels can downgrade to the base architecture glibc. - -* Sat Jan 20 2001 Jakub Jelinek -- remove %%lang() flags from %%{_prefix}/lib/locale files temporarily - -* Sun Jan 14 2001 Jakub Jelinek -- update to 2.2.1 final - - fix a pthread_kill_other_threads_np breakage (#23966) - - make static binaries using dlopen work on ia64 again -- fix a typo in glibc-common group - -* Wed Jan 10 2001 Bernhard Rosenkraenzer -- devel requires glibc = %%{version} -- noreplace /etc/nscd.conf - -* Wed Jan 10 2001 Jakub Jelinek -- some more security fixes: - - don't look up LD_PRELOAD libs in cache for SUID apps - (because that bypasses SUID bit checking on the library) - - place output files for profiling SUID apps into /var/profile, - use O_NOFOLLOW for them - - add checks for $MEMUSAGE_OUTPUT and $SEGFAULT_OUTPUT_NAME -- hardlink identical locale files together -- add %%lang() tags to locale stuff -- remove ko_KR.utf8 for now, it is provided by locale-utf8 package - -* Mon Jan 8 2001 Jakub Jelinek -- add glibc-common subpackage -- fix alphaev6 memcpy (#22494) -- fix sys/cdefs.h (#22908) -- don't define stdin/stdout/stderr as macros for -traditional (#22913) -- work around a bug in IBM JDK (#22932, #23012) -- fix pmap_unset when network is down (#23176) -- move nscd in rc.d before netfs on shutdown -- fix $RESOLV_HOST_CONF in SUID apps (#23562) - -* Fri Dec 15 2000 Jakub Jelinek -- fix ftw and nftw - -* Wed Dec 13 2000 Jakub Jelinek -- fix fcvt (#22184) -- ldd /lib/ld-linux.so.2 is not crashing any longer again (#22197) -- fix gencat - -* Mon Dec 11 2000 Jakub Jelinek -- fix alpha htonl and alphaev6 stpcpy - -* Sat Dec 9 2000 Jakub Jelinek -- update to CVS to: - - fix getnameinfo (#21934) - - don't stomp on memory in rpath handling (#21544) - - fix setlocale (#21507) -- fix libNoVersion.so.1 loading code (#21579) -- use auxarches define in spec file for auxiliary - architectures (#21219) -- remove /usr/share directory from filelist (#21218) - -* Sun Nov 19 2000 Jakub Jelinek -- update to CVS to fix getaddrinfo - -* Fri Nov 17 2000 Jakub Jelinek -- update to CVS to fix freopen -- remove all alpha workarounds, not needed anymore - -* Wed Nov 15 2000 Jakub Jelinek -- fix dladdr bug on alpha/sparc32/sparc64 -- fix Makefiles so that they run static tests properly - -* Tue Nov 14 2000 Jakub Jelinek -- update to CVS to fix ldconfig - -* Thu Nov 9 2000 Jakub Jelinek -- update to glibc 2.2 release - -* Mon Nov 6 2000 Jakub Jelinek -- update to CVS to: - - export __sysconf@@GLIBC_2.2 (#20417) - -* Fri Nov 3 2000 Jakub Jelinek -- merge to 2.1.97 - -* Mon Oct 30 2000 Jakub Jelinek -- update to CVS, including: - - fix WORD_BIT/LONG_BIT definition in limits.h (#19088) - - fix hesiod (#19375) - - set LC_MESSAGES in zic/zdump for proper error message output (#19495) - - fix LFS fcntl when used with non-LFS aware kernels (#19730) - -* Thu Oct 19 2000 Jakub Jelinek -- fix alpha semctl (#19199) -- update to CVS, including: - - fix glibc headers for Compaq non-gcc compilers - - fix locale alias handling code (#18832) - - fix rexec on little endian machines (#18886) -- started writing changelog again - -* Thu Aug 10 2000 Adrian Havill -- added ja ujis alias for backwards compatibility * Mon Jun 24 2019 DJ Delorie - 2.29.9000-30 - Auto-sync with upstream branch master, commit 2bd81b60d6ffdf7e0d22006d69f4b812b1c80513. diff --git a/glibc-cpu-check-1.patch b/glibc-cpu-check-1.patch deleted file mode 100644 index 808c396..0000000 --- a/glibc-cpu-check-1.patch +++ /dev/null @@ -1,64 +0,0 @@ -Downstream-only patch to enhance CPU detection. Review thread: - - - -Author: Florian Weimer -Date: Thu May 6 11:54:52 2021 +0200 - - elf: Add hook for checking HWCAP bits after auxiliary vector parsing - -diff --git a/elf/dl-sysdep.c b/elf/dl-sysdep.c -index 0658c17da632efa5..657d74597e64045f 100644 ---- a/elf/dl-sysdep.c -+++ b/elf/dl-sysdep.c -@@ -46,6 +46,7 @@ - - #include - #include -+#include - - extern char **_environ attribute_hidden; - extern char _end[] attribute_hidden; -@@ -182,6 +183,8 @@ _dl_sysdep_start (void **start_argptr, - DL_PLATFORM_AUXV - } - -+ dl_hwcap_check (); -+ - #ifndef HAVE_AUX_SECURE - if (seen != -1) - { -diff --git a/sysdeps/generic/dl-hwcap-check.h b/sysdeps/generic/dl-hwcap-check.h -new file mode 100644 -index 0000000000000000..8db7a86256c9c724 ---- /dev/null -+++ b/sysdeps/generic/dl-hwcap-check.h -@@ -0,0 +1,28 @@ -+/* Check for hardware capabilities after HWCAP parsing. Generic version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _DL_HWCAP_CHECK_H -+#define _DL_HWCAP_CHECK_H -+ -+static inline void -+dl_hwcap_check (void) -+{ -+ /* The generic implementation does not perform any checks. */ -+} -+ -+#endif /* _DL_HWCAP_CHECK_H */ diff --git a/glibc-cpu-check-2.patch b/glibc-cpu-check-2.patch deleted file mode 100644 index 346f414..0000000 --- a/glibc-cpu-check-2.patch +++ /dev/null @@ -1,73 +0,0 @@ -Downstream-only patch to enhance CPU detection. Review thread: - - - -Author: Florian Weimer -Date: Thu May 6 11:55:09 2021 +0200 - - powerpc64le: Check HWCAP bits against compiler build flags - - When built with GCC 11.1 and -mcpu=power9, ld.so prints this error - message when running on POWER8: - - Fatal glibc error: CPU lacks ISA 3.00 support (POWER9 or later required) - - This approach does not work for the POWER10 because the bootstrap - relocation already uses PCREL instructions, so the detection code does - not actually run. - -diff --git a/sysdeps/powerpc/powerpc64/le/dl-hwcap-check.h b/sysdeps/powerpc/powerpc64/le/dl-hwcap-check.h -new file mode 100644 -index 0000000000000000..6c7949c6d27ab0b4 ---- /dev/null -+++ b/sysdeps/powerpc/powerpc64/le/dl-hwcap-check.h -@@ -0,0 +1,49 @@ -+/* Check for hardware capabilities after HWCAP parsing. powerpc64le version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _DL_HWCAP_CHECK_H -+#define _DL_HWCAP_CHECK_H -+ -+#include -+ -+static inline void -+dl_hwcap_check (void) -+{ -+#ifdef _ARCH_PWR9 -+ if ((GLRO (dl_hwcap2) & PPC_FEATURE2_ARCH_3_00) == 0) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks ISA 3.00 support (POWER9 or later required)\n"); -+#endif -+#ifdef __FLOAT128_HARDWARE__ -+ if ((GLRO (dl_hwcap2) & PPC_FEATURE2_HAS_IEEE128) == 0) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks float128 support (POWER 9 or later required)\n"); -+#endif -+#if defined _ARCH_PWR10 || defined __PCREL__ -+ if ((GLRO (dl_hwcap2) & PPC_FEATURE2_ARCH_3_1) == 0) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks ISA 3.10 support (POWER10 or later required)\n"); -+#endif -+#ifdef __MMA__ -+ if ((GLRO (dl_hwcap2) & PPC_FEATURE2_MMA) == 0) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks MMA support (POWER10 or later required)\n"); -+#endif -+} -+ -+#endif /* _DL_HWCAP_CHECK_H */ diff --git a/glibc-cpu-check-3.patch b/glibc-cpu-check-3.patch deleted file mode 100644 index 9e0bc88..0000000 --- a/glibc-cpu-check-3.patch +++ /dev/null @@ -1,62 +0,0 @@ -Downstream-only patch to enhance CPU detection. Review thread: - - - -Author: Florian Weimer -Date: Thu May 6 11:58:02 2021 +0200 - - s390x: Check HWCAP bits against compiler flags - - When compiled with GCC 11.1 and -march=z14 -O3 build flags, running - ld.so (or any dynamically linked program) prints: - - Fatal glibc error: CPU lacks VXE support (z14 or later required) - - Co-Authored-By: Stefan Liebler - -diff --git a/sysdeps/s390/s390-64/dl-hwcap-check.h b/sysdeps/s390/s390-64/dl-hwcap-check.h -new file mode 100644 -index 0000000000000000..87e18be6bd0c512b ---- /dev/null -+++ b/sysdeps/s390/s390-64/dl-hwcap-check.h -@@ -0,0 +1,40 @@ -+/* Check for hardware capabilities after HWCAP parsing. S390 version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _DL_HWCAP_CHECK_H -+#define _DL_HWCAP_CHECK_H -+ -+#include -+ -+static inline void -+dl_hwcap_check (void) -+{ -+#if defined __ARCH__ -+# if __ARCH__ >= 13 -+ if (!(GLRO(dl_hwcap) & HWCAP_S390_VXRS_EXT2)) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks VXRS_EXT2 support (z15 or later required)\n"); -+# elif __ARCH__ >= 12 -+ if (!(GLRO(dl_hwcap) & HWCAP_S390_VXE)) -+ _dl_fatal_printf ("\ -+Fatal glibc error: CPU lacks VXE support (z14 or later required)\n"); -+# endif -+#endif /* __ARCH__ */ -+} -+ -+#endif /* _DL_HWCAP_CHECK_H */ diff --git a/glibc-libthread_db-dynsym.patch b/glibc-libthread_db-dynsym.patch new file mode 100644 index 0000000..0fdc8c4 --- /dev/null +++ b/glibc-libthread_db-dynsym.patch @@ -0,0 +1,191 @@ +Author: Florian Weimer +Date: Thu Jun 17 19:23:00 2021 +0200 + + nptl: Export libthread_db-used symbols under GLIBC_PRIVATE + + This allows distributions to strip debugging information from + libc.so.6 without impacting the debugging experience. + + nptl_version had to be renamed to __nptl_version to avoid + namespace issues. + +diff --git a/nptl/Versions b/nptl/Versions +index 62bb939d54..c03ed92848 100644 +--- a/nptl/Versions ++++ b/nptl/Versions +@@ -403,10 +403,14 @@ libc { + __nptl_deallocate_tsd; + __nptl_death_event; + __nptl_free_tcb; ++ __nptl_last_event; + __nptl_nthreads; ++ __nptl_rtld_global; + __nptl_setxid_sighandler; + __nptl_stack_list_add; + __nptl_stack_list_del; ++ __nptl_threads_events; ++ __nptl_version; + __pthread_attr_copy; + __pthread_attr_destroy; + __pthread_attr_init; +@@ -430,6 +434,58 @@ libc { + __pthread_unwind; + __sched_fifo_max_prio; + __sched_fifo_min_prio; ++ _thread_db___nptl_last_event; ++ _thread_db___nptl_rtld_global; ++ _thread_db_const_thread_area; ++ _thread_db_dtv_dtv; ++ _thread_db_dtv_slotinfo_gen; ++ _thread_db_dtv_slotinfo_list_len; ++ _thread_db_dtv_slotinfo_list_next; ++ _thread_db_dtv_slotinfo_list_slotinfo; ++ _thread_db_dtv_slotinfo_map; ++ _thread_db_dtv_t_counter; ++ _thread_db_dtv_t_pointer_val; ++ _thread_db_link_map_l_tls_modid; ++ _thread_db_link_map_l_tls_offset; ++ _thread_db_list_t_next; ++ _thread_db_list_t_prev; ++ _thread_db_pthread_cancelhandling; ++ _thread_db_pthread_dtvp; ++ _thread_db_pthread_eventbuf; ++ _thread_db_pthread_eventbuf_eventmask; ++ _thread_db_pthread_eventbuf_eventmask_event_bits; ++ _thread_db_pthread_key_data_data; ++ _thread_db_pthread_key_data_level2_data; ++ _thread_db_pthread_key_data_seq; ++ _thread_db_pthread_key_struct_destr; ++ _thread_db_pthread_key_struct_seq; ++ _thread_db_pthread_list; ++ _thread_db_pthread_nextevent; ++ _thread_db_pthread_report_events; ++ _thread_db_pthread_schedparam_sched_priority; ++ _thread_db_pthread_schedpolicy; ++ _thread_db_pthread_specific; ++ _thread_db_pthread_start_routine; ++ _thread_db_pthread_tid; ++ _thread_db_register32; ++ _thread_db_register32_thread_area; ++ _thread_db_register64; ++ _thread_db_register64_thread_area; ++ _thread_db_rtld_global__dl_stack_used; ++ _thread_db_rtld_global__dl_stack_user; ++ _thread_db_rtld_global__dl_tls_dtv_slotinfo_list; ++ _thread_db_sizeof_dtv_slotinfo; ++ _thread_db_sizeof_dtv_slotinfo_list; ++ _thread_db_sizeof_list_t; ++ _thread_db_sizeof_pthread; ++ _thread_db_sizeof_pthread_key_data; ++ _thread_db_sizeof_pthread_key_data_level2; ++ _thread_db_sizeof_pthread_key_struct; ++ _thread_db_sizeof_td_eventbuf_t; ++ _thread_db_sizeof_td_thr_events_t; ++ _thread_db_td_eventbuf_t_eventdata; ++ _thread_db_td_eventbuf_t_eventnum; ++ _thread_db_td_thr_events_t_event_bits; + } + } + +diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c +index 3f017f1e26..d1b6817a81 100644 +--- a/nptl/pthread_create.c ++++ b/nptl/pthread_create.c +@@ -43,21 +43,24 @@ + + + /* Globally enabled events. */ +-static td_thr_events_t __nptl_threads_events __attribute_used__; ++td_thr_events_t __nptl_threads_events __attribute__ ((nocommon)); ++libc_hidden_proto (__nptl_threads_events) ++libc_hidden_data_def (__nptl_threads_events) + + /* Pointer to descriptor with the last event. */ +-static struct pthread *__nptl_last_event __attribute_used__; ++struct pthread *__nptl_last_event __attribute__ ((nocommon)); ++libc_hidden_proto (__nptl_last_event) ++libc_hidden_data_def (__nptl_last_event) + + #ifdef SHARED + /* This variable is used to access _rtld_global from libthread_db. If + GDB loads libpthread before ld.so, it is not possible to resolve + _rtld_global directly during libpthread initialization. */ +-static struct rtld_global *__nptl_rtld_global __attribute_used__ +- = &_rtld_global; ++struct rtld_global *__nptl_rtld_global = &_rtld_global; + #endif + + /* Version of the library, used in libthread_db to detect mismatches. */ +-static const char nptl_version[] __attribute_used__ = VERSION; ++const char __nptl_version[] = VERSION; + + /* This performs the initialization necessary when going from + single-threaded to multi-threaded mode for the first time. */ +diff --git a/nptl_db/Makefile b/nptl_db/Makefile +index ea721c1dcf..4cc51c0e7b 100644 +--- a/nptl_db/Makefile ++++ b/nptl_db/Makefile +@@ -57,7 +57,7 @@ include ../Rules + + $(objpfx)db-symbols.out: $(objpfx)db-symbols.v.i \ + $(common-objpfx)libc.so +- LC_ALL=C $(READELF) -W -s $(filter %.so,$^) | $(AWK) -f $< > $@; \ ++ LC_ALL=C $(READELF) -W -D -s $(filter %.so,$^) | $(AWK) -f $< > $@; \ + $(evaluate-test) + + $(objpfx)db-symbols.v.i: db-symbols.awk +diff --git a/nptl_db/db-symbols.awk b/nptl_db/db-symbols.awk +index 6f326cf379..2033f95e38 100644 +--- a/nptl_db/db-symbols.awk ++++ b/nptl_db/db-symbols.awk +@@ -13,7 +13,7 @@ BEGIN { + in_symtab = 0; + } + +-/Symbol table '.symtab'/ { in_symtab=1; next } ++/Symbol table for image/ { in_symtab=1; next } + NF == 0 { in_symtab=0; next } + + !in_symtab { next } +@@ -24,6 +24,7 @@ END { + status = 0; + + for (s in required) { ++ s = s "@@GLIBC_PRIVATE" + if (s in seen) print s, "ok"; + else { + status = 1; +@@ -33,6 +34,7 @@ END { + + any = ""; + for (s in th_unique) { ++ s = s "@@GLIBC_PRIVATE" + if (s in seen) { + any = s; + break; +diff --git a/nptl_db/structs.def b/nptl_db/structs.def +index 6a726f207e..e2e51acc39 100644 +--- a/nptl_db/structs.def ++++ b/nptl_db/structs.def +@@ -77,7 +77,7 @@ DB_STRUCT (td_eventbuf_t) + DB_STRUCT_FIELD (td_eventbuf_t, eventnum) + DB_STRUCT_FIELD (td_eventbuf_t, eventdata) + +-DB_SYMBOL (nptl_version) ++DB_SYMBOL (__nptl_version) + DB_MAIN_SYMBOL (__nptl_create_event) + DB_MAIN_SYMBOL (__nptl_death_event) + DB_SYMBOL (__nptl_threads_events) +diff --git a/nptl_db/td_ta_new.c b/nptl_db/td_ta_new.c +index 501d922ea2..eeca29d5a0 100644 +--- a/nptl_db/td_ta_new.c ++++ b/nptl_db/td_ta_new.c +@@ -39,7 +39,7 @@ td_ta_new (struct ps_prochandle *ps, td_thragent_t **ta) + LOG ("td_ta_new"); + + /* Check whether the versions match. */ +- if (td_lookup (ps, SYM_nptl_version, &versaddr) != PS_OK) ++ if (td_lookup (ps, SYM___nptl_version, &versaddr) != PS_OK) + return TD_NOLIBTHREAD; + if (ps_pdread (ps, versaddr, versbuf, sizeof (versbuf)) != PS_OK) + return TD_ERR; diff --git a/glibc-nosymlink-1.patch b/glibc-nosymlink-1.patch new file mode 100644 index 0000000..767b6a2 --- /dev/null +++ b/glibc-nosymlink-1.patch @@ -0,0 +1,31 @@ +Patch series proposed upstream: + + + +Author: Florian Weimer +Date: Wed Jun 9 14:12:46 2021 +0200 + + nptl_db: Install libthread_db under a regular implementation name + + Currently, the name is always libthread_db-1.0.so. It does not change + with the glibc version, like the other libraries. + + GDB hard-codes libthread_db.so.1 (the soname), so this change does not + affect loading libthread_db. + + Tested on x86_64-linux-gnu, in an environment where the nptl GDB tests + actually run. + +diff --git a/nptl_db/Makefile b/nptl_db/Makefile +index ea721c1dcfce6e7b..1f79c018a1f9fe19 100644 +--- a/nptl_db/Makefile ++++ b/nptl_db/Makefile +@@ -21,8 +21,6 @@ subdir := nptl_db + + include ../Makeconfig + +-nptl_db-version = 1.0 +- + extra-libs = libthread_db + extra-libs-others := $(extra-libs) + diff --git a/glibc-nosymlink-2.patch b/glibc-nosymlink-2.patch new file mode 100644 index 0000000..92c330b --- /dev/null +++ b/glibc-nosymlink-2.patch @@ -0,0 +1,78 @@ +Patch series proposed upstream: + + + +Author: Florian Weimer +Date: Wed Jun 9 14:12:46 2021 +0200 + + Makerules: Remove lib-version, $(subdir-version) + + Also clarify that the “versioned” term refers to the soname, not the glibc + version (which also ends up in the installed file name). + + I verified on x86_64-linux-gnu that “make install” produces the same + files. + +diff --git a/Makerules b/Makerules +index ca9885436e15784b..d3f29d0b8991efc7 100644 +--- a/Makerules ++++ b/Makerules +@@ -982,22 +982,21 @@ install-lib.so := $(filter %.so,$(install-lib:%_pic.a=%.so)) + install-lib := $(filter-out %.so %_pic.a,$(install-lib)) + + ifeq (yes,$(build-shared)) +-# Find which .so's have versions. ++# Find which .so's have a version number in their soname. + versioned := $(strip $(foreach so,$(install-lib.so),\ + $(patsubst %,$(so),$($(so)-version)))) + + install-lib.so-versioned := $(filter $(versioned), $(install-lib.so)) + install-lib.so-unversioned := $(filter-out $(versioned), $(install-lib.so)) + +-# For versioned libraries, we install three files: ++# For libraries whose soname have version numbers, we install three files: + # $(inst_libdir)/libfoo.so -- for linking, symlink or ld script + # $(inst_slibdir)/libfoo.so.NN -- for loading by SONAME, symlink + # $(inst_slibdir)/libfoo-X.Y.Z.so -- the real shared object file +-lib-version := $(firstword $($(subdir)-version) $(version)) + install-lib-nosubdir: $(install-lib.so-unversioned:%=$(inst_slibdir)/%) \ + $(foreach L,$(install-lib.so-versioned),\ + $(inst_libdir)/$L \ +- $(inst_slibdir)/$(L:.so=)-$(lib-version).so \ ++ $(inst_slibdir)/$(L:.so=)-$(version).so \ + $(inst_slibdir)/$L$($L-version)) + + # Install all the unversioned shared libraries. +@@ -1125,7 +1124,6 @@ include $(o-iterator) + + generated += $(foreach o,$(versioned),$o$($o-version)) + +-ifeq (,$($(subdir)-version)) + define o-iterator-doit + $(inst_slibdir)/$o$($o-version): $(inst_slibdir)/$(o:.so=)-$(version).so \ + $(+force); +@@ -1140,23 +1138,7 @@ $(inst_slibdir)/$(o:.so=)-$(version).so: $(objpfx)$o $(+force); + endef + object-suffixes-left := $(versioned) + include $(o-iterator) +-else +-define o-iterator-doit +-$(inst_slibdir)/$o$($o-version): \ +- $(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so $(+force); +- $$(make-shlib-link) +-endef +-object-suffixes-left := $(versioned) +-include $(o-iterator) +- +-define o-iterator-doit +-$(inst_slibdir)/$(o:.so=)-$($(subdir)-version).so: $(objpfx)$o $(+force); +- $$(do-install-program) +-endef +-object-suffixes-left := $(versioned) +-include $(o-iterator) +-endif +-endif ++endif # ifneq (,$(versioned)) + + define do-install-so + $(do-install-program) diff --git a/glibc-nosymlink-3.patch b/glibc-nosymlink-3.patch new file mode 100644 index 0000000..76080d4 --- /dev/null +++ b/glibc-nosymlink-3.patch @@ -0,0 +1,129 @@ +Patch series proposed upstream: + + + +Author: Florian Weimer +Date: Wed Jun 9 14:12:46 2021 +0200 + + elf: Generalize name-based DSO recognition in ldconfig + + This introduces and the _dl_is_dso function. A + test ensures that the official names of libc.so, ld.so, and their + versioned names are recognized. + +diff --git a/elf/Makefile b/elf/Makefile +index 5c47daee12505a47..1751f5ec6772eceb 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -223,7 +223,7 @@ tests += restest1 preloadtest loadfail multiload origtest resolvfail \ + tst-single_threaded tst-single_threaded-pthread \ + tst-tls-ie tst-tls-ie-dlmopen argv0test \ + tst-glibc-hwcaps tst-glibc-hwcaps-prepend tst-glibc-hwcaps-mask \ +- tst-tls20 tst-tls21 tst-dlmopen-dlerror ++ tst-tls20 tst-tls21 tst-dlmopen-dlerror tst-dl-is_dso + # reldep9 + tests-internal += loadtest unload unload2 circleload1 \ + neededtest neededtest2 neededtest3 neededtest4 \ +diff --git a/elf/dl-is_dso.h b/elf/dl-is_dso.h +new file mode 100644 +index 0000000000000000..94e00966a16e0df5 +--- /dev/null ++++ b/elf/dl-is_dso.h +@@ -0,0 +1,33 @@ ++/* Heuristic for recognizing DSO file names. ++ Copyright (C) 2021 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++ ++/* Returns true if the file name looks like a DSO name. */ ++static bool ++_dl_is_dso (const char *name) ++{ ++ /* Recognize lib*.so*, ld-*.so*, ld.so.*, ld64.so.*. ld-*.so* ++ matches both platform dynamic linker names like ld-linux.so.2, ++ and versioned dynamic loader names like ld-2.12.so. */ ++ return (((strncmp (name, "lib", 3) == 0 || strncmp (name, "ld-", 3) == 0) ++ && strstr (name, ".so") != NULL) ++ || strncmp (name, "ld.so.", 6) == 0 ++ || strncmp (name, "ld64.so.", 8) == 0); ++} +diff --git a/elf/ldconfig.c b/elf/ldconfig.c +index 96bf7700b2efd37a..1037e8d0cf8d28b6 100644 +--- a/elf/ldconfig.c ++++ b/elf/ldconfig.c +@@ -43,6 +43,7 @@ + #include + #include + #include ++#include + + #include + +@@ -842,9 +843,7 @@ search_dir (const struct dir_entry *entry) + subdirectory (if not already processing a glibc-hwcaps + subdirectory)? The dynamic linker is also considered as + shared library. */ +- if (((strncmp (direntry->d_name, "lib", 3) != 0 +- && strncmp (direntry->d_name, "ld-", 3) != 0) +- || strstr (direntry->d_name, ".so") == NULL) ++ if (!_dl_is_dso (direntry->d_name) + && (direntry->d_type == DT_REG + || (entry->hwcaps == NULL + && !is_hwcap_platform (direntry->d_name)))) +diff --git a/elf/tst-dl-is_dso.c b/elf/tst-dl-is_dso.c +new file mode 100644 +index 0000000000000000..48d2cc9fbe9edbc6 +--- /dev/null ++++ b/elf/tst-dl-is_dso.c +@@ -0,0 +1,35 @@ ++/* Test heuristic for recognizing DSO file names. ++ Copyright (C) 2021 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++ ++static int ++do_test (void) ++{ ++ /* Official ABI names. */ ++ TEST_VERIFY (_dl_is_dso (LIBC_SO)); ++ TEST_VERIFY (_dl_is_dso (LD_SO)); ++ /* Version-based names. The version number does not matter. */ ++ TEST_VERIFY (_dl_is_dso ("libc-2.12.so")); ++ TEST_VERIFY (_dl_is_dso ("ld-2.12.so")); ++ return 0; ++} ++ ++#include diff --git a/glibc-nosymlink-4.patch b/glibc-nosymlink-4.patch new file mode 100644 index 0000000..7a292f0 --- /dev/null +++ b/glibc-nosymlink-4.patch @@ -0,0 +1,158 @@ +Patch series proposed upstream: + + + +Author: Florian Weimer +Date: Wed Jun 9 14:12:46 2021 +0200 + + Install shared objects under their ABI names + + Previously, the installed objects were named like libc-2.33.so, + and the ABI soname libc.so.6 was just a symbolic link. + + The Makefile targets to install these symbolic links are no longer + needed after this, so they are removed with this commit. The more + general $(make-link) command (which invokes scripts/rellns-sh) is + retained because other symbolic links are still needed. + +diff --git a/INSTALL b/INSTALL +index 56ed01d4386ad8b7..7f054f422d990d8a 100644 +--- a/INSTALL ++++ b/INSTALL +@@ -199,6 +199,16 @@ if 'CFLAGS' is specified it must enable optimization. For example: + RELRO and a read-only global offset table (GOT), at the cost of + slightly increased program load times. + ++'--disable-major-minor-libraries' ++ Do not install shared objects under file names that contain the ++ major and minor version of the GNU C Library. By default, such ++ names are used, and the names defined by the ABI are provided as ++ symbolic links only. This causes problems with certain package ++ managers during library upgrades and (in particular) downgrades, so ++ this option can be used to install these shared objects directly ++ under their ABI-defined names, without an additional indirection ++ via symbolic links. ++ + '--enable-pt_chown' + The file 'pt_chown' is a helper binary for 'grantpt' (*note + Pseudo-Terminals: Allocation.) that is installed setuid root to fix +diff --git a/Makefile b/Makefile +index 242d36de914c516f..c115c652a0b8c1ce 100644 +--- a/Makefile ++++ b/Makefile +@@ -109,12 +109,6 @@ elf/ldso_install: + # Ignore the error if we cannot update /etc/ld.so.cache. + ifeq (no,$(cross-compiling)) + ifeq (yes,$(build-shared)) +-install: install-symbolic-link +-.PHONY: install-symbolic-link +-install-symbolic-link: subdir_install +- $(symbolic-link-prog) $(symbolic-link-list) +- rm -f $(symbolic-link-list) +- + install: + -test ! -x $(elf-objpfx)ldconfig || LC_ALL=C \ + $(elf-objpfx)ldconfig $(addprefix -r ,$(install_root)) \ +diff --git a/Makerules b/Makerules +index d3f29d0b8991efc7..6efff78fbe44bdca 100644 +--- a/Makerules ++++ b/Makerules +@@ -989,14 +989,12 @@ versioned := $(strip $(foreach so,$(install-lib.so),\ + install-lib.so-versioned := $(filter $(versioned), $(install-lib.so)) + install-lib.so-unversioned := $(filter-out $(versioned), $(install-lib.so)) + +-# For libraries whose soname have version numbers, we install three files: ++# For libraries whose soname have version numbers, we install two files: + # $(inst_libdir)/libfoo.so -- for linking, symlink or ld script +-# $(inst_slibdir)/libfoo.so.NN -- for loading by SONAME, symlink +-# $(inst_slibdir)/libfoo-X.Y.Z.so -- the real shared object file ++# $(inst_slibdir)/libfoo.so.NN -- for loading by SONAME + install-lib-nosubdir: $(install-lib.so-unversioned:%=$(inst_slibdir)/%) \ + $(foreach L,$(install-lib.so-versioned),\ + $(inst_libdir)/$L \ +- $(inst_slibdir)/$(L:.so=)-$(version).so \ + $(inst_slibdir)/$L$($L-version)) + + # Install all the unversioned shared libraries. +@@ -1029,35 +1027,10 @@ ln -f $(objpfx)/$(@F) $@ + endef + endif + +-ifeq (yes,$(build-shared)) +-ifeq (no,$(cross-compiling)) +-symbolic-link-prog := $(elf-objpfx)sln +-symbolic-link-list := $(elf-objpfx)symlink.list +-define make-shlib-link +-echo `$(..)scripts/rellns-sh -p $< $@` $@ >> $(symbolic-link-list) +-endef +-else # cross-compiling +-# We need a definition that can be used by elf/Makefile's install rules. +-symbolic-link-prog = $(LN_S) +-endif +-endif +-ifndef make-shlib-link +-define make-shlib-link +-rm -f $@ +-$(LN_S) `$(..)scripts/rellns-sh -p $< $@` $@ +-endef +-endif +- + ifdef libc.so-version +-# For a library specified to be version N, install three files: +-# libc.so -> libc.so.N (e.g. libc.so.6) +-# libc.so.6 -> libc-VERSION.so (e.g. libc-1.10.so) +- +-$(inst_slibdir)/libc.so$(libc.so-version): $(inst_slibdir)/libc-$(version).so \ +- $(+force) +- $(make-shlib-link) +-$(inst_slibdir)/libc-$(version).so: $(common-objpfx)libc.so $(+force) ++$(inst_slibdir)/libc.so$(libc.so-version): $(common-objpfx)libc.so $(+force) + $(do-install-program) ++ + install: $(inst_slibdir)/libc.so$(libc.so-version) + + # This fragment of linker script gives the OUTPUT_FORMAT statement +@@ -1125,15 +1098,7 @@ include $(o-iterator) + generated += $(foreach o,$(versioned),$o$($o-version)) + + define o-iterator-doit +-$(inst_slibdir)/$o$($o-version): $(inst_slibdir)/$(o:.so=)-$(version).so \ +- $(+force); +- $$(make-shlib-link) +-endef +-object-suffixes-left := $(versioned) +-include $(o-iterator) +- +-define o-iterator-doit +-$(inst_slibdir)/$(o:.so=)-$(version).so: $(objpfx)$o $(+force); ++$(inst_slibdir)/$o$($o-version): $(objpfx)$o $(+force); + $$(do-install-program) + endef + object-suffixes-left := $(versioned) +diff --git a/elf/Makefile b/elf/Makefile +index 1751f5ec6772eceb..02f634c19241949f 100644 +--- a/elf/Makefile ++++ b/elf/Makefile +@@ -628,20 +628,14 @@ $(objpfx)trusted-dirs.st: Makefile $(..)Makeconfig + CPPFLAGS-dl-load.c += -I$(objpfx). -I$(csu-objpfx). + + ifeq (yes,$(build-shared)) +-$(inst_slibdir)/$(rtld-version-installed-name): $(objpfx)ld.so $(+force) ++$(inst_rtlddir)/$(rtld-installed-name): $(objpfx)ld.so $(+force) + $(make-target-directory) + $(do-install-program) + +-$(inst_rtlddir)/$(rtld-installed-name): \ +- $(inst_slibdir)/$(rtld-version-installed-name) \ +- $(inst_slibdir)/libc-$(version).so +- $(make-target-directory) +- $(make-shlib-link) +- + # Special target called by parent to install just the dynamic linker. + .PHONY: ldso_install + ldso_install: $(inst_rtlddir)/$(rtld-installed-name) +-endif ++endif # $(build-shared) + + + # Workarounds for ${exec_prefix} expansion in configure variables. diff --git a/glibc-rh697421.patch b/glibc-rh697421.patch deleted file mode 100644 index e909aa1..0000000 --- a/glibc-rh697421.patch +++ /dev/null @@ -1,21 +0,0 @@ -Short description: Add UCS-2 aliases. -Author(s): Fedora glibc team -Origin: PATCH -Bug-RHEL: #697421 -Upstream status: https://sourceware.org/ml/libc-alpha/2012-12/msg00103.html - -This is a Fedora-specific change to include new aliases for UCS-2 -data for gconv used by a certain class of users. This should be -revisited at some point to determine if those users are just using -UTF-8 at this point. - -diff -rup a/iconvdata/gconv-modules b/iconvdata/gconv-modules ---- a/iconvdata/gconv-modules 2010-05-04 05:27:23.000000000 -0600 -+++ b/iconvdata/gconv-modules 2012-01-26 10:58:24.181895489 -0700 -@@ -1954,3 +1954,6 @@ alias HPGREEK8// HP-GREEK8// - alias OSF10010004// HP-GREEK8// - module HP-GREEK8// INTERNAL HP-GREEK8 1 - module INTERNAL HP-GREEK8// HP-GREEK8 1 -+ -+alias ISO-10646-UCS-2// UNICODE// -+alias ISO-10646-UCS-2// ISO-10646/UTF8/ diff --git a/glibc-rh819430.patch b/glibc-rh819430.patch deleted file mode 100644 index 6152926..0000000 --- a/glibc-rh819430.patch +++ /dev/null @@ -1,93 +0,0 @@ -Short description: fnmatch() fails with MBCS. -Author(s): Fedora glibc team -Origin: PATCH -Bug-RHEL: #819430, #826149, #826151 -Bug-Upstream: #14185 -Upstream status: not-submitted - -fnmatch() fails when '*' wildcard is applied on the file name -containing multi-byte character(s) - -This needs to be reviewed thoroughly and go upstream with a -new test case. - - -diff --git a/posix/fnmatch.c b/posix/fnmatch.c -index 5896812c966ac7c6..63df3dae0911030f 100644 ---- a/posix/fnmatch.c -+++ b/posix/fnmatch.c -@@ -237,6 +237,7 @@ fnmatch (const char *pattern, const char *string, int flags) - { - if (__glibc_unlikely (MB_CUR_MAX != 1)) - { -+ const char *orig_pattern = pattern; - mbstate_t ps; - size_t n; - const char *p; -@@ -256,10 +257,8 @@ fnmatch (const char *pattern, const char *string, int flags) - alloca_used); - n = mbsrtowcs (wpattern, &p, n + 1, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- return -1; -+ /* Something wrong: Fall back to single byte matching. */ -+ goto try_singlebyte; - if (p) - { - memset (&ps, '\0', sizeof (ps)); -@@ -271,10 +270,8 @@ fnmatch (const char *pattern, const char *string, int flags) - prepare_wpattern: - n = mbsrtowcs (NULL, &pattern, 0, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- return -1; -+ /* Something wrong: Fall back to single byte matching. */ -+ goto try_singlebyte; - if (__glibc_unlikely (n >= (size_t) -1 / sizeof (wchar_t))) - { - __set_errno (ENOMEM); -@@ -297,14 +294,8 @@ fnmatch (const char *pattern, const char *string, int flags) - alloca_used); - n = mbsrtowcs (wstring, &p, n + 1, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- { -- /* Something wrong. -- XXX Do we have to set 'errno' to something which -- mbsrtows hasn't already done? */ -- free_return: -- free (wpattern_malloc); -- return -1; -- } -+ /* Something wrong: Fall back to single byte matching. */ -+ goto free_and_try_singlebyte; - if (p) - { - memset (&ps, '\0', sizeof (ps)); -@@ -316,10 +307,8 @@ fnmatch (const char *pattern, const char *string, int flags) - prepare_wstring: - n = mbsrtowcs (NULL, &string, 0, &ps); - if (__glibc_unlikely (n == (size_t) -1)) -- /* Something wrong. -- XXX Do we have to set 'errno' to something which mbsrtows hasn't -- already done? */ -- goto free_return; -+ /* Something wrong: Fall back to singlebyte matching. */ -+ goto free_and_try_singlebyte; - if (__glibc_unlikely (n >= (size_t) -1 / sizeof (wchar_t))) - { - free (wpattern_malloc); -@@ -346,6 +335,10 @@ fnmatch (const char *pattern, const char *string, int flags) - free (wpattern_malloc); - - return res; -+ free_and_try_singlebyte: -+ free(wpattern_malloc); -+ try_singlebyte: -+ pattern = orig_pattern; - } - - return internal_fnmatch (pattern, string, string + strlen (string), diff --git a/glibc-upstream-2.33-1.patch b/glibc-upstream-2.33-1.patch deleted file mode 100644 index eca0f85..0000000 --- a/glibc-upstream-2.33-1.patch +++ /dev/null @@ -1,42 +0,0 @@ -commit 17f0ff097887008b2d3dca270c8ffbb4b43a8749 -Author: Sergei Trofimovich -Date: Fri Feb 5 07:32:18 2021 +0000 - - nsswitch: return result when nss database is locked [BZ #27343] - - Before the change nss_database_check_reload_and_get() did not populate - the '*result' value when it returned success in a case of chroot - detection. This caused initgroups() to use garage pointer in the - following test (extracted from unbound): - - ``` - - int main() { - // load some NSS modules - struct passwd * pw = getpwnam("root"); - - chdir("/tmp"); - chroot("/tmp"); - chdir("/"); - // access nsswitch.conf in a chroot - initgroups("root", 0); - } - ``` - - Reviewed-by: DJ Delorie - -diff --git a/nss/nss_database.c b/nss/nss_database.c -index cf0306adc47f12d9..e1bef6bd75ce0160 100644 ---- a/nss/nss_database.c -+++ b/nss/nss_database.c -@@ -398,8 +398,9 @@ nss_database_check_reload_and_get (struct nss_database_state *local, - && (str.st_ino != local->root_ino - || str.st_dev != local->root_dev))) - { -- /* Change detected; disable reloading. */ -+ /* Change detected; disable reloading and return current state. */ - atomic_store_release (&local->data.reload_disabled, 1); -+ *result = local->data.services[database_index]; - __libc_lock_unlock (local->lock); - __nss_module_disable_loading (); - return true; diff --git a/glibc-upstream-2.33-10.patch b/glibc-upstream-2.33-10.patch deleted file mode 100644 index deb97fe..0000000 --- a/glibc-upstream-2.33-10.patch +++ /dev/null @@ -1,165 +0,0 @@ -commit 3e880d733753183696d1a81c34caef3a9add2b0c -Author: DJ Delorie -Date: Thu Feb 18 15:26:30 2021 -0500 - - nss: Re-enable NSS module loading after chroot [BZ #27389] - - The glibc 2.33 release enabled /etc/nsswitch.conf reloading, - and to prevent potential security issues like CVE-2019-14271 - the re-loading of nsswitch.conf and all mdoules was disabled - when the root filesystem changes (see bug 27077). - - Unfortunately php-lpfm and openldap both require the ability - to continue to load NSS modules after chroot. The packages - do not exec after the chroot, and so do not cause the - protections to be reset. The only solution is to re-enable - only NSS module loading (not nsswitch.conf reloading) and so - get back the previous glibc behaviour. - - In the future we may introduce a way to harden applications - so they do not reload NSS modules once the root filesystem - changes, or that only files/dns are available pre-loaded - (or builtin). - - Reviewed-by: Carlos O'Donell - (cherry picked from commit 58673149f37389495c098421085ffdb468b3f7ad) - -diff --git a/nss/nss_database.c b/nss/nss_database.c -index e1bef6bd75ce0160..fb72d0cc03d5c0c8 100644 ---- a/nss/nss_database.c -+++ b/nss/nss_database.c -@@ -402,7 +402,6 @@ nss_database_check_reload_and_get (struct nss_database_state *local, - atomic_store_release (&local->data.reload_disabled, 1); - *result = local->data.services[database_index]; - __libc_lock_unlock (local->lock); -- __nss_module_disable_loading (); - return true; - } - local->root_ino = str.st_ino; -diff --git a/nss/tst-reload2.c b/nss/tst-reload2.c -index 5dae16b4f05096e8..5ecb032e9fcd6868 100644 ---- a/nss/tst-reload2.c -+++ b/nss/tst-reload2.c -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - - #include - #include -@@ -48,7 +49,7 @@ static const char *group_4[] = { - "alpha", "beta", "gamma", "fred", NULL - }; - --static struct group group_table_data[] = -+static struct group group_table_data1[] = - { - GRP (4), - GRP_LAST () -@@ -58,7 +59,7 @@ void - _nss_test1_init_hook (test_tables *t) - { - t->pwd_table = pwd_table1; -- t->grp_table = group_table_data; -+ t->grp_table = group_table_data1; - } - - static struct passwd pwd_table2[] = -@@ -68,10 +69,21 @@ static struct passwd pwd_table2[] = - PWD_LAST () - }; - -+static const char *group_5[] = { -+ "fred", NULL -+}; -+ -+static struct group group_table_data2[] = -+ { -+ GRP (5), -+ GRP_LAST () -+ }; -+ - void - _nss_test2_init_hook (test_tables *t) - { - t->pwd_table = pwd_table2; -+ t->grp_table = group_table_data2; - } - - static int -@@ -79,6 +91,7 @@ do_test (void) - { - struct passwd *pw; - struct group *gr; -+ struct hostent *he; - char buf1[PATH_MAX]; - char buf2[PATH_MAX]; - -@@ -99,7 +112,9 @@ do_test (void) - TEST_COMPARE (pw->pw_uid, 1234); - - /* This just loads the test2 DSO. */ -- gr = getgrnam ("name4"); -+ gr = getgrgid (5); -+ TEST_VERIFY (gr != NULL); -+ - - /* Change the root dir. */ - -@@ -114,15 +129,21 @@ do_test (void) - if (pw) - TEST_VERIFY (pw->pw_uid != 2468); - -- /* The "files" DSO should not be loaded. */ -- gr = getgrnam ("test3"); -- TEST_VERIFY (gr == NULL); -- - /* We should still be using the old configuration. */ - pw = getpwnam ("test1"); - TEST_VERIFY (pw != NULL); - if (pw) - TEST_COMPARE (pw->pw_uid, 1234); -+ gr = getgrgid (5); -+ TEST_VERIFY (gr != NULL); -+ gr = getgrnam ("name4"); -+ TEST_VERIFY (gr == NULL); -+ -+ /* hosts in the outer nsswitch is files; the inner one is test1. -+ Verify that we're still using the outer nsswitch *and* that we -+ can load the files DSO. */ -+ he = gethostbyname ("test2"); -+ TEST_VERIFY (he != NULL); - - return 0; - } -diff --git a/nss/tst-reload2.root/etc/hosts b/nss/tst-reload2.root/etc/hosts -new file mode 100644 -index 0000000000000000..bbd9e494ef39acc8 ---- /dev/null -+++ b/nss/tst-reload2.root/etc/hosts -@@ -0,0 +1 @@ -+1.2.3.4 test1 -diff --git a/nss/tst-reload2.root/etc/nsswitch.conf b/nss/tst-reload2.root/etc/nsswitch.conf -index 570795ae22d116f1..688a5895191a913b 100644 ---- a/nss/tst-reload2.root/etc/nsswitch.conf -+++ b/nss/tst-reload2.root/etc/nsswitch.conf -@@ -1,2 +1,3 @@ - passwd: test1 - group: test2 -+hosts: files -diff --git a/nss/tst-reload2.root/subdir/etc/hosts b/nss/tst-reload2.root/subdir/etc/hosts -new file mode 100644 -index 0000000000000000..0a2cbd4337f80bc3 ---- /dev/null -+++ b/nss/tst-reload2.root/subdir/etc/hosts -@@ -0,0 +1 @@ -+1.2.3.4 test2 -diff --git a/nss/tst-reload2.root/subdir/etc/nsswitch.conf b/nss/tst-reload2.root/subdir/etc/nsswitch.conf -index f1d73f8765116d1d..fea271869ef98458 100644 ---- a/nss/tst-reload2.root/subdir/etc/nsswitch.conf -+++ b/nss/tst-reload2.root/subdir/etc/nsswitch.conf -@@ -1,2 +1,3 @@ - passwd: test2 - group: files -+hosts: test1 diff --git a/glibc-upstream-2.33-11.patch b/glibc-upstream-2.33-11.patch deleted file mode 100644 index 9d2a661..0000000 --- a/glibc-upstream-2.33-11.patch +++ /dev/null @@ -1,179 +0,0 @@ -commit ee9f98d9cac12e843ca59c6e4d4b225f58a66727 -Author: H.J. Lu -Date: Tue Feb 2 13:45:58 2021 -0800 - - x86: Set minimum x86-64 level marker [BZ #27318] - - Since the full ISA set used in an ELF binary is unknown to compiler, - an x86-64 ISA level marker indicates the minimum, not maximum, ISA set - required to run such an ELF binary. We never guarantee a library with - an x86-64 ISA level v3 marker doesn't contain other ISAs beyond x86-64 - ISA level v3, like AVX VNNI. We check the x86-64 ISA level marker for - the minimum ISA set. Since -march=sandybridge enables only some ISAs - in x86-64 ISA level v3, we should set the needed ISA marker to v2. - Otherwise, libc is compiled with -march=sandybridge will fail to run on - Sandy Bridge: - - $ ./elf/ld.so ./libc.so - ./libc.so: (p) CPU ISA level is lower than required: needed: 7; got: 3 - - Set the minimum, instead of maximum, x86-64 ISA level marker should have - no impact on the glibc-hwcaps directory assignment logic in ldconfig nor - ld.so. - - (cherry picked from commit 339bf918ea4830fb35614632e96f3aab3237adce) - -diff --git a/config.h.in b/config.h.in -index 06ee8ae26a0eb833..f21bf04e4791e5dc 100644 ---- a/config.h.in -+++ b/config.h.in -@@ -275,4 +275,10 @@ - /* Define if x86 ISA level should be included in shared libraries. */ - #undef INCLUDE_X86_ISA_LEVEL - -+/* Define if -msahf is enabled by default on x86. */ -+#undef HAVE_X86_LAHF_SAHF -+ -+/* Define if -mmovbe is enabled by default on x86. */ -+#undef HAVE_X86_MOVBE -+ - #endif -diff --git a/sysdeps/x86/configure b/sysdeps/x86/configure -index 5e32dc62b334b27f..ead1295c38cf5f4e 100644 ---- a/sysdeps/x86/configure -+++ b/sysdeps/x86/configure -@@ -126,6 +126,8 @@ cat > conftest2.S <&5 - (eval $ac_try) 2>&5 -@@ -135,6 +137,24 @@ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -nostartfiles -nostdlib -r -o conftest c - count=`LC_ALL=C $READELF -n conftest | grep NT_GNU_PROPERTY_TYPE_0 | wc -l` - if test "$count" = 1; then - libc_cv_include_x86_isa_level=yes -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; } | grep -q "\-msahf"; then -+ libc_cv_have_x86_lahf_sahf=yes -+ fi -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -fverbose-asm -S -o - conftest.c' -+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; } | grep -q "\-mmovbe"; then -+ libc_cv_have_x86_movbe=yes -+ fi - fi - fi - rm -f conftest* -@@ -144,6 +164,14 @@ $as_echo "$libc_cv_include_x86_isa_level" >&6; } - if test $libc_cv_include_x86_isa_level = yes; then - $as_echo "#define INCLUDE_X86_ISA_LEVEL 1" >>confdefs.h - -+fi -+if test $libc_cv_have_x86_lahf_sahf = yes; then -+ $as_echo "#define HAVE_X86_LAHF_SAHF 1" >>confdefs.h -+ -+fi -+if test $libc_cv_have_x86_movbe = yes; then -+ $as_echo "#define HAVE_X86_MOVBE 1" >>confdefs.h -+ - fi - config_vars="$config_vars - enable-x86-isa-level = $libc_cv_include_x86_isa_level" -diff --git a/sysdeps/x86/configure.ac b/sysdeps/x86/configure.ac -index f94088f377ec95ab..bca97fdc2f1ac1a7 100644 ---- a/sysdeps/x86/configure.ac -+++ b/sysdeps/x86/configure.ac -@@ -98,14 +98,30 @@ cat > conftest2.S < conftest.c < -Date: Thu Feb 25 16:08:21 2021 -0500 - - nscd: Fix double free in netgroupcache [BZ #27462] - - In commit 745664bd798ec8fd50438605948eea594179fba1 a use-after-free - was fixed, but this led to an occasional double-free. This patch - tracks the "live" allocation better. - - Tested manually by a third party. - - Related: RHBZ 1927877 - - Reviewed-by: Siddhesh Poyarekar - Reviewed-by: Carlos O'Donell - (cherry picked from commit dca565886b5e8bd7966e15f0ca42ee5cff686673) - -diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c -index dba6ceec1be490bf..ad2daddafdc9d80c 100644 ---- a/nscd/netgroupcache.c -+++ b/nscd/netgroupcache.c -@@ -248,7 +248,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - : NULL); - ndomain = (ndomain ? newbuf + ndomaindiff - : NULL); -- buffer = newbuf; -+ *tofreep = buffer = newbuf; - } - - nhost = memcpy (buffer + bufused, -@@ -319,7 +319,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - else if (status == NSS_STATUS_TRYAGAIN && e == ERANGE) - { - buflen *= 2; -- buffer = xrealloc (buffer, buflen); -+ *tofreep = buffer = xrealloc (buffer, buflen); - } - else if (status == NSS_STATUS_RETURN - || status == NSS_STATUS_NOTFOUND diff --git a/glibc-upstream-2.33-13.patch b/glibc-upstream-2.33-13.patch deleted file mode 100644 index 98eca5e..0000000 --- a/glibc-upstream-2.33-13.patch +++ /dev/null @@ -1,241 +0,0 @@ -commit 32b9280f1d9f78e8fa3874e22f4d9a76460ee02a -Author: Adhemerval Zanella -Date: Thu Mar 11 08:21:06 2021 -0300 - - io: Return EBAFD for negative file descriptor on fstat (BZ #27559) - - Now that fstat is implemented on top fstatat we need to handle negative - inputs. The implementation now rejects AT_FDCWD, which would otherwise - be accepted by the kernel. - - Checked on x86_64-linux-gnu and on i686-linux-gnu. - - (cherry picked from commit 94caafa040e4b4289c968cd70d53041b1463ac4d) - -diff --git a/io/Makefile b/io/Makefile -index b7bebe923f84e878..d145d88f4e3faabf 100644 ---- a/io/Makefile -+++ b/io/Makefile -@@ -68,7 +68,7 @@ tests := test-utime test-stat test-stat2 test-lfs tst-getcwd \ - tst-fts tst-fts-lfs tst-open-tmpfile \ - tst-copy_file_range tst-getcwd-abspath tst-lockf \ - tst-ftw-lnk tst-file_change_detection tst-lchmod \ -- tst-ftw-bz26353 -+ tst-ftw-bz26353 tst-stat tst-stat-lfs - - # Likewise for statx, but we do not need static linking here. - tests-internal += tst-statx -diff --git a/io/fstat.c b/io/fstat.c -index dc117361ffe7064b..17f31bf3b3a65a12 100644 ---- a/io/fstat.c -+++ b/io/fstat.c -@@ -16,10 +16,16 @@ - . */ - - #include -+#include - - int - __fstat (int fd, struct stat *buf) - { -+ if (fd < 0) -+ { -+ __set_errno (EBADF); -+ return -1; -+ } - return __fstatat (fd, "", buf, AT_EMPTY_PATH); - } - -diff --git a/io/fstat64.c b/io/fstat64.c -index addf3797754f16b3..618170695cd56eec 100644 ---- a/io/fstat64.c -+++ b/io/fstat64.c -@@ -16,10 +16,16 @@ - . */ - - #include -+#include - - int - __fstat64 (int fd, struct stat64 *buf) - { -+ if (fd < 0) -+ { -+ __set_errno (EBADF); -+ return -1; -+ } - return __fstatat64 (fd, "", buf, AT_EMPTY_PATH); - } - hidden_def (__fstat64) -diff --git a/io/tst-stat-lfs.c b/io/tst-stat-lfs.c -new file mode 100644 -index 0000000000000000..b53f460ad589c383 ---- /dev/null -+++ b/io/tst-stat-lfs.c -@@ -0,0 +1,2 @@ -+#define _FILE_OFFSET_BITS 64 -+#include "tst-stat.c" -diff --git a/io/tst-stat.c b/io/tst-stat.c -new file mode 100644 -index 0000000000000000..445ac4176c1d0f94 ---- /dev/null -+++ b/io/tst-stat.c -@@ -0,0 +1,102 @@ -+/* Basic tests for stat, lstat, fstat, and fstatat. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+static void -+stat_check (int fd, const char *path, struct stat *st) -+{ -+ TEST_COMPARE (stat (path, st), 0); -+} -+ -+static void -+lstat_check (int fd, const char *path, struct stat *st) -+{ -+ TEST_COMPARE (lstat (path, st), 0); -+} -+ -+static void -+fstat_check (int fd, const char *path, struct stat *st) -+{ -+ /* Test for invalid fstat input (BZ #27559). */ -+ TEST_COMPARE (fstat (AT_FDCWD, st), -1); -+ TEST_COMPARE (errno, EBADF); -+ -+ TEST_COMPARE (fstat (fd, st), 0); -+} -+ -+static void -+fstatat_check (int fd, const char *path, struct stat *st) -+{ -+ TEST_COMPARE (fstatat (fd, "", st, 0), -1); -+ TEST_COMPARE (errno, ENOENT); -+ -+ TEST_COMPARE (fstatat (fd, path, st, 0), 0); -+} -+ -+typedef void (*test_t)(int, const char *path, struct stat *); -+ -+static int -+do_test (void) -+{ -+ char *path; -+ int fd = create_temp_file ("tst-fstat.", &path); -+ TEST_VERIFY_EXIT (fd >= 0); -+ support_write_file_string (path, "abc"); -+ -+ struct statx stx; -+ TEST_COMPARE (statx (fd, path, 0, STATX_BASIC_STATS, &stx), 0); -+ -+ test_t tests[] = { stat_check, lstat_check, fstat_check, fstatat_check }; -+ -+ for (int i = 0; i < array_length (tests); i++) -+ { -+ struct stat st; -+ tests[i](fd, path, &st); -+ -+ TEST_COMPARE (stx.stx_dev_major, major (st.st_dev)); -+ TEST_COMPARE (stx.stx_dev_minor, minor (st.st_dev)); -+ TEST_COMPARE (stx.stx_ino, st.st_ino); -+ TEST_COMPARE (stx.stx_mode, st.st_mode); -+ TEST_COMPARE (stx.stx_nlink, st.st_nlink); -+ TEST_COMPARE (stx.stx_uid, st.st_uid); -+ TEST_COMPARE (stx.stx_gid, st.st_gid); -+ TEST_COMPARE (stx.stx_rdev_major, major (st.st_rdev)); -+ TEST_COMPARE (stx.stx_rdev_minor, minor (st.st_rdev)); -+ TEST_COMPARE (stx.stx_blksize, st.st_blksize); -+ TEST_COMPARE (stx.stx_blocks, st.st_blocks); -+ -+ TEST_COMPARE (stx.stx_ctime.tv_sec, st.st_ctim.tv_sec); -+ TEST_COMPARE (stx.stx_ctime.tv_nsec, st.st_ctim.tv_nsec); -+ TEST_COMPARE (stx.stx_mtime.tv_sec, st.st_mtim.tv_sec); -+ TEST_COMPARE (stx.stx_mtime.tv_nsec, st.st_mtim.tv_nsec); -+ } -+ -+ return 0; -+} -+ -+#include -diff --git a/sysdeps/unix/sysv/linux/fstat.c b/sysdeps/unix/sysv/linux/fstat.c -index fd643622054fea26..31a172dcc81163e7 100644 ---- a/sysdeps/unix/sysv/linux/fstat.c -+++ b/sysdeps/unix/sysv/linux/fstat.c -@@ -19,11 +19,17 @@ - #include - #include - #include -+#include - - #if !XSTAT_IS_XSTAT64 - int - __fstat (int fd, struct stat *buf) - { -+ if (fd < 0) -+ { -+ __set_errno (EBADF); -+ return -1; -+ } - return __fstatat (fd, "", buf, AT_EMPTY_PATH); - } - -diff --git a/sysdeps/unix/sysv/linux/fstat64.c b/sysdeps/unix/sysv/linux/fstat64.c -index 993abcb4458fa309..46de80b663b9c1c4 100644 ---- a/sysdeps/unix/sysv/linux/fstat64.c -+++ b/sysdeps/unix/sysv/linux/fstat64.c -@@ -22,10 +22,16 @@ - #include - #include - #include -+#include - - int - __fstat64_time64 (int fd, struct __stat64_t64 *buf) - { -+ if (fd < 0) -+ { -+ __set_errno (EBADF); -+ return -1; -+ } - return __fstatat64_time64 (fd, "", buf, AT_EMPTY_PATH); - } - #if __TIMESIZE != 64 -@@ -34,6 +40,12 @@ hidden_def (__fstat64_time64) - int - __fstat64 (int fd, struct stat64 *buf) - { -+ if (fd < 0) -+ { -+ __set_errno (EBADF); -+ return -1; -+ } -+ - struct __stat64_t64 st_t64; - return __fstat64_time64 (fd, &st_t64) - ?: __cp_stat64_t64_stat64 (&st_t64, buf); diff --git a/glibc-upstream-2.33-14.patch b/glibc-upstream-2.33-14.patch deleted file mode 100644 index 1f7a7cf..0000000 --- a/glibc-upstream-2.33-14.patch +++ /dev/null @@ -1,193 +0,0 @@ -commit 64f6c287ad3ccd807b7d4c694f4a91e2a662fed5 -Author: H.J. Lu -Date: Sat Mar 6 10:19:32 2021 -0800 - - x86: Handle _SC_LEVEL1_ICACHE_LINESIZE [BZ #27444] - - commit 2d651eb9265d1366d7b9e881bfddd46db9c1ecc4 - Author: H.J. Lu - Date: Fri Sep 18 07:55:14 2020 -0700 - - x86: Move x86 processor cache info to cpu_features - - missed _SC_LEVEL1_ICACHE_LINESIZE. - - 1. Add level1_icache_linesize to struct cpu_features. - 2. Initialize level1_icache_linesize by calling handle_intel, - handle_zhaoxin and handle_amd with _SC_LEVEL1_ICACHE_LINESIZE. - 3. Return level1_icache_linesize for _SC_LEVEL1_ICACHE_LINESIZE. - - Reviewed-by: Carlos O'Donell - (cherry picked from commit f53ffc9b90cbd92fa5518686daf4091bdd1d4889) - -diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile -index dd826743426ffc9c..d231263051f1c242 100644 ---- a/sysdeps/x86/Makefile -+++ b/sysdeps/x86/Makefile -@@ -208,3 +208,11 @@ $(objpfx)check-cet.out: $(..)sysdeps/x86/check-cet.awk \ - generated += check-cet.out - endif - endif -+ -+ifeq ($(subdir),posix) -+tests += \ -+ tst-sysconf-cache-linesize \ -+ tst-sysconf-cache-linesize-static -+tests-static += \ -+ tst-sysconf-cache-linesize-static -+endif -diff --git a/sysdeps/x86/cacheinfo.c b/sysdeps/x86/cacheinfo.c -index 7b8df45e3bb6eaa1..5ea4723ca69d7b62 100644 ---- a/sysdeps/x86/cacheinfo.c -+++ b/sysdeps/x86/cacheinfo.c -@@ -32,6 +32,9 @@ __cache_sysconf (int name) - case _SC_LEVEL1_ICACHE_SIZE: - return cpu_features->level1_icache_size; - -+ case _SC_LEVEL1_ICACHE_LINESIZE: -+ return cpu_features->level1_icache_linesize; -+ - case _SC_LEVEL1_DCACHE_SIZE: - return cpu_features->level1_dcache_size; - -diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h -index 6f91651f0da1d46a..2ab3acd83e1cfd97 100644 ---- a/sysdeps/x86/dl-cacheinfo.h -+++ b/sysdeps/x86/dl-cacheinfo.h -@@ -707,6 +707,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - long int core; - unsigned int threads = 0; - unsigned long int level1_icache_size = -1; -+ unsigned long int level1_icache_linesize = -1; - unsigned long int level1_dcache_size = -1; - unsigned long int level1_dcache_assoc = -1; - unsigned long int level1_dcache_linesize = -1; -@@ -726,6 +727,8 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - - level1_icache_size - = handle_intel (_SC_LEVEL1_ICACHE_SIZE, cpu_features); -+ level1_icache_linesize -+ = handle_intel (_SC_LEVEL1_ICACHE_LINESIZE, cpu_features); - level1_dcache_size = data; - level1_dcache_assoc - = handle_intel (_SC_LEVEL1_DCACHE_ASSOC, cpu_features); -@@ -753,6 +756,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - shared = handle_zhaoxin (_SC_LEVEL3_CACHE_SIZE); - - level1_icache_size = handle_zhaoxin (_SC_LEVEL1_ICACHE_SIZE); -+ level1_icache_linesize = handle_zhaoxin (_SC_LEVEL1_ICACHE_LINESIZE); - level1_dcache_size = data; - level1_dcache_assoc = handle_zhaoxin (_SC_LEVEL1_DCACHE_ASSOC); - level1_dcache_linesize = handle_zhaoxin (_SC_LEVEL1_DCACHE_LINESIZE); -@@ -772,6 +776,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - shared = handle_amd (_SC_LEVEL3_CACHE_SIZE); - - level1_icache_size = handle_amd (_SC_LEVEL1_ICACHE_SIZE); -+ level1_icache_linesize = handle_amd (_SC_LEVEL1_ICACHE_LINESIZE); - level1_dcache_size = data; - level1_dcache_assoc = handle_amd (_SC_LEVEL1_DCACHE_ASSOC); - level1_dcache_linesize = handle_amd (_SC_LEVEL1_DCACHE_LINESIZE); -@@ -833,6 +838,7 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - } - - cpu_features->level1_icache_size = level1_icache_size; -+ cpu_features->level1_icache_linesize = level1_icache_linesize; - cpu_features->level1_dcache_size = level1_dcache_size; - cpu_features->level1_dcache_assoc = level1_dcache_assoc; - cpu_features->level1_dcache_linesize = level1_dcache_linesize; -diff --git a/sysdeps/x86/dl-diagnostics-cpu.c b/sysdeps/x86/dl-diagnostics-cpu.c -index 55c6f35c7cabb4da..af8486470826426d 100644 ---- a/sysdeps/x86/dl-diagnostics-cpu.c -+++ b/sysdeps/x86/dl-diagnostics-cpu.c -@@ -89,6 +89,8 @@ _dl_diagnostics_cpu (void) - cpu_features->rep_stosb_threshold); - print_cpu_features_value ("level1_icache_size", - cpu_features->level1_icache_size); -+ print_cpu_features_value ("level1_icache_linesize", -+ cpu_features->level1_icache_linesize); - print_cpu_features_value ("level1_dcache_size", - cpu_features->level1_dcache_size); - print_cpu_features_value ("level1_dcache_assoc", -diff --git a/sysdeps/x86/include/cpu-features.h b/sysdeps/x86/include/cpu-features.h -index 184dc93c699d9b91..04d8e5734eb53e2b 100644 ---- a/sysdeps/x86/include/cpu-features.h -+++ b/sysdeps/x86/include/cpu-features.h -@@ -859,6 +859,8 @@ struct cpu_features - unsigned long int rep_stosb_threshold; - /* _SC_LEVEL1_ICACHE_SIZE. */ - unsigned long int level1_icache_size; -+ /* _SC_LEVEL1_ICACHE_LINESIZE. */ -+ unsigned long int level1_icache_linesize; - /* _SC_LEVEL1_DCACHE_SIZE. */ - unsigned long int level1_dcache_size; - /* _SC_LEVEL1_DCACHE_ASSOC. */ -diff --git a/sysdeps/x86/tst-sysconf-cache-linesize-static.c b/sysdeps/x86/tst-sysconf-cache-linesize-static.c -new file mode 100644 -index 0000000000000000..152ae68821748b3d ---- /dev/null -+++ b/sysdeps/x86/tst-sysconf-cache-linesize-static.c -@@ -0,0 +1 @@ -+#include "tst-sysconf-cache-linesize.c" -diff --git a/sysdeps/x86/tst-sysconf-cache-linesize.c b/sysdeps/x86/tst-sysconf-cache-linesize.c -new file mode 100644 -index 0000000000000000..642dbde5d25b7c5e ---- /dev/null -+++ b/sysdeps/x86/tst-sysconf-cache-linesize.c -@@ -0,0 +1,57 @@ -+/* Test system cache line sizes. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+ -+static struct -+{ -+ const char *name; -+ int _SC_val; -+} sc_options[] = -+ { -+#define N(name) { "_SC_"#name, _SC_##name } -+ N (LEVEL1_ICACHE_LINESIZE), -+ N (LEVEL1_DCACHE_LINESIZE), -+ N (LEVEL2_CACHE_LINESIZE) -+ }; -+ -+static int -+do_test (void) -+{ -+ int result = EXIT_SUCCESS; -+ -+ for (int i = 0; i < array_length (sc_options); ++i) -+ { -+ long int scret = sysconf (sc_options[i]._SC_val); -+ if (scret < 0) -+ { -+ printf ("sysconf (%s) returned < 0 (%ld)\n", -+ sc_options[i].name, scret); -+ result = EXIT_FAILURE; -+ } -+ else -+ printf ("sysconf (%s): %ld\n", sc_options[i].name, scret); -+ } -+ -+ return result; -+} -+ -+#include diff --git a/glibc-upstream-2.33-15.patch b/glibc-upstream-2.33-15.patch deleted file mode 100644 index a527e02..0000000 --- a/glibc-upstream-2.33-15.patch +++ /dev/null @@ -1,162 +0,0 @@ -commit ea5a537e879bb667e03435a2308d915dc89448a6 -Author: Carlos O'Donell -Date: Fri Mar 12 16:44:47 2021 +0100 - - elf: Always set l in _dl_init_paths (bug 23462) - - After d1d5471579eb0426671bf94f2d71e61dfb204c30 ("Remove dead - DL_DST_REQ_STATIC code.") we always setup the link map l to make the - static and shared cases the same. The bug is that in elf/dl-load.c - (_dl_init_paths) we conditionally set l only in the #ifdef SHARED - case, but unconditionally use it later. The simple solution is to - remove the #ifdef SHARED conditional, because it's no longer needed, - and unconditionally setup l for both the static and shared cases. A - regression test is added to run a static binary with - LD_LIBRARY_PATH='$ORIGIN' which crashes before the fix and runs after - the fix. - - Co-Authored-By: Florian Weimer - (cherry picked from commit 332421312576bd7095e70589154af99b124dd2d1) - -diff --git a/elf/Makefile b/elf/Makefile -index 7610fa080f3f4738..63da0ed64f6234a8 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -164,7 +164,8 @@ tests-static-normal := tst-leaks1-static tst-array1-static tst-array5-static \ - tst-dl-iter-static \ - tst-tlsalign-static tst-tlsalign-extern-static \ - tst-linkall-static tst-env-setuid tst-env-setuid-tunables \ -- tst-single_threaded-static tst-single_threaded-pthread-static -+ tst-single_threaded-static tst-single_threaded-pthread-static \ -+ tst-dst-static - - tests-static-internal := tst-tls1-static tst-tls2-static \ - tst-ptrguard1-static tst-stackguard1-static \ -@@ -1905,3 +1906,5 @@ $(objpfx)list-tunables.out: tst-rtld-list-tunables.sh $(objpfx)ld.so - cmp tst-rtld-list-tunables.exp \ - $(objpfx)/tst-rtld-list-tunables.out > $@; \ - $(evaluate-test) -+ -+tst-dst-static-ENV = LD_LIBRARY_PATH='$$ORIGIN' -diff --git a/elf/dl-load.c b/elf/dl-load.c -index 9e2089cfaa7dd4b1..376a2e64d6a33535 100644 ---- a/elf/dl-load.c -+++ b/elf/dl-load.c -@@ -758,50 +758,45 @@ _dl_init_paths (const char *llp, const char *source, - max_dirnamelen = SYSTEM_DIRS_MAX_LEN; - *aelem = NULL; - --#ifdef SHARED - /* This points to the map of the main object. */ - l = GL(dl_ns)[LM_ID_BASE]._ns_loaded; -- if (l != NULL) -+ assert (l->l_type != lt_loaded); -+ -+ if (l->l_info[DT_RUNPATH]) -+ { -+ /* Allocate room for the search path and fill in information -+ from RUNPATH. */ -+ decompose_rpath (&l->l_runpath_dirs, -+ (const void *) (D_PTR (l, l_info[DT_STRTAB]) -+ + l->l_info[DT_RUNPATH]->d_un.d_val), -+ l, "RUNPATH"); -+ /* During rtld init the memory is allocated by the stub malloc, -+ prevent any attempt to free it by the normal malloc. */ -+ l->l_runpath_dirs.malloced = 0; -+ -+ /* The RPATH is ignored. */ -+ l->l_rpath_dirs.dirs = (void *) -1; -+ } -+ else - { -- assert (l->l_type != lt_loaded); -+ l->l_runpath_dirs.dirs = (void *) -1; - -- if (l->l_info[DT_RUNPATH]) -+ if (l->l_info[DT_RPATH]) - { - /* Allocate room for the search path and fill in information -- from RUNPATH. */ -- decompose_rpath (&l->l_runpath_dirs, -+ from RPATH. */ -+ decompose_rpath (&l->l_rpath_dirs, - (const void *) (D_PTR (l, l_info[DT_STRTAB]) -- + l->l_info[DT_RUNPATH]->d_un.d_val), -- l, "RUNPATH"); -- /* During rtld init the memory is allocated by the stub malloc, -- prevent any attempt to free it by the normal malloc. */ -- l->l_runpath_dirs.malloced = 0; -- -- /* The RPATH is ignored. */ -- l->l_rpath_dirs.dirs = (void *) -1; -+ + l->l_info[DT_RPATH]->d_un.d_val), -+ l, "RPATH"); -+ /* During rtld init the memory is allocated by the stub -+ malloc, prevent any attempt to free it by the normal -+ malloc. */ -+ l->l_rpath_dirs.malloced = 0; - } - else -- { -- l->l_runpath_dirs.dirs = (void *) -1; -- -- if (l->l_info[DT_RPATH]) -- { -- /* Allocate room for the search path and fill in information -- from RPATH. */ -- decompose_rpath (&l->l_rpath_dirs, -- (const void *) (D_PTR (l, l_info[DT_STRTAB]) -- + l->l_info[DT_RPATH]->d_un.d_val), -- l, "RPATH"); -- /* During rtld init the memory is allocated by the stub -- malloc, prevent any attempt to free it by the normal -- malloc. */ -- l->l_rpath_dirs.malloced = 0; -- } -- else -- l->l_rpath_dirs.dirs = (void *) -1; -- } -+ l->l_rpath_dirs.dirs = (void *) -1; - } --#endif /* SHARED */ - - if (llp != NULL && *llp != '\0') - { -diff --git a/elf/tst-dst-static.c b/elf/tst-dst-static.c -new file mode 100644 -index 0000000000000000..56eb371c96f85276 ---- /dev/null -+++ b/elf/tst-dst-static.c -@@ -0,0 +1,32 @@ -+/* Test DST expansion for static binaries doesn't carsh. Bug 23462. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* The purpose of this test is to exercise the code in elf/dl-loac.c -+ (_dl_init_paths) or thereabout and ensure that static binaries -+ don't crash when expanding DSTs. -+ -+ If the dynamic loader code linked into the static binary cannot -+ handle expanding the DSTs e.g. null-deref on an incomplete link -+ map, then it will crash before reaching main, so the test harness -+ is unnecessary. */ -+ -+int -+main (void) -+{ -+ return 0; -+} diff --git a/glibc-upstream-2.33-16.patch b/glibc-upstream-2.33-16.patch deleted file mode 100644 index 8b50d66..0000000 --- a/glibc-upstream-2.33-16.patch +++ /dev/null @@ -1,77 +0,0 @@ -commit dd8023c2ac0af28a6e391a2eb5038bb351694243 -Author: Florian Weimer -Date: Mon Mar 15 10:33:43 2021 +0100 - - elf: ld.so --help calls _dl_init_paths without a main map [BZ #27577] - - In this case, use the link map of the dynamic loader itself as - a replacement. This is more than just a hack: if we ever support - DT_RUNPATH/DT_RPATH for the dynamic loader, reporting it for - ld.so --help (without further command line arguments) would be the - right thing to do. - - Fixes commit 332421312576bd7095e70589154af99b124dd2d1 ("elf: Always - set l in _dl_init_paths (bug 23462)"). - - (cherry picked from commit 4e6db99c665d3b82a70a3e218860ef087b1555b4) - -diff --git a/elf/Makefile b/elf/Makefile -index 63da0ed64f6234a8..4b92f8b3054b556e 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -245,7 +245,7 @@ tests += $(tests-execstack-$(have-z-execstack)) - ifeq ($(run-built-tests),yes) - tests-special += $(objpfx)tst-leaks1-mem.out \ - $(objpfx)tst-leaks1-static-mem.out $(objpfx)noload-mem.out \ -- $(objpfx)tst-ldconfig-X.out -+ $(objpfx)tst-ldconfig-X.out $(objpfx)tst-rtld-help.out - endif - tlsmod17a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 - tlsmod18a-suffixes = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 -@@ -433,7 +433,8 @@ endif - ifeq (yes,$(build-shared)) - ifeq ($(run-built-tests),yes) - tests-special += $(objpfx)tst-pathopt.out $(objpfx)tst-rtld-load-self.out \ -- $(objpfx)tst-rtld-preload.out $(objpfx)argv0test.out -+ $(objpfx)tst-rtld-preload.out $(objpfx)argv0test.out \ -+ $(objpfx)tst-rtld-help.out - endif - tests-special += $(objpfx)check-textrel.out $(objpfx)check-execstack.out \ - $(objpfx)check-wx-segment.out \ -@@ -1908,3 +1909,16 @@ $(objpfx)list-tunables.out: tst-rtld-list-tunables.sh $(objpfx)ld.so - $(evaluate-test) - - tst-dst-static-ENV = LD_LIBRARY_PATH='$$ORIGIN' -+ -+$(objpfx)tst-rtld-help.out: $(objpfx)ld.so -+ $(test-wrapper) $(rtld-prefix) --help > $@; \ -+ status=$$?; \ -+ echo "info: ld.so exit status: $$status" >> $@; \ -+ if ! grep -q 'Legacy HWCAP subdirectories under library search path directories' $@; then \ -+ echo "error: missing subdirectory pattern" >> $@; \ -+ if test $$status -eq 0; then \ -+ status=1; \ -+ fi; \ -+ fi; \ -+ (exit $$status); \ -+ $(evaluate-test) -diff --git a/elf/dl-load.c b/elf/dl-load.c -index 376a2e64d6a33535..2f760503c5f117f8 100644 ---- a/elf/dl-load.c -+++ b/elf/dl-load.c -@@ -758,8 +758,14 @@ _dl_init_paths (const char *llp, const char *source, - max_dirnamelen = SYSTEM_DIRS_MAX_LEN; - *aelem = NULL; - -- /* This points to the map of the main object. */ -+ /* This points to the map of the main object. If there is no main -+ object (e.g., under --help, use the dynamic loader itself as a -+ stand-in. */ - l = GL(dl_ns)[LM_ID_BASE]._ns_loaded; -+#ifdef SHARED -+ if (l == NULL) -+ l = &GL (dl_rtld_map); -+#endif - assert (l->l_type != lt_loaded); - - if (l->l_info[DT_RUNPATH]) diff --git a/glibc-upstream-2.33-17.patch b/glibc-upstream-2.33-17.patch deleted file mode 100644 index 96a2974..0000000 --- a/glibc-upstream-2.33-17.patch +++ /dev/null @@ -1,196 +0,0 @@ -commit f90d6b0484032334a3e2db5891981e123051cf19 -Author: Jakub Jelinek -Date: Thu Mar 4 15:15:33 2021 +0100 - - pthread_once hangs when init routine throws an exception [BZ #18435] - - This is another attempt at making pthread_once handle throwing exceptions - from the init routine callback. As the new testcases show, just switching - to the cleanup attribute based cleanup does fix the tst-once5 test, but - breaks the new tst-oncey3 test. That is because when throwing exceptions, - only the unwind info registered cleanups (i.e. C++ destructors or cleanup - attribute), when cancelling threads and there has been unwind info from the - cancellation point up to whatever needs cleanup both unwind info registered - cleanups and THREAD_SETMEM (self, cleanup, ...) registered cleanups are - invoked, but once we hit some frame with no unwind info, only the - THREAD_SETMEM (self, cleanup, ...) registered cleanups are invoked. - So, to stay fully backwards compatible (allow init routines without - unwind info which encounter cancellation points) and handle exception throwing - we actually need to register the pthread_once cleanups in both unwind info - and in the THREAD_SETMEM (self, cleanup, ...) way. - If an exception is thrown, only the former will happen and we in that case - need to also unregister the THREAD_SETMEM (self, cleanup, ...) registered - handler, because otherwise after catching the exception the user code could - call deeper into the stack some cancellation point, get cancelled and then - a stale cleanup handler would clobber stack and probably crash. - If a thread calling init routine is cancelled and unwind info ends before - the pthread_once frame, it will be cleaned up through self->cleanup as - before. And if unwind info is present, unwind_stop first calls the - self->cleanup registered handler for the frame, then it will call the - unwind info registered handler but that will already see __do_it == 0 - and do nothing. - - (cherry picked from commit f0419e6a10740a672b28e112c409ae24f5e890ab) - -diff --git a/nptl/Makefile b/nptl/Makefile -index 0282e07390e8a249..5b036eb8a7b5d8b3 100644 ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -314,10 +314,6 @@ xtests += tst-eintr1 - - test-srcs = tst-oddstacklimit - --# Test expected to fail on most targets (except x86_64) due to bug --# 18435 - pthread_once hangs when init routine throws an exception. --test-xfail-tst-once5 = yes -- - gen-as-const-headers = unwindbuf.sym \ - pthread-pi-defines.sym - -diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h -index e5efa2e62d3d23d8..79be1bc70f4e9db8 100644 ---- a/nptl/pthreadP.h -+++ b/nptl/pthreadP.h -@@ -602,6 +602,67 @@ extern void __pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, - # undef pthread_cleanup_pop - # define pthread_cleanup_pop(execute) \ - __pthread_cleanup_pop (&_buffer, (execute)); } -+ -+# if defined __EXCEPTIONS && !defined __cplusplus -+/* Structure to hold the cleanup handler information. */ -+struct __pthread_cleanup_combined_frame -+{ -+ void (*__cancel_routine) (void *); -+ void *__cancel_arg; -+ int __do_it; -+ struct _pthread_cleanup_buffer __buffer; -+}; -+ -+/* Special cleanup macros which register cleanup both using -+ __pthread_cleanup_{push,pop} and using cleanup attribute. This is needed -+ for pthread_once, so that it supports both throwing exceptions from the -+ pthread_once callback (only cleanup attribute works there) and cancellation -+ of the thread running the callback if the callback or some routines it -+ calls don't have unwind information. */ -+ -+static __always_inline void -+__pthread_cleanup_combined_routine (struct __pthread_cleanup_combined_frame -+ *__frame) -+{ -+ if (__frame->__do_it) -+ { -+ __frame->__cancel_routine (__frame->__cancel_arg); -+ __frame->__do_it = 0; -+ __pthread_cleanup_pop (&__frame->__buffer, 0); -+ } -+} -+ -+static inline void -+__pthread_cleanup_combined_routine_voidptr (void *__arg) -+{ -+ struct __pthread_cleanup_combined_frame *__frame -+ = (struct __pthread_cleanup_combined_frame *) __arg; -+ if (__frame->__do_it) -+ { -+ __frame->__cancel_routine (__frame->__cancel_arg); -+ __frame->__do_it = 0; -+ } -+} -+ -+# define pthread_cleanup_combined_push(routine, arg) \ -+ do { \ -+ void (*__cancel_routine) (void *) = (routine); \ -+ struct __pthread_cleanup_combined_frame __clframe \ -+ __attribute__ ((__cleanup__ (__pthread_cleanup_combined_routine))) \ -+ = { .__cancel_routine = __cancel_routine, .__cancel_arg = (arg), \ -+ .__do_it = 1 }; \ -+ __pthread_cleanup_push (&__clframe.__buffer, \ -+ __pthread_cleanup_combined_routine_voidptr, \ -+ &__clframe); -+ -+# define pthread_cleanup_combined_pop(execute) \ -+ __pthread_cleanup_pop (&__clframe.__buffer, 0); \ -+ __clframe.__do_it = 0; \ -+ if (execute) \ -+ __cancel_routine (__clframe.__cancel_arg); \ -+ } while (0) -+ -+# endif - #endif - - extern void __pthread_cleanup_push_defer (struct _pthread_cleanup_buffer *buffer, -diff --git a/nptl/pthread_once.c b/nptl/pthread_once.c -index 28d97097c75f992d..7645da222a65bc3d 100644 ---- a/nptl/pthread_once.c -+++ b/nptl/pthread_once.c -@@ -111,11 +111,11 @@ __pthread_once_slow (pthread_once_t *once_control, void (*init_routine) (void)) - /* This thread is the first here. Do the initialization. - Register a cleanup handler so that in case the thread gets - interrupted the initialization can be restarted. */ -- pthread_cleanup_push (clear_once_control, once_control); -+ pthread_cleanup_combined_push (clear_once_control, once_control); - - init_routine (); - -- pthread_cleanup_pop (0); -+ pthread_cleanup_combined_pop (0); - - - /* Mark *once_control as having finished the initialization. We need -diff --git a/nptl/tst-once5.cc b/nptl/tst-once5.cc -index b797ab35622e78eb..60fe1ef820f3832c 100644 ---- a/nptl/tst-once5.cc -+++ b/nptl/tst-once5.cc -@@ -59,7 +59,7 @@ do_test (void) - " throwing an exception", stderr); - } - catch (OnceException) { -- if (1 < niter) -+ if (niter > 1) - fputs ("pthread_once unexpectedly threw", stderr); - result = 0; - } -@@ -75,7 +75,5 @@ do_test (void) - return result; - } - --// The test currently hangs and is XFAILed. Reduce the timeout. --#define TIMEOUT 1 - #define TEST_FUNCTION do_test () - #include "../test-skeleton.c" -diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile -index eeb64f9fb0480ccc..53b65ef3499ef8c9 100644 ---- a/sysdeps/pthread/Makefile -+++ b/sysdeps/pthread/Makefile -@@ -231,7 +231,7 @@ generated += $(objpfx)tst-atfork2.mtrace \ - - tests-internal += tst-cancel25 tst-robust8 - --tests += tst-oncex3 tst-oncex4 -+tests += tst-oncex3 tst-oncex4 tst-oncey3 tst-oncey4 - - modules-names += tst-join7mod - -@@ -242,6 +242,8 @@ endif - - CFLAGS-tst-oncex3.c += -fexceptions - CFLAGS-tst-oncex4.c += -fexceptions -+CFLAGS-tst-oncey3.c += -fno-exceptions -fno-asynchronous-unwind-tables -+CFLAGS-tst-oncey4.c += -fno-exceptions -fno-asynchronous-unwind-tables - - $(objpfx)tst-join7: $(libdl) $(shared-thread-library) - $(objpfx)tst-join7.out: $(objpfx)tst-join7mod.so -diff --git a/sysdeps/pthread/tst-oncey3.c b/sysdeps/pthread/tst-oncey3.c -new file mode 100644 -index 0000000000000000..08225b88dc06b979 ---- /dev/null -+++ b/sysdeps/pthread/tst-oncey3.c -@@ -0,0 +1 @@ -+#include "tst-once3.c" -diff --git a/sysdeps/pthread/tst-oncey4.c b/sysdeps/pthread/tst-oncey4.c -new file mode 100644 -index 0000000000000000..9b4d98f3f13c265a ---- /dev/null -+++ b/sysdeps/pthread/tst-oncey4.c -@@ -0,0 +1 @@ -+#include "tst-once4.c" diff --git a/glibc-upstream-2.33-18.patch b/glibc-upstream-2.33-18.patch deleted file mode 100644 index 4318bad..0000000 --- a/glibc-upstream-2.33-18.patch +++ /dev/null @@ -1,42 +0,0 @@ -commit 79c6be6a0ad59e28cfb73ad6cae6b073e22836e3 -Author: Florian Weimer -Date: Thu Feb 4 15:00:20 2021 +0100 - - nptl: Remove private futex optimization [BZ #27304] - - It is effectively used, unexcept for pthread_cond_destroy, where we do - not want it; see bug 27304. The internal locks do not support a - process-shared mode. - - This fixes commit dc6cfdc934db9997c33728082d63552b9eee4563 ("nptl: - Move pthread_cond_destroy implementation into libc"). - - Reviewed-by: Adhemerval Zanella - (cherry picked from commit c4ad832276f4dadfa40904109b26a521468f66bc) - -diff --git a/sysdeps/nptl/lowlevellock-futex.h b/sysdeps/nptl/lowlevellock-futex.h -index ecb729da6b838773..ca96397a4a925b8b 100644 ---- a/sysdeps/nptl/lowlevellock-futex.h -+++ b/sysdeps/nptl/lowlevellock-futex.h -@@ -50,20 +50,8 @@ - #define LLL_SHARED FUTEX_PRIVATE_FLAG - - #ifndef __ASSEMBLER__ -- --# if IS_IN (libc) || IS_IN (rtld) --/* In libc.so or ld.so all futexes are private. */ --# define __lll_private_flag(fl, private) \ -- ({ \ -- /* Prevent warnings in callers of this macro. */ \ -- int __lll_private_flag_priv __attribute__ ((unused)); \ -- __lll_private_flag_priv = (private); \ -- ((fl) | FUTEX_PRIVATE_FLAG); \ -- }) --# else --# define __lll_private_flag(fl, private) \ -+# define __lll_private_flag(fl, private) \ - (((fl) | FUTEX_PRIVATE_FLAG) ^ (private)) --# endif - - # define lll_futex_syscall(nargs, futexp, op, ...) \ - ({ \ diff --git a/glibc-upstream-2.33-19.patch b/glibc-upstream-2.33-19.patch deleted file mode 100644 index 8d22581..0000000 --- a/glibc-upstream-2.33-19.patch +++ /dev/null @@ -1,102 +0,0 @@ -commit db32fc27e7bdfb5468200a94e9152bcc1c971d25 -Author: DJ Delorie -Date: Thu Mar 11 12:50:02 2021 -0500 - - test-container: Always copy test-specific support files [BZ #27537] - - There's a small chance that a fresh checkout will result in some of - the test-specific container files will have the same timestamp and - size, which breaks the rsync logic in test-container, resulting in - tests running with the wrong support files. - - This patch changes the rsync logic to always copy the test-specific - files, which normally would always be copied anyway. The rsync logic - for the testroot itself is unchanged. - - (cherry picked from commit 20bee7134801cc932ff87fac511289b92fc94944) - -diff --git a/support/test-container.c b/support/test-container.c -index 28cc44d9f1e28c10..94498d39019a4776 100644 ---- a/support/test-container.c -+++ b/support/test-container.c -@@ -481,7 +481,7 @@ need_sync (char *ap, char *bp, struct stat *a, struct stat *b) - } - - static void --rsync_1 (path_buf * src, path_buf * dest, int and_delete) -+rsync_1 (path_buf * src, path_buf * dest, int and_delete, int force_copies) - { - DIR *dir; - struct dirent *de; -@@ -491,8 +491,9 @@ rsync_1 (path_buf * src, path_buf * dest, int and_delete) - r_append ("/", dest); - - if (verbose) -- printf ("sync %s to %s %s\n", src->buf, dest->buf, -- and_delete ? "and delete" : ""); -+ printf ("sync %s to %s%s%s\n", src->buf, dest->buf, -+ and_delete ? " and delete" : "", -+ force_copies ? " (forced)" : ""); - - size_t staillen = src->len; - -@@ -521,10 +522,10 @@ rsync_1 (path_buf * src, path_buf * dest, int and_delete) - missing. */ - lstat (dest->buf, &d); - -- if (! need_sync (src->buf, dest->buf, &s, &d)) -+ if (! force_copies && ! need_sync (src->buf, dest->buf, &s, &d)) - { - if (S_ISDIR (s.st_mode)) -- rsync_1 (src, dest, and_delete); -+ rsync_1 (src, dest, and_delete, force_copies); - continue; - } - -@@ -559,7 +560,7 @@ rsync_1 (path_buf * src, path_buf * dest, int and_delete) - if (verbose) - printf ("+D %s\n", dest->buf); - maybe_xmkdir (dest->buf, (s.st_mode & 0777) | 0700); -- rsync_1 (src, dest, and_delete); -+ rsync_1 (src, dest, and_delete, force_copies); - break; - - case S_IFLNK: -@@ -639,12 +640,12 @@ rsync_1 (path_buf * src, path_buf * dest, int and_delete) - } - - static void --rsync (char *src, char *dest, int and_delete) -+rsync (char *src, char *dest, int and_delete, int force_copies) - { - r_setup (src, &spath); - r_setup (dest, &dpath); - -- rsync_1 (&spath, &dpath, and_delete); -+ rsync_1 (&spath, &dpath, and_delete, force_copies); - } - - -@@ -846,11 +847,11 @@ main (int argc, char **argv) - do_ldconfig = true; - - rsync (pristine_root_path, new_root_path, -- file_exists (concat (command_root, "/preclean.req", NULL))); -+ file_exists (concat (command_root, "/preclean.req", NULL)), 0); - - if (stat (command_root, &st) >= 0 - && S_ISDIR (st.st_mode)) -- rsync (command_root, new_root_path, 0); -+ rsync (command_root, new_root_path, 0, 1); - - new_objdir_path = xstrdup (concat (new_root_path, - support_objdir_root, NULL)); -@@ -1044,7 +1045,7 @@ main (int argc, char **argv) - - /* Child has exited, we can post-clean the test root. */ - printf("running post-clean rsync\n"); -- rsync (pristine_root_path, new_root_path, 1); -+ rsync (pristine_root_path, new_root_path, 1, 0); - - if (WIFEXITED (status)) - exit (WEXITSTATUS (status)); diff --git a/glibc-upstream-2.33-2.patch b/glibc-upstream-2.33-2.patch deleted file mode 100644 index cab93f3..0000000 --- a/glibc-upstream-2.33-2.patch +++ /dev/null @@ -1,364 +0,0 @@ -commit 15afd6b8d8263010ed41bca09e62fefec1b7b3f8 -Author: Siddhesh Poyarekar -Date: Fri Feb 5 13:18:58 2021 +0530 - - tunables: Simplify TUNABLE_SET interface - - The TUNABLE_SET interface took a primitive C type argument, which - resulted in inconsistent type conversions internally due to incorrect - dereferencing of types, especialy on 32-bit architectures. This - change simplifies the TUNABLE setting logic along with the interfaces. - - Now all numeric tunable values are stored as signed numbers in - tunable_num_t, which is intmax_t. All calls to set tunables cast the - input value to its primitive type and then to tunable_num_t for - storage. This relies on gcc-specific (although I suspect other - compilers woul also do the same) unsigned to signed integer conversion - semantics, i.e. the bit pattern is conserved. The reverse conversion - is guaranteed by the standard. - - (cherry picked from commit 61117bfa1b08ca048e6512c0652c568300fedf6a) - -diff --git a/elf/dl-tunable-types.h b/elf/dl-tunable-types.h -index 3fcc0806f5f2ec04..626ca334be105e69 100644 ---- a/elf/dl-tunable-types.h -+++ b/elf/dl-tunable-types.h -@@ -38,8 +38,8 @@ typedef enum - typedef struct - { - tunable_type_code_t type_code; -- int64_t min; -- int64_t max; -+ tunable_num_t min; -+ tunable_num_t max; - } tunable_type_t; - - /* Security level for tunables. This decides what to do with individual -diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c -index b1a50b84693d15de..a2be9cde2f7333ea 100644 ---- a/elf/dl-tunables.c -+++ b/elf/dl-tunables.c -@@ -93,87 +93,45 @@ get_next_env (char **envp, char **name, size_t *namelen, char **val, - return NULL; - } - --#define TUNABLE_SET_VAL_IF_VALID_RANGE(__cur, __val, __type) \ --({ \ -- __type min = (__cur)->type.min; \ -- __type max = (__cur)->type.max; \ -- \ -- if ((__type) (__val) >= min && (__type) (__val) <= max) \ -- { \ -- (__cur)->val.numval = (__val); \ -- (__cur)->initialized = true; \ -- } \ --}) -- --#define TUNABLE_SET_BOUNDS_IF_VALID(__cur, __minp, __maxp, __type) \ --({ \ -- if (__minp != NULL) \ -- { \ -- /* MIN is specified. */ \ -- __type min = *((__type *) __minp); \ -- if (__maxp != NULL) \ -- { \ -- /* Both MIN and MAX are specified. */ \ -- __type max = *((__type *) __maxp); \ -- if (max >= min \ -- && max <= (__cur)->type.max \ -- && min >= (__cur)->type.min) \ -- { \ -- (__cur)->type.min = min; \ -- (__cur)->type.max = max; \ -- } \ -- } \ -- else if (min > (__cur)->type.min && min <= (__cur)->type.max) \ -- { \ -- /* Only MIN is specified. */ \ -- (__cur)->type.min = min; \ -- } \ -- } \ -- else if (__maxp != NULL) \ -- { \ -- /* Only MAX is specified. */ \ -- __type max = *((__type *) __maxp); \ -- if (max < (__cur)->type.max && max >= (__cur)->type.min) \ -- (__cur)->type.max = max; \ -- } \ --}) -- - static void --do_tunable_update_val (tunable_t *cur, const void *valp, -- const void *minp, const void *maxp) -+do_tunable_update_val (tunable_t *cur, const tunable_val_t *valp, -+ const tunable_num_t *minp, -+ const tunable_num_t *maxp) - { -- uint64_t val; -+ tunable_num_t val, min, max; - -- if (cur->type.type_code != TUNABLE_TYPE_STRING) -- val = *((int64_t *) valp); -+ if (cur->type.type_code == TUNABLE_TYPE_STRING) -+ { -+ cur->val.strval = valp->strval; -+ cur->initialized = true; -+ return; -+ } - -- switch (cur->type.type_code) -+ val = valp->numval; -+ min = minp != NULL ? *minp : cur->type.min; -+ max = maxp != NULL ? *maxp : cur->type.max; -+ -+ /* We allow only increasingly restrictive bounds. */ -+ if (min < cur->type.min) -+ min = cur->type.min; -+ -+ if (max > cur->type.max) -+ max = cur->type.max; -+ -+ /* Skip both bounds if they're inconsistent. */ -+ if (min > max) - { -- case TUNABLE_TYPE_INT_32: -- { -- TUNABLE_SET_BOUNDS_IF_VALID (cur, minp, maxp, int64_t); -- TUNABLE_SET_VAL_IF_VALID_RANGE (cur, val, int64_t); -- break; -- } -- case TUNABLE_TYPE_UINT_64: -- { -- TUNABLE_SET_BOUNDS_IF_VALID (cur, minp, maxp, uint64_t); -- TUNABLE_SET_VAL_IF_VALID_RANGE (cur, val, uint64_t); -- break; -- } -- case TUNABLE_TYPE_SIZE_T: -- { -- TUNABLE_SET_BOUNDS_IF_VALID (cur, minp, maxp, uint64_t); -- TUNABLE_SET_VAL_IF_VALID_RANGE (cur, val, uint64_t); -- break; -- } -- case TUNABLE_TYPE_STRING: -- { -- cur->val.strval = valp; -- break; -- } -- default: -- __builtin_unreachable (); -+ min = cur->type.min; -+ max = cur->type.max; -+ } -+ -+ /* Write everything out if the value and the bounds are valid. */ -+ if (min <= val && val <= max) -+ { -+ cur->val.numval = val; -+ cur->type.min = min; -+ cur->type.max = max; -+ cur->initialized = true; - } - } - -@@ -182,24 +140,18 @@ do_tunable_update_val (tunable_t *cur, const void *valp, - static void - tunable_initialize (tunable_t *cur, const char *strval) - { -- uint64_t val; -- const void *valp; -+ tunable_val_t val; - - if (cur->type.type_code != TUNABLE_TYPE_STRING) -- { -- val = _dl_strtoul (strval, NULL); -- valp = &val; -- } -+ val.numval = (tunable_num_t) _dl_strtoul (strval, NULL); - else -- { -- cur->initialized = true; -- valp = strval; -- } -- do_tunable_update_val (cur, valp, NULL, NULL); -+ val.strval = strval; -+ do_tunable_update_val (cur, &val, NULL, NULL); - } - - void --__tunable_set_val (tunable_id_t id, void *valp, void *minp, void *maxp) -+__tunable_set_val (tunable_id_t id, tunable_val_t *valp, tunable_num_t *minp, -+ tunable_num_t *maxp) - { - tunable_t *cur = &tunable_list[id]; - -diff --git a/elf/dl-tunables.h b/elf/dl-tunables.h -index 971376ba8d3bad1c..ba7ae6b52ecea7a3 100644 ---- a/elf/dl-tunables.h -+++ b/elf/dl-tunables.h -@@ -33,9 +33,11 @@ __tunables_init (char **unused __attribute__ ((unused))) - # include - # include - -+typedef intmax_t tunable_num_t; -+ - typedef union - { -- int64_t numval; -+ tunable_num_t numval; - const char *strval; - } tunable_val_t; - -@@ -52,7 +54,8 @@ typedef void (*tunable_callback_t) (tunable_val_t *); - extern void __tunables_init (char **); - extern void __tunables_print (void); - extern void __tunable_get_val (tunable_id_t, void *, tunable_callback_t); --extern void __tunable_set_val (tunable_id_t, void *, void *, void *); -+extern void __tunable_set_val (tunable_id_t, tunable_val_t *, tunable_num_t *, -+ tunable_num_t *); - rtld_hidden_proto (__tunables_init) - rtld_hidden_proto (__tunables_print) - rtld_hidden_proto (__tunable_get_val) -@@ -64,20 +67,18 @@ rtld_hidden_proto (__tunable_set_val) - #if defined TOP_NAMESPACE && defined TUNABLE_NAMESPACE - # define TUNABLE_GET(__id, __type, __cb) \ - TUNABLE_GET_FULL (TOP_NAMESPACE, TUNABLE_NAMESPACE, __id, __type, __cb) --# define TUNABLE_SET(__id, __type, __val) \ -- TUNABLE_SET_FULL (TOP_NAMESPACE, TUNABLE_NAMESPACE, __id, __type, __val) --# define TUNABLE_SET_WITH_BOUNDS(__id, __type, __val, __min, __max) \ -+# define TUNABLE_SET(__id, __val) \ -+ TUNABLE_SET_FULL (TOP_NAMESPACE, TUNABLE_NAMESPACE, __id, __val) -+# define TUNABLE_SET_WITH_BOUNDS(__id, __val, __min, __max) \ - TUNABLE_SET_WITH_BOUNDS_FULL (TOP_NAMESPACE, TUNABLE_NAMESPACE, __id, \ -- __type, __val, __min, __max) -+ __val, __min, __max) - #else - # define TUNABLE_GET(__top, __ns, __id, __type, __cb) \ - TUNABLE_GET_FULL (__top, __ns, __id, __type, __cb) --# define TUNABLE_SET(__top, __ns, __id, __type, __val) \ -- TUNABLE_SET_FULL (__top, __ns, __id, __type, __val) --# define TUNABLE_SET_WITH_BOUNDS(__top, __ns, __id, __type, __val, \ -- __min, __max) \ -- TUNABLE_SET_WITH_BOUNDS_FULL (__top, __ns, __id, __type, __val, \ -- __min, __max) -+# define TUNABLE_SET(__top, __ns, __id, __val) \ -+ TUNABLE_SET_FULL (__top, __ns, __id, __val) -+# define TUNABLE_SET_WITH_BOUNDS(__top, __ns, __id, __val, __min, __max) \ -+ TUNABLE_SET_WITH_BOUNDS_FULL (__top, __ns, __id, __val, __min, __max) - #endif - - /* Get and return a tunable value. If the tunable was set externally and __CB -@@ -91,19 +92,19 @@ rtld_hidden_proto (__tunable_set_val) - }) - - /* Set a tunable value. */ --# define TUNABLE_SET_FULL(__top, __ns, __id, __type, __val) \ -+# define TUNABLE_SET_FULL(__top, __ns, __id, __val) \ - ({ \ - __tunable_set_val (TUNABLE_ENUM_NAME (__top, __ns, __id), \ -- & (__type) {__val}, NULL, NULL); \ -+ & (tunable_val_t) {.numval = __val}, NULL, NULL); \ - }) - - /* Set a tunable value together with min/max values. */ --# define TUNABLE_SET_WITH_BOUNDS_FULL(__top, __ns, __id, __type, __val, \ -- __min, __max) \ -+# define TUNABLE_SET_WITH_BOUNDS_FULL(__top, __ns, __id,__val, __min, __max) \ - ({ \ - __tunable_set_val (TUNABLE_ENUM_NAME (__top, __ns, __id), \ -- & (__type) {__val}, & (__type) {__min}, \ -- & (__type) {__max}); \ -+ & (tunable_val_t) {.numval = __val}, \ -+ & (tunable_num_t) {__min}, \ -+ & (tunable_num_t) {__max}); \ - }) - - /* Namespace sanity for callback functions. Use this macro to keep the -diff --git a/manual/README.tunables b/manual/README.tunables -index d8c768abcc70b5a4..605ddd78cd52b5ef 100644 ---- a/manual/README.tunables -+++ b/manual/README.tunables -@@ -98,17 +98,16 @@ where it can expect the tunable value to be passed in VALP. - - Tunables in the module can be updated using: - -- TUNABLE_SET (check, int32_t, val) -+ TUNABLE_SET (check, val) - --where 'check' is the tunable name, 'int32_t' is the C type of the tunable and --'val' is a value of same type. -+where 'check' is the tunable name and 'val' is a value of same type. - - To get and set tunables in a different namespace from that module, use the full - form of the macros as follows: - - val = TUNABLE_GET_FULL (glibc, cpu, hwcap_mask, uint64_t, NULL) - -- TUNABLE_SET_FULL (glibc, cpu, hwcap_mask, uint64_t, val) -+ TUNABLE_SET_FULL (glibc, cpu, hwcap_mask, val) - - where 'glibc' is the top namespace, 'cpu' is the tunable namespace and the - remaining arguments are the same as the short form macros. -@@ -116,18 +115,17 @@ remaining arguments are the same as the short form macros. - The minimum and maximum values can updated together with the tunable value - using: - -- TUNABLE_SET_WITH_BOUNDS (check, int32_t, val, min, max) -+ TUNABLE_SET_WITH_BOUNDS (check, val, min, max) - --where 'check' is the tunable name, 'int32_t' is the C type of the tunable, --'val' is a value of same type, 'min' and 'max' are the minimum and maximum --values of the tunable. -+where 'check' is the tunable name, 'val' is a value of same type, 'min' and -+'max' are the minimum and maximum values of the tunable. - - To set the minimum and maximum values of tunables in a different namespace - from that module, use the full form of the macros as follows: - - val = TUNABLE_GET_FULL (glibc, cpu, hwcap_mask, uint64_t, NULL) - -- TUNABLE_SET_WITH_BOUNDS_FULL (glibc, cpu, hwcap_mask, uint64_t, val, min, max) -+ TUNABLE_SET_WITH_BOUNDS_FULL (glibc, cpu, hwcap_mask, val, min, max) - - where 'glibc' is the top namespace, 'cpu' is the tunable namespace and the - remaining arguments are the same as the short form macros. -diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c -index fe52b6308ee0ff72..db6aa3516c1b5cb1 100644 ---- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c -+++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c -@@ -104,7 +104,7 @@ init_cpu_features (struct cpu_features *cpu_features) - cpu_features->mte_state = (GLRO (dl_hwcap2) & HWCAP2_MTE) ? mte_state : 0; - /* If we lack the MTE feature, disable the tunable, since it will - otherwise cause instructions that won't run on this CPU to be used. */ -- TUNABLE_SET (glibc, mem, tagging, unsigned, cpu_features->mte_state); -+ TUNABLE_SET (glibc, mem, tagging, cpu_features->mte_state); - # endif - - if (cpu_features->mte_state & 2) -diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h -index a31fa0783a23a9d8..e0a72568d8174db7 100644 ---- a/sysdeps/x86/dl-cacheinfo.h -+++ b/sysdeps/x86/dl-cacheinfo.h -@@ -917,17 +917,14 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - rep_stosb_threshold = TUNABLE_GET (x86_rep_stosb_threshold, - long int, NULL); - -- TUNABLE_SET_WITH_BOUNDS (x86_data_cache_size, long int, data, -+ TUNABLE_SET_WITH_BOUNDS (x86_data_cache_size, data, 0, (long int) -1); -+ TUNABLE_SET_WITH_BOUNDS (x86_shared_cache_size, shared, 0, (long int) -1); -+ TUNABLE_SET_WITH_BOUNDS (x86_non_temporal_threshold, non_temporal_threshold, - 0, (long int) -1); -- TUNABLE_SET_WITH_BOUNDS (x86_shared_cache_size, long int, shared, -- 0, (long int) -1); -- TUNABLE_SET_WITH_BOUNDS (x86_non_temporal_threshold, long int, -- non_temporal_threshold, 0, (long int) -1); -- TUNABLE_SET_WITH_BOUNDS (x86_rep_movsb_threshold, long int, -- rep_movsb_threshold, -+ TUNABLE_SET_WITH_BOUNDS (x86_rep_movsb_threshold, rep_movsb_threshold, - minimum_rep_movsb_threshold, (long int) -1); -- TUNABLE_SET_WITH_BOUNDS (x86_rep_stosb_threshold, long int, -- rep_stosb_threshold, 1, (long int) -1); -+ TUNABLE_SET_WITH_BOUNDS (x86_rep_stosb_threshold, rep_stosb_threshold, 1, -+ (long int) -1); - #endif - - cpu_features->data_cache_size = data; diff --git a/glibc-upstream-2.33-20.patch b/glibc-upstream-2.33-20.patch deleted file mode 100644 index 3916b39..0000000 --- a/glibc-upstream-2.33-20.patch +++ /dev/null @@ -1,100 +0,0 @@ -commit fc4ecce85b5ce10f64ae1328f4105ace8d7b7b67 -Author: Stefan Liebler -Date: Tue Mar 23 17:29:26 2021 +0100 - - S390: Also check vector support in memmove ifunc-selector [BZ #27511] - - The arch13 memmove variant is currently selected by the ifunc selector - if the Miscellaneous-Instruction-Extensions Facility 3 facility bit - is present, but the function is also using vector instructions. - If the vector support is not present, one is receiving an operation - exception. - - Therefore this patch also checks for vector support in the ifunc - selector and in ifunc-impl-list.c. - - Just to be sure, the configure check is now also testing an arch13 - vector instruction and an arch13 Miscellaneous-Instruction-Extensions - Facility 3 instruction. - - (cherry picked from commit 7759be2593b689cb1eafc0f52ee7f59c639e5d2f) - -diff --git a/sysdeps/s390/configure b/sysdeps/s390/configure -index 5f98640d0fc54264..7eaefbabcfebdce7 100644 ---- a/sysdeps/s390/configure -+++ b/sysdeps/s390/configure -@@ -123,7 +123,9 @@ void testinsn (char *buf) - __asm__ (".machine \"arch13\" \n\t" - ".machinemode \"zarch_nohighgprs\" \n\t" - "lghi %%r0,16 \n\t" -- "mvcrl 0(%0),32(%0)" : : "a" (buf) : "memory", "r0"); -+ "mvcrl 0(%0),32(%0) \n\t" -+ "vstrs %%v20,%%v20,%%v20,%%v20,0,2" -+ : : "a" (buf) : "memory", "r0"); - } - EOF - if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS --shared conftest.c -@@ -271,7 +273,9 @@ else - void testinsn (char *buf) - { - __asm__ ("lghi %%r0,16 \n\t" -- "mvcrl 0(%0),32(%0)" : : "a" (buf) : "memory", "r0"); -+ "mvcrl 0(%0),32(%0) \n\t" -+ "vstrs %%v20,%%v20,%%v20,%%v20,0,2" -+ : : "a" (buf) : "memory", "r0"); - } - EOF - if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS --shared conftest.c -diff --git a/sysdeps/s390/configure.ac b/sysdeps/s390/configure.ac -index dfe007a774d7e1ed..e6df62491907c8b5 100644 ---- a/sysdeps/s390/configure.ac -+++ b/sysdeps/s390/configure.ac -@@ -88,7 +88,9 @@ void testinsn (char *buf) - __asm__ (".machine \"arch13\" \n\t" - ".machinemode \"zarch_nohighgprs\" \n\t" - "lghi %%r0,16 \n\t" -- "mvcrl 0(%0),32(%0)" : : "a" (buf) : "memory", "r0"); -+ "mvcrl 0(%0),32(%0) \n\t" -+ "vstrs %%v20,%%v20,%%v20,%%v20,0,2" -+ : : "a" (buf) : "memory", "r0"); - } - EOF - dnl test, if assembler supports S390 arch13 instructions -@@ -195,7 +197,9 @@ cat > conftest.c <<\EOF - void testinsn (char *buf) - { - __asm__ ("lghi %%r0,16 \n\t" -- "mvcrl 0(%0),32(%0)" : : "a" (buf) : "memory", "r0"); -+ "mvcrl 0(%0),32(%0) \n\t" -+ "vstrs %%v20,%%v20,%%v20,%%v20,0,2" -+ : : "a" (buf) : "memory", "r0"); - } - EOF - dnl test, if assembler supports S390 arch13 zarch instructions as default -diff --git a/sysdeps/s390/memmove.c b/sysdeps/s390/memmove.c -index f88ea79d97a3b547..1a7d3369f21e4a4e 100644 ---- a/sysdeps/s390/memmove.c -+++ b/sysdeps/s390/memmove.c -@@ -43,7 +43,7 @@ extern __typeof (__redirect_memmove) MEMMOVE_ARCH13 attribute_hidden; - s390_libc_ifunc_expr (__redirect_memmove, memmove, - ({ - s390_libc_ifunc_expr_stfle_init (); -- (HAVE_MEMMOVE_ARCH13 -+ (HAVE_MEMMOVE_ARCH13 && (hwcap & HWCAP_S390_VXRS_EXT2) - && S390_IS_ARCH13_MIE3 (stfle_bits)) - ? MEMMOVE_ARCH13 - : (HAVE_MEMMOVE_Z13 && (hwcap & HWCAP_S390_VX)) -diff --git a/sysdeps/s390/multiarch/ifunc-impl-list.c b/sysdeps/s390/multiarch/ifunc-impl-list.c -index 4b170e4459d917dc..2ef38b72ddac7c18 100644 ---- a/sysdeps/s390/multiarch/ifunc-impl-list.c -+++ b/sysdeps/s390/multiarch/ifunc-impl-list.c -@@ -171,7 +171,8 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL (i, name, memmove, - # if HAVE_MEMMOVE_ARCH13 - IFUNC_IMPL_ADD (array, i, memmove, -- S390_IS_ARCH13_MIE3 (stfle_bits), -+ ((dl_hwcap & HWCAP_S390_VXRS_EXT2) -+ && S390_IS_ARCH13_MIE3 (stfle_bits)), - MEMMOVE_ARCH13) - # endif - # if HAVE_MEMMOVE_Z13 diff --git a/glibc-upstream-2.33-21.patch b/glibc-upstream-2.33-21.patch deleted file mode 100644 index 456b758..0000000 --- a/glibc-upstream-2.33-21.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 98bb18f52a7c576e6068f4b42dea5b24fa6fd81e -Author: Szabolcs Nagy -Date: Thu Feb 25 14:49:58 2021 +0000 - - malloc: Fix a realloc crash with heap tagging [BZ 27468] - - _int_free must be called with a chunk that has its tag reset. This was - missing in a rare case that could crash when heap tagging is enabled: - when in a multi-threaded process the current arena runs out of memory - during realloc, but another arena still has space to finish the realloc - then _int_free was called without clearing the user allocation tags. - - Fixes bug 27468. - - Reviewed-by: DJ Delorie - (cherry picked from commit 42cc96066b22ba065db11096c78881a55e45def4) - -diff --git a/malloc/malloc.c b/malloc/malloc.c -index 1f4bbd8edf8b9770..8f8f12c276812405 100644 ---- a/malloc/malloc.c -+++ b/malloc/malloc.c -@@ -3446,7 +3446,9 @@ __libc_realloc (void *oldmem, size_t bytes) - newp = __libc_malloc (bytes); - if (newp != NULL) - { -- memcpy (newp, oldmem, oldsize - SIZE_SZ); -+ size_t sz = CHUNK_AVAILABLE_SIZE (oldp) - CHUNK_HDR_SZ; -+ memcpy (newp, oldmem, sz); -+ (void) TAG_REGION (chunk2rawmem (oldp), sz); - _int_free (ar_ptr, oldp, 0); - } - } diff --git a/glibc-upstream-2.33-22.patch b/glibc-upstream-2.33-22.patch deleted file mode 100644 index 285facb..0000000 --- a/glibc-upstream-2.33-22.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit e78ea9bd26199497b9f047e421f16284297629cf -Author: Joseph Myers -Date: Thu Apr 1 20:14:50 2021 +0000 - - Update Nios II libm-test-ulps. - - This has a subset of the changes in the version applied to master - (only those that actually appear in a regeneration on 2.33 branch). - -diff --git a/sysdeps/nios2/libm-test-ulps b/sysdeps/nios2/libm-test-ulps -index 8c3e9df547804b9d..9315ba82fab5bd5a 100644 ---- a/sysdeps/nios2/libm-test-ulps -+++ b/sysdeps/nios2/libm-test-ulps -@@ -12,7 +12,7 @@ Function: "asin": - float: 1 - - Function: "asinh": --double: 1 -+double: 2 - float: 2 - - Function: "atan": -@@ -80,7 +80,7 @@ double: 1 - float: 1 - - Function: "cbrt": --double: 3 -+double: 4 - float: 1 - - Function: Real part of "ccos": -@@ -127,7 +127,7 @@ double: 1 - float: 1 - - Function: "cosh": --double: 1 -+double: 2 - float: 2 - - Function: Real part of "cpow": -@@ -177,10 +177,11 @@ double: 1 - float: 1 - - Function: "erfc": --double: 3 -+double: 5 - float: 3 - - Function: "exp": -+double: 1 - float: 1 - - Function: "exp10": -@@ -256,7 +257,7 @@ double: 2 - float: 2 - - Function: "tgamma": --double: 5 -+double: 9 - float: 8 - - Function: "y0": diff --git a/glibc-upstream-2.33-23.patch b/glibc-upstream-2.33-23.patch deleted file mode 100644 index b007545..0000000 --- a/glibc-upstream-2.33-23.patch +++ /dev/null @@ -1,110 +0,0 @@ -commit 830674605ffaa6213f951198501d585fff1b15fe -Author: Lukasz Majewski -Date: Sat Mar 13 23:34:21 2021 +0100 - - tst: Provide test for select - - This change adds new test to assess select()'s timeout related - functionality (the rdfs set provides valid fd - stderr - but during - normal program operation there is no data to be read, so one just - waits for timeout). - - To be more specific - two use cases are checked: - - if select() times out immediately when passed struct timeval has - zero values of tv_usec and tv_sec. - - if select() times out after timeout specified in passed argument - - Reviewed-by: Adhemerval Zanella - - (cherry picked from commit bff3019afc77eb51634471827daaa1c17a6dc5bd) - -diff --git a/misc/Makefile b/misc/Makefile -index b08d7c68ab25d5a8..05ad034bafdc4ec7 100644 ---- a/misc/Makefile -+++ b/misc/Makefile -@@ -88,7 +88,7 @@ tests := tst-dirname tst-tsearch tst-fdset tst-mntent tst-hsearch \ - tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \ - tst-preadvwritev2 tst-preadvwritev64v2 tst-warn-wide \ - tst-ldbl-warn tst-ldbl-error tst-dbl-efgcvt tst-ldbl-efgcvt \ -- tst-mntent-autofs tst-syscalls tst-mntent-escape -+ tst-mntent-autofs tst-syscalls tst-mntent-escape tst-select - - # Tests which need libdl. - ifeq (yes,$(build-shared)) -diff --git a/misc/tst-select.c b/misc/tst-select.c -new file mode 100644 -index 0000000000000000..7c310256c5c6c25a ---- /dev/null -+++ b/misc/tst-select.c -@@ -0,0 +1,71 @@ -+/* Test for select timeout. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#define TST_SELECT_TIMEOUT 1 -+#define TST_SELECT_FD_ERR 2 -+ -+static int -+test_select_timeout (bool zero_tmo) -+{ -+ const int fds = TST_SELECT_FD_ERR; -+ int timeout = TST_SELECT_TIMEOUT; -+ struct timeval to = { 0, 0 }; -+ struct timespec ts; -+ fd_set rfds; -+ -+ FD_ZERO (&rfds); -+ FD_SET (fds, &rfds); -+ -+ if (zero_tmo) -+ timeout = 0; -+ -+ to.tv_sec = timeout; -+ ts = xclock_now (CLOCK_REALTIME); -+ ts = timespec_add (ts, (struct timespec) { timeout, 0 }); -+ -+ /* Wait for timeout. */ -+ int ret = select (fds + 1, &rfds, NULL, NULL, &to); -+ if (ret == -1) -+ FAIL_EXIT1 ("select failed: %m\n"); -+ -+ TEST_TIMESPEC_NOW_OR_AFTER (CLOCK_REALTIME, ts); -+ -+ return 0; -+} -+ -+static int -+do_test (void) -+{ -+ /* Check if select exits immediately. */ -+ test_select_timeout (true); -+ -+ /* Check if select exits after specified timeout. */ -+ test_select_timeout (false); -+ -+ return 0; -+} -+ -+#include diff --git a/glibc-upstream-2.33-24.patch b/glibc-upstream-2.33-24.patch deleted file mode 100644 index 1dcf358..0000000 --- a/glibc-upstream-2.33-24.patch +++ /dev/null @@ -1,128 +0,0 @@ -commit 3d525dd63926bb28517b3bf452da17fb3c4ee24c -Author: Adhemerval Zanella -Date: Thu Mar 25 16:57:45 2021 -0300 - - misc: Fix tst-select timeout handling (BZ#27648) - - Instead of polling the stderr, create two pipes and fork to check - if child timeout as expected similar to tst-pselect.c. Also lower - the timeout value. - - Checked on x86_64-linux-gnu. - - (cherry picked from commit 1b53b5d970c232b48843c778ac4566ff5b566c3b) - -diff --git a/misc/tst-select.c b/misc/tst-select.c -index 7c310256c5c6c25a..5ad057cd51d0f45c 100644 ---- a/misc/tst-select.c -+++ b/misc/tst-select.c -@@ -16,54 +16,79 @@ - License along with the GNU C Library; if not, see - . */ - --#include - #include --#include --#include -+#include - #include --#include - #include -+#include -+#include - --#define TST_SELECT_TIMEOUT 1 --#define TST_SELECT_FD_ERR 2 -+struct child_args -+{ -+ int fds[2][2]; -+ struct timeval tmo; -+}; - --static int --test_select_timeout (bool zero_tmo) -+static void -+do_test_child (void *clousure) - { -- const int fds = TST_SELECT_FD_ERR; -- int timeout = TST_SELECT_TIMEOUT; -- struct timeval to = { 0, 0 }; -- struct timespec ts; -- fd_set rfds; -+ struct child_args *args = (struct child_args *) clousure; - -- FD_ZERO (&rfds); -- FD_SET (fds, &rfds); -+ close (args->fds[0][1]); -+ close (args->fds[1][0]); - -- if (zero_tmo) -- timeout = 0; -+ fd_set rfds; -+ FD_ZERO (&rfds); -+ FD_SET (args->fds[0][0], &rfds); - -- to.tv_sec = timeout; -- ts = xclock_now (CLOCK_REALTIME); -- ts = timespec_add (ts, (struct timespec) { timeout, 0 }); -+ struct timespec ts = xclock_now (CLOCK_REALTIME); -+ ts = timespec_add (ts, (struct timespec) { args->tmo.tv_sec, 0 }); - -- /* Wait for timeout. */ -- int ret = select (fds + 1, &rfds, NULL, NULL, &to); -- if (ret == -1) -- FAIL_EXIT1 ("select failed: %m\n"); -+ int r = select (args->fds[0][0] + 1, &rfds, NULL, NULL, &args->tmo); -+ TEST_COMPARE (r, 0); - - TEST_TIMESPEC_NOW_OR_AFTER (CLOCK_REALTIME, ts); - -- return 0; -+ xwrite (args->fds[1][1], "foo", 3); - } - - static int - do_test (void) - { -- /* Check if select exits immediately. */ -- test_select_timeout (true); -- -- /* Check if select exits after specified timeout. */ -- test_select_timeout (false); -+ struct child_args args; -+ -+ xpipe (args.fds[0]); -+ xpipe (args.fds[1]); -+ -+ /* The child select should timeout and write on its pipe end. */ -+ args.tmo = (struct timeval) { .tv_sec = 0, .tv_usec = 250000 }; -+ { -+ struct support_capture_subprocess result; -+ result = support_capture_subprocess (do_test_child, &args); -+ support_capture_subprocess_check (&result, "tst-select-child", 0, -+ sc_allow_none); -+ } -+ -+ /* Same as before, but simulating polling. */ -+ args.tmo = (struct timeval) { .tv_sec = 0, .tv_usec = 0 }; -+ { -+ struct support_capture_subprocess result; -+ result = support_capture_subprocess (do_test_child, &args); -+ support_capture_subprocess_check (&result, "tst-select-child", 0, -+ sc_allow_none); -+ } -+ -+ xclose (args.fds[0][0]); -+ xclose (args.fds[1][1]); -+ -+ { -+ fd_set rfds; -+ FD_ZERO (&rfds); -+ FD_SET (args.fds[1][0], &rfds); -+ -+ int r = select (args.fds[1][0] + 1, &rfds, NULL, NULL, &args.tmo); -+ TEST_COMPARE (r, 1); -+ } - - return 0; - } diff --git a/glibc-upstream-2.33-25.patch b/glibc-upstream-2.33-25.patch deleted file mode 100644 index da2f43e..0000000 --- a/glibc-upstream-2.33-25.patch +++ /dev/null @@ -1,80 +0,0 @@ -commit b5b4aa62c124cf5c6c8d7a520137acbc0f3dc525 -Author: Adhemerval Zanella -Date: Fri Apr 9 10:02:30 2021 -0300 - - libsupport: Add support_select_modifies_timeout - - It will be used on a select() test. - - (cherry picked from commit 5628f103f5937611730845390928cb43ef716012) - -diff --git a/support/Makefile b/support/Makefile -index bb9889efb4be3630..4fd76b0e5e4add3f 100644 ---- a/support/Makefile -+++ b/support/Makefile -@@ -67,6 +67,7 @@ libsupport-routines = \ - support_quote_string \ - support_record_failure \ - support_run_diff \ -+ support_select_modifies_timeout \ - support_set_small_thread_stack_size \ - support_shared_allocate \ - support_small_stack_thread_attribute \ -diff --git a/support/support.h b/support/support.h -index 9cbc45572054fd90..9c9612644a70e46f 100644 ---- a/support/support.h -+++ b/support/support.h -@@ -23,6 +23,7 @@ - #ifndef SUPPORT_H - #define SUPPORT_H - -+#include - #include - #include - /* For mode_t. */ -@@ -129,6 +130,10 @@ extern void support_copy_file (const char *from, const char *to); - extern ssize_t support_copy_file_range (int, off64_t *, int, off64_t *, - size_t, unsigned int); - -+/* Return true if select modify the timeout to reflect the amount of time -+ no slept. */ -+extern bool support_select_modifies_timeout (void); -+ - __END_DECLS - - #endif /* SUPPORT_H */ -diff --git a/support/support_select_modifies_timeout.c b/support/support_select_modifies_timeout.c -new file mode 100644 -index 0000000000000000..653ea2cc9850b005 ---- /dev/null -+++ b/support/support_select_modifies_timeout.c -@@ -0,0 +1,29 @@ -+/* Return whether select modifies the timeout. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+ -+bool -+support_select_modifies_timeout (void) -+{ -+#ifdef __linux__ -+ return true; -+#else -+ return false; -+#endif -+} diff --git a/glibc-upstream-2.33-26.patch b/glibc-upstream-2.33-26.patch deleted file mode 100644 index 2ddd087..0000000 --- a/glibc-upstream-2.33-26.patch +++ /dev/null @@ -1,72 +0,0 @@ -commit 85e4dc415a9ae70eebb167f04d5fda2cc8cd5461 -Author: Adhemerval Zanella -Date: Fri Apr 9 10:05:13 2021 -0300 - - libsupport: Add support_select_normalizes_timeout - - It will be used on a select() test. - - (cherry-pick from commit 49a40ba18e2cb948259771317fe6ff6f5eb68683) - -diff --git a/support/Makefile b/support/Makefile -index 4fd76b0e5e4add3f..fc5d9d4c7933b111 100644 ---- a/support/Makefile -+++ b/support/Makefile -@@ -68,6 +68,7 @@ libsupport-routines = \ - support_record_failure \ - support_run_diff \ - support_select_modifies_timeout \ -+ support_select_normalizes_timeout \ - support_set_small_thread_stack_size \ - support_shared_allocate \ - support_small_stack_thread_attribute \ -diff --git a/support/support.h b/support/support.h -index 9c9612644a70e46f..8c7890e0a6f94f8a 100644 ---- a/support/support.h -+++ b/support/support.h -@@ -134,6 +134,10 @@ extern ssize_t support_copy_file_range (int, off64_t *, int, off64_t *, - no slept. */ - extern bool support_select_modifies_timeout (void); - -+/* Return true if select normalize the timeout input by taking in account -+ tv_usec larger than 1000000. */ -+extern bool support_select_normalizes_timeout (void); -+ - __END_DECLS - - #endif /* SUPPORT_H */ -diff --git a/support/support_select_normalizes_timeout.c b/support/support_select_normalizes_timeout.c -new file mode 100644 -index 0000000000000000..987f9b035e251602 ---- /dev/null -+++ b/support/support_select_normalizes_timeout.c -@@ -0,0 +1,29 @@ -+/* Return whether select normalizes the timeout. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+ -+bool -+support_select_normalizes_timeout (void) -+{ -+#ifdef __linux__ -+ return true; -+#else -+ return false; -+#endif -+} diff --git a/glibc-upstream-2.33-27.patch b/glibc-upstream-2.33-27.patch deleted file mode 100644 index 315e0ee..0000000 --- a/glibc-upstream-2.33-27.patch +++ /dev/null @@ -1,171 +0,0 @@ -commit 8380ca5833ef2a11bf0162f2290f4f8c85ce3b90 -Author: Adhemerval Zanella -Date: Wed Mar 31 13:53:34 2021 -0300 - - linux: Normalize and return timeout on select (BZ #27651) - - The commit 2433d39b697, which added time64 support to select, changed - the function to use __NR_pselect6 (or __NR_pelect6_time64) on all - architectures. However, on architectures where the symbol was - implemented with __NR_select the kernel normalizes the passed timeout - instead of return EINVAL. For instance, the input timeval - { 0, 5000000 } is interpreted as { 5, 0 }. - - And as indicated by BZ #27651, this semantic seems to be expected - and changing it results in some performance issues (most likely - the program does not check the return code and keeps issuing - select with unormalized tv_usec argument). - - To avoid a different semantic depending whether which syscall the - architecture used to issue, select now always normalize the timeout - input. This is a slight change for some ABIs (for instance aarch64). - - Checked on x86_64-linux-gnu and i686-linux-gnu. - - (cherry picked from commit 9d7c5cc38e58fb0923e88901f87174a511b61552) - -diff --git a/include/time.h b/include/time.h -index caf2af5e74ed6179..e0636132a6ee3fe9 100644 ---- a/include/time.h -+++ b/include/time.h -@@ -502,6 +502,11 @@ time_now (void) - __clock_gettime (TIME_CLOCK_GETTIME_CLOCKID, &ts); - return ts.tv_sec; - } -+ -+#define NSEC_PER_SEC 1000000000L /* Nanoseconds per second. */ -+#define USEC_PER_SEC 1000000L /* Microseconds per second. */ -+#define NSEC_PER_USEC 1000L /* Nanoseconds per microsecond. */ -+ - #endif - - #endif -diff --git a/misc/tst-select.c b/misc/tst-select.c -index 5ad057cd51d0f45c..534105b50020fa44 100644 ---- a/misc/tst-select.c -+++ b/misc/tst-select.c -@@ -19,6 +19,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -47,6 +48,12 @@ do_test_child (void *clousure) - int r = select (args->fds[0][0] + 1, &rfds, NULL, NULL, &args->tmo); - TEST_COMPARE (r, 0); - -+ if (support_select_modifies_timeout ()) -+ { -+ TEST_COMPARE (args->tmo.tv_sec, 0); -+ TEST_COMPARE (args->tmo.tv_usec, 0); -+ } -+ - TEST_TIMESPEC_NOW_OR_AFTER (CLOCK_REALTIME, ts); - - xwrite (args->fds[1][1], "foo", 3); -@@ -69,6 +76,16 @@ do_test (void) - sc_allow_none); - } - -+ if (support_select_normalizes_timeout ()) -+ { -+ /* This is handled as 1 second instead of failing with EINVAL. */ -+ args.tmo = (struct timeval) { .tv_sec = 0, .tv_usec = 1000000 }; -+ struct support_capture_subprocess result; -+ result = support_capture_subprocess (do_test_child, &args); -+ support_capture_subprocess_check (&result, "tst-select-child", 0, -+ sc_allow_none); -+ } -+ - /* Same as before, but simulating polling. */ - args.tmo = (struct timeval) { .tv_sec = 0, .tv_usec = 0 }; - { -diff --git a/sunrpc/svcauth_des.c b/sunrpc/svcauth_des.c -index 7607abc8186813f6..25a85c90970d4ced 100644 ---- a/sunrpc/svcauth_des.c -+++ b/sunrpc/svcauth_des.c -@@ -58,7 +58,6 @@ - - #define debug(msg) /*printf("svcauth_des: %s\n", msg) */ - --#define USEC_PER_SEC ((uint32_t) 1000000L) - #define BEFORE(t1, t2) timercmp(t1, t2, <) - - /* -diff --git a/sysdeps/unix/sysv/linux/select.c b/sysdeps/unix/sysv/linux/select.c -index 415aa87d3c87d70c..3b67ff44765ededf 100644 ---- a/sysdeps/unix/sysv/linux/select.c -+++ b/sysdeps/unix/sysv/linux/select.c -@@ -33,12 +33,34 @@ int - __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, - struct __timeval64 *timeout) - { -- struct __timespec64 ts64, *pts64 = NULL; -- if (timeout != NULL) -+ __time64_t s = timeout != NULL ? timeout->tv_sec : 0; -+ int32_t us = timeout != NULL ? timeout->tv_usec : 0; -+ int32_t ns; -+ -+ if (s < 0 || us < 0) -+ return INLINE_SYSCALL_ERROR_RETURN_VALUE (EINVAL); -+ -+ /* Normalize the timeout, as legacy Linux __NR_select and __NR__newselect. -+ Different than syscall, it also handle possible overflow. */ -+ if (us / USEC_PER_SEC > INT64_MAX - s) - { -- ts64 = timeval64_to_timespec64 (*timeout); -- pts64 = &ts64; -+ s = INT64_MAX; -+ ns = NSEC_PER_SEC - 1; - } -+ else -+ { -+ s += us / USEC_PER_SEC; -+ us = us % USEC_PER_SEC; -+ ns = us * NSEC_PER_USEC; -+ } -+ -+ struct __timespec64 ts64, *pts64 = NULL; -+ if (timeout != NULL) -+ { -+ ts64.tv_sec = s; -+ ts64.tv_nsec = ns; -+ pts64 = &ts64; -+ } - - #ifndef __NR_pselect6_time64 - # define __NR_pselect6_time64 __NR_pselect6 -@@ -52,10 +74,10 @@ __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, - (though the pselect() glibc call suppresses this behavior). - Since select() on Linux has the same behavior as the pselect6 - syscall, we update the timeout here. */ -- if (r == 0 || errno != ENOSYS) -+ if (r >= 0 || errno != ENOSYS) - { - if (timeout != NULL) -- TIMEVAL_TO_TIMESPEC (timeout, &ts64); -+ TIMESPEC_TO_TIMEVAL (timeout, &ts64); - return r; - } - -@@ -64,14 +86,15 @@ __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, - - #ifndef __ASSUME_TIME64_SYSCALLS - struct timespec ts32, *pts32 = NULL; -- if (timeout != NULL) -+ if (pts64 != NULL) - { -- if (! in_time_t_range (timeout->tv_sec)) -+ if (! in_time_t_range (pts64->tv_sec)) - { - __set_errno (EINVAL); - return -1; - } -- ts32 = valid_timespec64_to_timespec (ts64); -+ ts32.tv_sec = s; -+ ts32.tv_nsec = ns; - pts32 = &ts32; - } - # ifndef __ASSUME_PSELECT diff --git a/glibc-upstream-2.33-28.patch b/glibc-upstream-2.33-28.patch deleted file mode 100644 index 9f3be1d..0000000 --- a/glibc-upstream-2.33-28.patch +++ /dev/null @@ -1,96 +0,0 @@ -commit 3e9ca60a580e2b6854cd5314ebb0866a1f387ca8 -Author: Adhemerval Zanella -Date: Thu Apr 8 07:39:32 2021 -0300 - - linux: always update select timeout (BZ #27706) - - The timeout should be updated even on failure for time64 support. - - Checked on i686-linux-gnu. - - (cherry-pick from commit cedbf6d5f3f70ca911176de87d6e453eeab4b7a1) - -diff --git a/misc/tst-select.c b/misc/tst-select.c -index 534105b50020fa44..52aa26651f612701 100644 ---- a/misc/tst-select.c -+++ b/misc/tst-select.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - struct child_args - { -@@ -30,6 +31,12 @@ struct child_args - struct timeval tmo; - }; - -+static void -+alarm_handler (int signum) -+{ -+ /* Do nothing. */ -+} -+ - static void - do_test_child (void *clousure) - { -@@ -59,6 +66,22 @@ do_test_child (void *clousure) - xwrite (args->fds[1][1], "foo", 3); - } - -+static void -+do_test_child_alarm (void *clousure) -+{ -+ struct sigaction act = { .sa_handler = alarm_handler }; -+ xsigaction (SIGALRM, &act, NULL); -+ alarm (1); -+ -+ struct timeval tv = { .tv_sec = 10, .tv_usec = 0 }; -+ int r = select (0, NULL, NULL, NULL, &tv); -+ TEST_COMPARE (r, -1); -+ TEST_COMPARE (errno, EINTR); -+ -+ if (support_select_modifies_timeout ()) -+ TEST_VERIFY (tv.tv_sec < 10); -+} -+ - static int - do_test (void) - { -@@ -98,6 +121,13 @@ do_test (void) - xclose (args.fds[0][0]); - xclose (args.fds[1][1]); - -+ { -+ struct support_capture_subprocess result; -+ result = support_capture_subprocess (do_test_child_alarm, NULL); -+ support_capture_subprocess_check (&result, "tst-select-child", 0, -+ sc_allow_none); -+ } -+ - { - fd_set rfds; - FD_ZERO (&rfds); -diff --git a/sysdeps/unix/sysv/linux/select.c b/sysdeps/unix/sysv/linux/select.c -index 3b67ff44765ededf..dc16a816ed9e5f9b 100644 ---- a/sysdeps/unix/sysv/linux/select.c -+++ b/sysdeps/unix/sysv/linux/select.c -@@ -107,7 +107,7 @@ __select64 (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, - r = SYSCALL_CANCEL (pselect6, nfds, readfds, writefds, exceptfds, pts32, - NULL); - # endif -- if (r >= 0 && timeout != NULL) -+ if (timeout != NULL) - *timeout = valid_timespec_to_timeval64 (ts32); - #endif - -@@ -128,7 +128,7 @@ __select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, - ptv64 = &tv64; - } - int r = __select64 (nfds, readfds, writefds, exceptfds, ptv64); -- if (r >= 0 && timeout != NULL) -+ if (timeout != NULL) - /* The remanining timeout will be always less the input TIMEOUT. */ - *timeout = valid_timeval64_to_timeval (tv64); - return r; diff --git a/glibc-upstream-2.33-29.patch b/glibc-upstream-2.33-29.patch deleted file mode 100644 index d885b10..0000000 --- a/glibc-upstream-2.33-29.patch +++ /dev/null @@ -1,122 +0,0 @@ -commit e07abf59b28dc4406f8462aef4fb28b38f1cbd3b -Author: Siddhesh Poyarekar -Date: Tue Mar 16 18:31:02 2021 +0530 - - tunables: Fix comparison of tunable values - - The simplification of tunable_set interfaces took care of - signed/unsigned conversions while setting values, but comparison with - bounds ended up being incorrect; comparing TUNABLE_SIZE_T values for - example will fail because SIZE_MAX is seen as -1. - - Add comparison helpers that take tunable types into account and use - them to do comparison instead. - - (cherry picked from commit d1a3dcabf2f89233a99a4a9be08f9f407da0b6b4) - -diff --git a/elf/dl-tunable-types.h b/elf/dl-tunable-types.h -index 626ca334be105e69..39bf738d930efca2 100644 ---- a/elf/dl-tunable-types.h -+++ b/elf/dl-tunable-types.h -@@ -81,4 +81,21 @@ struct _tunable - - typedef struct _tunable tunable_t; - -+static __always_inline bool -+unsigned_tunable_type (tunable_type_code_t t) -+{ -+ switch (t) -+ { -+ case TUNABLE_TYPE_INT_32: -+ return false; -+ case TUNABLE_TYPE_UINT_64: -+ case TUNABLE_TYPE_SIZE_T: -+ return true; -+ case TUNABLE_TYPE_STRING: -+ default: -+ break; -+ } -+ __builtin_unreachable (); -+} -+ - #endif -diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c -index a2be9cde2f7333ea..8b751dcf0deb0d01 100644 ---- a/elf/dl-tunables.c -+++ b/elf/dl-tunables.c -@@ -107,32 +107,35 @@ do_tunable_update_val (tunable_t *cur, const tunable_val_t *valp, - return; - } - -+ bool unsigned_cmp = unsigned_tunable_type (cur->type.type_code); -+ - val = valp->numval; - min = minp != NULL ? *minp : cur->type.min; - max = maxp != NULL ? *maxp : cur->type.max; - - /* We allow only increasingly restrictive bounds. */ -- if (min < cur->type.min) -+ if (tunable_val_lt (min, cur->type.min, unsigned_cmp)) - min = cur->type.min; - -- if (max > cur->type.max) -+ if (tunable_val_gt (max, cur->type.max, unsigned_cmp)) - max = cur->type.max; - - /* Skip both bounds if they're inconsistent. */ -- if (min > max) -+ if (tunable_val_gt (min, max, unsigned_cmp)) - { - min = cur->type.min; - max = cur->type.max; - } - -- /* Write everything out if the value and the bounds are valid. */ -- if (min <= val && val <= max) -- { -- cur->val.numval = val; -- cur->type.min = min; -- cur->type.max = max; -- cur->initialized = true; -- } -+ /* Bail out if the bounds are not valid. */ -+ if (tunable_val_lt (val, min, unsigned_cmp) -+ || tunable_val_lt (max, val, unsigned_cmp)) -+ return; -+ -+ cur->val.numval = val; -+ cur->type.min = min; -+ cur->type.max = max; -+ cur->initialized = true; - } - - /* Validate range of the input value and initialize the tunable CUR if it looks -diff --git a/elf/dl-tunables.h b/elf/dl-tunables.h -index ba7ae6b52ecea7a3..3880e4aab623771e 100644 ---- a/elf/dl-tunables.h -+++ b/elf/dl-tunables.h -@@ -115,6 +115,24 @@ rtld_hidden_proto (__tunable_set_val) - /* The default value for TUNABLES_FRONTEND. */ - # define TUNABLES_FRONTEND_yes TUNABLES_FRONTEND_valstring - -+static __always_inline bool -+tunable_val_lt (tunable_num_t lhs, tunable_num_t rhs, bool unsigned_cmp) -+{ -+ if (unsigned_cmp) -+ return (uintmax_t) lhs < (uintmax_t) rhs; -+ else -+ return lhs < rhs; -+} -+ -+static __always_inline bool -+tunable_val_gt (tunable_num_t lhs, tunable_num_t rhs, bool unsigned_cmp) -+{ -+ if (unsigned_cmp) -+ return (uintmax_t) lhs > (uintmax_t) rhs; -+ else -+ return lhs > rhs; -+} -+ - /* Compare two name strings, bounded by the name hardcoded in glibc. */ - static __always_inline bool - tunable_is_name (const char *orig, const char *envname) diff --git a/glibc-upstream-2.33-3.patch b/glibc-upstream-2.33-3.patch deleted file mode 100644 index c596a9c..0000000 --- a/glibc-upstream-2.33-3.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit 905fdc7071638612027739d74d63fc91debb0325 -Author: Siddhesh Poyarekar -Date: Wed Feb 3 20:03:19 2021 +0530 - - x86: Use SIZE_MAX instead of (long int)-1 for tunable range value - - The tunable types are SIZE_T, so set the ranges to the correct maximum - value, i.e. SIZE_MAX. - - (cherry picked from commit a1b8b06a55c1ee581d5ef860cec214b0c27a66f0) - -diff --git a/sysdeps/x86/dl-cacheinfo.h b/sysdeps/x86/dl-cacheinfo.h -index e0a72568d8174db7..6f91651f0da1d46a 100644 ---- a/sysdeps/x86/dl-cacheinfo.h -+++ b/sysdeps/x86/dl-cacheinfo.h -@@ -917,14 +917,14 @@ dl_init_cacheinfo (struct cpu_features *cpu_features) - rep_stosb_threshold = TUNABLE_GET (x86_rep_stosb_threshold, - long int, NULL); - -- TUNABLE_SET_WITH_BOUNDS (x86_data_cache_size, data, 0, (long int) -1); -- TUNABLE_SET_WITH_BOUNDS (x86_shared_cache_size, shared, 0, (long int) -1); -+ TUNABLE_SET_WITH_BOUNDS (x86_data_cache_size, data, 0, SIZE_MAX); -+ TUNABLE_SET_WITH_BOUNDS (x86_shared_cache_size, shared, 0, SIZE_MAX); - TUNABLE_SET_WITH_BOUNDS (x86_non_temporal_threshold, non_temporal_threshold, -- 0, (long int) -1); -+ 0, SIZE_MAX); - TUNABLE_SET_WITH_BOUNDS (x86_rep_movsb_threshold, rep_movsb_threshold, -- minimum_rep_movsb_threshold, (long int) -1); -+ minimum_rep_movsb_threshold, SIZE_MAX); - TUNABLE_SET_WITH_BOUNDS (x86_rep_stosb_threshold, rep_stosb_threshold, 1, -- (long int) -1); -+ SIZE_MAX); - #endif - - cpu_features->data_cache_size = data; diff --git a/glibc-upstream-2.33-30.patch b/glibc-upstream-2.33-30.patch deleted file mode 100644 index 7dbba0c..0000000 --- a/glibc-upstream-2.33-30.patch +++ /dev/null @@ -1,55 +0,0 @@ -commit 45b2c57d345092e8a6a9f065a44c9801e09c24c5 -Author: Siddhesh Poyarekar -Date: Mon Mar 15 16:00:06 2021 +0530 - - support: Typo and formatting fixes - - - Add a newline to the end of error messages in transfer(). - - Fixed the name of support_subprocess_init(). - - (cherry picked from commit 95c68080a3ded882789b1629f872c3ad531efda0) - -diff --git a/support/support_capture_subprocess.c b/support/support_capture_subprocess.c -index a7afa0e70b48f649..3eb825b9afc0b5e6 100644 ---- a/support/support_capture_subprocess.c -+++ b/support/support_capture_subprocess.c -@@ -36,7 +36,7 @@ transfer (const char *what, struct pollfd *pfd, struct xmemstream *stream) - if (ret < 0) - { - support_record_failure (); -- printf ("error: reading from subprocess %s: %m", what); -+ printf ("error: reading from subprocess %s: %m\n", what); - pfd->events = 0; - pfd->revents = 0; - } -diff --git a/support/support_subprocess.c b/support/support_subprocess.c -index 88489a3357f6aae0..838eda96ffd6eb9a 100644 ---- a/support/support_subprocess.c -+++ b/support/support_subprocess.c -@@ -27,7 +27,7 @@ - #include - - static struct support_subprocess --support_suprocess_init (void) -+support_subprocess_init (void) - { - struct support_subprocess result; - -@@ -48,7 +48,7 @@ support_suprocess_init (void) - struct support_subprocess - support_subprocess (void (*callback) (void *), void *closure) - { -- struct support_subprocess result = support_suprocess_init (); -+ struct support_subprocess result = support_subprocess_init (); - - result.pid = xfork (); - if (result.pid == 0) -@@ -71,7 +71,7 @@ support_subprocess (void (*callback) (void *), void *closure) - struct support_subprocess - support_subprogram (const char *file, char *const argv[]) - { -- struct support_subprocess result = support_suprocess_init (); -+ struct support_subprocess result = support_subprocess_init (); - - posix_spawn_file_actions_t fa; - /* posix_spawn_file_actions_init does not fail. */ diff --git a/glibc-upstream-2.33-31.patch b/glibc-upstream-2.33-31.patch deleted file mode 100644 index 0e081b0..0000000 --- a/glibc-upstream-2.33-31.patch +++ /dev/null @@ -1,24 +0,0 @@ -commit 249c486ce8e80a9e94d51b4bbf3ccf5d0af57e5e -Author: Siddhesh Poyarekar -Date: Mon Mar 15 17:23:30 2021 +0530 - - support: Pass environ to child process - - Pass environ to posix_spawn so that the child process can inherit - environment of the test. - - (cherry picked from commit e958490f8c74e660bd93c128b3bea746e268f3f6) - -diff --git a/support/support_subprocess.c b/support/support_subprocess.c -index 838eda96ffd6eb9a..2acfc57b7e70732d 100644 ---- a/support/support_subprocess.c -+++ b/support/support_subprocess.c -@@ -84,7 +84,7 @@ support_subprogram (const char *file, char *const argv[]) - xposix_spawn_file_actions_addclose (&fa, result.stdout_pipe[1]); - xposix_spawn_file_actions_addclose (&fa, result.stderr_pipe[1]); - -- result.pid = xposix_spawn (file, &fa, NULL, argv, NULL); -+ result.pid = xposix_spawn (file, &fa, NULL, argv, environ); - - xclose (result.stdout_pipe[1]); - xclose (result.stderr_pipe[1]); diff --git a/glibc-upstream-2.33-32.patch b/glibc-upstream-2.33-32.patch deleted file mode 100644 index 57e83bc..0000000 --- a/glibc-upstream-2.33-32.patch +++ /dev/null @@ -1,462 +0,0 @@ -commit 267e174f198532d950a6f419681689d73b2c633c -Author: Siddhesh Poyarekar -Date: Fri Apr 9 20:55:45 2021 +0530 - - support: Add capability to fork an sgid child - - Add a new function support_capture_subprogram_self_sgid that spawns an - sgid child of the running program with its own image and returns the - exit code of the child process. This functionality is used by at - least three tests in the testsuite at the moment, so it makes sense to - consolidate. - - There is also a new function support_subprogram_wait which should - provide simple system() like functionality that does not set up file - actions. This is useful in cases where only the return code of the - spawned subprocess is interesting. - - This patch also ports tst-secure-getenv to this new function. A - subsequent patch will port other tests. This also brings an important - change to tst-secure-getenv behaviour. Now instead of succeeding, the - test fails as UNSUPPORTED if it is unable to spawn a setgid child, - which is how it should have been in the first place. - Reviewed-by: Carlos O'Donell - - (cherry picked from commit 716a3bdc41b2b4b864dc64475015ba51e35e1273) - -diff --git a/stdlib/tst-secure-getenv.c b/stdlib/tst-secure-getenv.c -index c9ec03866ff8ac3b..5567c9ae215fd924 100644 ---- a/stdlib/tst-secure-getenv.c -+++ b/stdlib/tst-secure-getenv.c -@@ -30,167 +30,12 @@ - #include - #include - -+#include - #include -+#include - #include - - static char MAGIC_ARGUMENT[] = "run-actual-test"; --#define MAGIC_STATUS 19 -- --/* Return a GID which is not our current GID, but is present in the -- supplementary group list. */ --static gid_t --choose_gid (void) --{ -- int count = getgroups (0, NULL); -- if (count < 0) -- { -- printf ("getgroups: %m\n"); -- exit (1); -- } -- gid_t *groups; -- groups = xcalloc (count, sizeof (*groups)); -- int ret = getgroups (count, groups); -- if (ret < 0) -- { -- printf ("getgroups: %m\n"); -- exit (1); -- } -- gid_t current = getgid (); -- gid_t not_current = 0; -- for (int i = 0; i < ret; ++i) -- { -- if (groups[i] != current) -- { -- not_current = groups[i]; -- break; -- } -- } -- free (groups); -- return not_current; --} -- -- --/* Copies the executable into a restricted directory, so that we can -- safely make it SGID with the TARGET group ID. Then runs the -- executable. */ --static int --run_executable_sgid (gid_t target) --{ -- char *dirname = xasprintf ("%s/secure-getenv.%jd", -- test_dir, (intmax_t) getpid ()); -- char *execname = xasprintf ("%s/bin", dirname); -- int infd = -1; -- int outfd = -1; -- int ret = -1; -- if (mkdir (dirname, 0700) < 0) -- { -- printf ("mkdir: %m\n"); -- goto err; -- } -- infd = open ("/proc/self/exe", O_RDONLY); -- if (infd < 0) -- { -- printf ("open (/proc/self/exe): %m\n"); -- goto err; -- } -- outfd = open (execname, O_WRONLY | O_CREAT | O_EXCL, 0700); -- if (outfd < 0) -- { -- printf ("open (%s): %m\n", execname); -- goto err; -- } -- char buf[4096]; -- for (;;) -- { -- ssize_t rdcount = read (infd, buf, sizeof (buf)); -- if (rdcount < 0) -- { -- printf ("read: %m\n"); -- goto err; -- } -- if (rdcount == 0) -- break; -- char *p = buf; -- char *end = buf + rdcount; -- while (p != end) -- { -- ssize_t wrcount = write (outfd, buf, end - p); -- if (wrcount == 0) -- errno = ENOSPC; -- if (wrcount <= 0) -- { -- printf ("write: %m\n"); -- goto err; -- } -- p += wrcount; -- } -- } -- if (fchown (outfd, getuid (), target) < 0) -- { -- printf ("fchown (%s): %m\n", execname); -- goto err; -- } -- if (fchmod (outfd, 02750) < 0) -- { -- printf ("fchmod (%s): %m\n", execname); -- goto err; -- } -- if (close (outfd) < 0) -- { -- printf ("close (outfd): %m\n"); -- goto err; -- } -- if (close (infd) < 0) -- { -- printf ("close (infd): %m\n"); -- goto err; -- } -- -- int kid = fork (); -- if (kid < 0) -- { -- printf ("fork: %m\n"); -- goto err; -- } -- if (kid == 0) -- { -- /* Child process. */ -- char *args[] = { execname, MAGIC_ARGUMENT, NULL }; -- execve (execname, args, environ); -- printf ("execve (%s): %m\n", execname); -- _exit (1); -- } -- int status; -- if (waitpid (kid, &status, 0) < 0) -- { -- printf ("waitpid: %m\n"); -- goto err; -- } -- if (!WIFEXITED (status) || WEXITSTATUS (status) != MAGIC_STATUS) -- { -- printf ("Unexpected exit status %d from child process\n", -- status); -- goto err; -- } -- ret = 0; -- --err: -- if (outfd >= 0) -- close (outfd); -- if (infd >= 0) -- close (infd); -- if (execname) -- { -- unlink (execname); -- free (execname); -- } -- if (dirname) -- { -- rmdir (dirname); -- free (dirname); -- } -- return ret; --} - - static int - do_test (void) -@@ -212,15 +57,15 @@ do_test (void) - exit (1); - } - -- gid_t target = choose_gid (); -- if (target == 0) -- { -- fprintf (stderr, -- "Could not find a suitable GID for user %jd, skipping test\n", -- (intmax_t) getuid ()); -- exit (0); -- } -- return run_executable_sgid (target); -+ int status = support_capture_subprogram_self_sgid (MAGIC_ARGUMENT); -+ -+ if (WEXITSTATUS (status) == EXIT_UNSUPPORTED) -+ return EXIT_UNSUPPORTED; -+ -+ if (!WIFEXITED (status)) -+ FAIL_EXIT1 ("Unexpected exit status %d from child process\n", status); -+ -+ return 0; - } - - static void -@@ -229,23 +74,15 @@ alternative_main (int argc, char **argv) - if (argc == 2 && strcmp (argv[1], MAGIC_ARGUMENT) == 0) - { - if (getgid () == getegid ()) -- { -- /* This can happen if the file system is mounted nosuid. */ -- fprintf (stderr, "SGID failed: GID and EGID match (%jd)\n", -- (intmax_t) getgid ()); -- exit (MAGIC_STATUS); -- } -+ /* This can happen if the file system is mounted nosuid. */ -+ FAIL_UNSUPPORTED ("SGID failed: GID and EGID match (%jd)\n", -+ (intmax_t) getgid ()); - if (getenv ("PATH") == NULL) -- { -- printf ("PATH variable not present\n"); -- exit (3); -- } -+ FAIL_EXIT (3, "PATH variable not present\n"); - if (secure_getenv ("PATH") != NULL) -- { -- printf ("PATH variable not filtered out\n"); -- exit (4); -- } -- exit (MAGIC_STATUS); -+ FAIL_EXIT (4, "PATH variable not filtered out\n"); -+ -+ exit (EXIT_SUCCESS); - } - } - -diff --git a/support/capture_subprocess.h b/support/capture_subprocess.h -index 8969d4a99a093657..4be430f099bcc8cd 100644 ---- a/support/capture_subprocess.h -+++ b/support/capture_subprocess.h -@@ -41,6 +41,12 @@ struct support_capture_subprocess support_capture_subprocess - struct support_capture_subprocess support_capture_subprogram - (const char *file, char *const argv[]); - -+/* Copy the running program into a setgid binary and run it with CHILD_ID -+ argument. If execution is successful, return the exit status of the child -+ program, otherwise return a non-zero failure exit code. */ -+int support_capture_subprogram_self_sgid -+ (char *child_id); -+ - /* Deallocate the subprocess data captured by - support_capture_subprocess. */ - void support_capture_subprocess_free (struct support_capture_subprocess *); -diff --git a/support/subprocess.h b/support/subprocess.h -index 11cfc6a07f5ad94a..40d82c7e4db27090 100644 ---- a/support/subprocess.h -+++ b/support/subprocess.h -@@ -38,6 +38,11 @@ struct support_subprocess support_subprocess - struct support_subprocess support_subprogram - (const char *file, char *const argv[]); - -+/* Invoke program FILE with ARGV arguments by using posix_spawn and wait for it -+ to complete. Return program exit status. */ -+int support_subprogram_wait -+ (const char *file, char *const argv[]); -+ - /* Wait for the subprocess indicated by PROC::PID. Return the status - indicate by waitpid call. */ - int support_process_wait (struct support_subprocess *proc); -diff --git a/support/support_capture_subprocess.c b/support/support_capture_subprocess.c -index 3eb825b9afc0b5e6..27bfd19c9374a183 100644 ---- a/support/support_capture_subprocess.c -+++ b/support/support_capture_subprocess.c -@@ -20,11 +20,14 @@ - #include - - #include -+#include - #include - #include - #include - #include - #include -+#include -+#include - - static void - transfer (const char *what, struct pollfd *pfd, struct xmemstream *stream) -@@ -102,6 +105,129 @@ support_capture_subprogram (const char *file, char *const argv[]) - return result; - } - -+/* Copies the executable into a restricted directory, so that we can -+ safely make it SGID with the TARGET group ID. Then runs the -+ executable. */ -+static int -+copy_and_spawn_sgid (char *child_id, gid_t gid) -+{ -+ char *dirname = xasprintf ("%s/tst-tunables-setuid.%jd", -+ test_dir, (intmax_t) getpid ()); -+ char *execname = xasprintf ("%s/bin", dirname); -+ int infd = -1; -+ int outfd = -1; -+ int ret = 1, status = 1; -+ -+ TEST_VERIFY (mkdir (dirname, 0700) == 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ -+ infd = open ("/proc/self/exe", O_RDONLY); -+ if (infd < 0) -+ FAIL_UNSUPPORTED ("unsupported: Cannot read binary from procfs\n"); -+ -+ outfd = open (execname, O_WRONLY | O_CREAT | O_EXCL, 0700); -+ TEST_VERIFY (outfd >= 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ -+ char buf[4096]; -+ for (;;) -+ { -+ ssize_t rdcount = read (infd, buf, sizeof (buf)); -+ TEST_VERIFY (rdcount >= 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ if (rdcount == 0) -+ break; -+ char *p = buf; -+ char *end = buf + rdcount; -+ while (p != end) -+ { -+ ssize_t wrcount = write (outfd, buf, end - p); -+ if (wrcount == 0) -+ errno = ENOSPC; -+ TEST_VERIFY (wrcount > 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ p += wrcount; -+ } -+ } -+ TEST_VERIFY (fchown (outfd, getuid (), gid) == 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ TEST_VERIFY (fchmod (outfd, 02750) == 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ TEST_VERIFY (close (outfd) == 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ TEST_VERIFY (close (infd) == 0); -+ if (support_record_failure_is_failed ()) -+ goto err; -+ -+ /* We have the binary, now spawn the subprocess. Avoid using -+ support_subprogram because we only want the program exit status, not the -+ contents. */ -+ ret = 0; -+ -+ char * const args[] = {execname, child_id, NULL}; -+ -+ status = support_subprogram_wait (args[0], args); -+ -+err: -+ if (outfd >= 0) -+ close (outfd); -+ if (infd >= 0) -+ close (infd); -+ if (execname != NULL) -+ { -+ unlink (execname); -+ free (execname); -+ } -+ if (dirname != NULL) -+ { -+ rmdir (dirname); -+ free (dirname); -+ } -+ -+ if (ret != 0) -+ FAIL_EXIT1("Failed to make sgid executable for test\n"); -+ -+ return status; -+} -+ -+int -+support_capture_subprogram_self_sgid (char *child_id) -+{ -+ gid_t target = 0; -+ const int count = 64; -+ gid_t groups[count]; -+ -+ /* Get a GID which is not our current GID, but is present in the -+ supplementary group list. */ -+ int ret = getgroups (count, groups); -+ if (ret < 0) -+ FAIL_UNSUPPORTED("Could not get group list for user %jd\n", -+ (intmax_t) getuid ()); -+ -+ gid_t current = getgid (); -+ for (int i = 0; i < ret; ++i) -+ { -+ if (groups[i] != current) -+ { -+ target = groups[i]; -+ break; -+ } -+ } -+ -+ if (target == 0) -+ FAIL_UNSUPPORTED("Could not find a suitable GID for user %jd\n", -+ (intmax_t) getuid ()); -+ -+ return copy_and_spawn_sgid (child_id, target); -+} -+ - void - support_capture_subprocess_free (struct support_capture_subprocess *p) - { -diff --git a/support/support_subprocess.c b/support/support_subprocess.c -index 2acfc57b7e70732d..89e767ae47e454f1 100644 ---- a/support/support_subprocess.c -+++ b/support/support_subprocess.c -@@ -92,6 +92,19 @@ support_subprogram (const char *file, char *const argv[]) - return result; - } - -+int -+support_subprogram_wait (const char *file, char *const argv[]) -+{ -+ posix_spawn_file_actions_t fa; -+ -+ posix_spawn_file_actions_init (&fa); -+ struct support_subprocess res = support_subprocess_init (); -+ -+ res.pid = xposix_spawn (file, &fa, NULL, argv, environ); -+ -+ return support_process_wait (&res); -+} -+ - int - support_process_wait (struct support_subprocess *proc) - { diff --git a/glibc-upstream-2.33-33.patch b/glibc-upstream-2.33-33.patch deleted file mode 100644 index 25272a6..0000000 --- a/glibc-upstream-2.33-33.patch +++ /dev/null @@ -1,244 +0,0 @@ -commit ee16c81063d85582091702b6a3a736002b76f397 -Author: Siddhesh Poyarekar -Date: Tue Mar 16 12:37:53 2021 +0530 - - tst-env-setuid: Use support_capture_subprogram_self_sgid - - Use the support_capture_subprogram_self_sgid to spawn an sgid child. - Reviewed-by: Carlos O'Donell - - (cherry picked from commit ca335281068a1ed549a75ee64f90a8310755956f) - -diff --git a/elf/tst-env-setuid.c b/elf/tst-env-setuid.c -index 60ae0ca38050a871..49b5e319e27c2404 100644 ---- a/elf/tst-env-setuid.c -+++ b/elf/tst-env-setuid.c -@@ -29,173 +29,12 @@ - #include - #include - -+#include - #include - #include -+#include - - static char SETGID_CHILD[] = "setgid-child"; --#define CHILD_STATUS 42 -- --/* Return a GID which is not our current GID, but is present in the -- supplementary group list. */ --static gid_t --choose_gid (void) --{ -- const int count = 64; -- gid_t groups[count]; -- int ret = getgroups (count, groups); -- if (ret < 0) -- { -- printf ("getgroups: %m\n"); -- exit (1); -- } -- gid_t current = getgid (); -- for (int i = 0; i < ret; ++i) -- { -- if (groups[i] != current) -- return groups[i]; -- } -- return 0; --} -- --/* Spawn and execute a program and verify that it returns the CHILD_STATUS. */ --static pid_t --do_execve (char **args) --{ -- pid_t kid = vfork (); -- -- if (kid < 0) -- { -- printf ("vfork: %m\n"); -- return -1; -- } -- -- if (kid == 0) -- { -- /* Child process. */ -- execve (args[0], args, environ); -- _exit (-errno); -- } -- -- if (kid < 0) -- return 1; -- -- int status; -- -- if (waitpid (kid, &status, 0) < 0) -- { -- printf ("waitpid: %m\n"); -- return 1; -- } -- -- if (WEXITSTATUS (status) == EXIT_UNSUPPORTED) -- return EXIT_UNSUPPORTED; -- -- if (!WIFEXITED (status) || WEXITSTATUS (status) != CHILD_STATUS) -- { -- printf ("Unexpected exit status %d from child process\n", -- WEXITSTATUS (status)); -- return 1; -- } -- return 0; --} -- --/* Copies the executable into a restricted directory, so that we can -- safely make it SGID with the TARGET group ID. Then runs the -- executable. */ --static int --run_executable_sgid (gid_t target) --{ -- char *dirname = xasprintf ("%s/tst-tunables-setuid.%jd", -- test_dir, (intmax_t) getpid ()); -- char *execname = xasprintf ("%s/bin", dirname); -- int infd = -1; -- int outfd = -1; -- int ret = 0; -- if (mkdir (dirname, 0700) < 0) -- { -- printf ("mkdir: %m\n"); -- goto err; -- } -- infd = open ("/proc/self/exe", O_RDONLY); -- if (infd < 0) -- { -- printf ("open (/proc/self/exe): %m\n"); -- goto err; -- } -- outfd = open (execname, O_WRONLY | O_CREAT | O_EXCL, 0700); -- if (outfd < 0) -- { -- printf ("open (%s): %m\n", execname); -- goto err; -- } -- char buf[4096]; -- for (;;) -- { -- ssize_t rdcount = read (infd, buf, sizeof (buf)); -- if (rdcount < 0) -- { -- printf ("read: %m\n"); -- goto err; -- } -- if (rdcount == 0) -- break; -- char *p = buf; -- char *end = buf + rdcount; -- while (p != end) -- { -- ssize_t wrcount = write (outfd, buf, end - p); -- if (wrcount == 0) -- errno = ENOSPC; -- if (wrcount <= 0) -- { -- printf ("write: %m\n"); -- goto err; -- } -- p += wrcount; -- } -- } -- if (fchown (outfd, getuid (), target) < 0) -- { -- printf ("fchown (%s): %m\n", execname); -- goto err; -- } -- if (fchmod (outfd, 02750) < 0) -- { -- printf ("fchmod (%s): %m\n", execname); -- goto err; -- } -- if (close (outfd) < 0) -- { -- printf ("close (outfd): %m\n"); -- goto err; -- } -- if (close (infd) < 0) -- { -- printf ("close (infd): %m\n"); -- goto err; -- } -- -- char *args[] = {execname, SETGID_CHILD, NULL}; -- -- ret = do_execve (args); -- --err: -- if (outfd >= 0) -- close (outfd); -- if (infd >= 0) -- close (infd); -- if (execname) -- { -- unlink (execname); -- free (execname); -- } -- if (dirname) -- { -- rmdir (dirname); -- free (dirname); -- } -- return ret; --} - - #ifndef test_child - static int -@@ -256,40 +95,32 @@ do_test (int argc, char **argv) - if (argc == 2 && strcmp (argv[1], SETGID_CHILD) == 0) - { - if (getgid () == getegid ()) -- { -- /* This can happen if the file system is mounted nosuid. */ -- fprintf (stderr, "SGID failed: GID and EGID match (%jd)\n", -- (intmax_t) getgid ()); -- exit (EXIT_UNSUPPORTED); -- } -+ /* This can happen if the file system is mounted nosuid. */ -+ FAIL_UNSUPPORTED ("SGID failed: GID and EGID match (%jd)\n", -+ (intmax_t) getgid ()); - - int ret = test_child (); - - if (ret != 0) - exit (1); - -- exit (CHILD_STATUS); -+ exit (EXIT_SUCCESS); - } - else - { - if (test_parent () != 0) - exit (1); - -- /* Try running a setgid program. */ -- gid_t target = choose_gid (); -- if (target == 0) -- { -- fprintf (stderr, -- "Could not find a suitable GID for user %jd, skipping test\n", -- (intmax_t) getuid ()); -- exit (0); -- } -+ int status = support_capture_subprogram_self_sgid (SETGID_CHILD); - -- return run_executable_sgid (target); -- } -+ if (WEXITSTATUS (status) == EXIT_UNSUPPORTED) -+ return EXIT_UNSUPPORTED; -+ -+ if (!WIFEXITED (status)) -+ FAIL_EXIT1 ("Unexpected exit status %d from child process\n", status); - -- /* Something went wrong and our argv was corrupted. */ -- _exit (1); -+ return 0; -+ } - } - - #define TEST_FUNCTION_ARGV do_test diff --git a/glibc-upstream-2.33-34.patch b/glibc-upstream-2.33-34.patch deleted file mode 100644 index aded9cd..0000000 --- a/glibc-upstream-2.33-34.patch +++ /dev/null @@ -1,154 +0,0 @@ -commit a7b8e8ec9b21c7c6d4ec0ba2229abd63dc3a00b2 -Author: Siddhesh Poyarekar -Date: Tue Mar 16 12:37:54 2021 +0530 - - Enhance setuid-tunables test - - Instead of passing GLIBC_TUNABLES via the environment, pass the - environment variable from parent to child. This allows us to test - multiple variables to ensure better coverage. - - The test list currently only includes the case that's already being - tested. More tests will be added later. - Reviewed-by: Carlos O'Donell - - (cherry picked from commit 061fe3f8add46a89b7453e87eabb9c4695005ced) - -diff --git a/elf/Makefile b/elf/Makefile -index 4b92f8b3054b556e..28e18aea5d412222 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -1658,8 +1658,6 @@ $(objpfx)tst-nodelete-dlclose.out: $(objpfx)tst-nodelete-dlclose-dso.so \ - - tst-env-setuid-ENV = MALLOC_CHECK_=2 MALLOC_MMAP_THRESHOLD_=4096 \ - LD_HWCAP_MASK=0x1 --tst-env-setuid-tunables-ENV = \ -- GLIBC_TUNABLES=glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096 - - $(objpfx)tst-debug1: $(libdl) - $(objpfx)tst-debug1.out: $(objpfx)tst-debug1mod1.so -diff --git a/elf/tst-env-setuid-tunables.c b/elf/tst-env-setuid-tunables.c -index 50bef8683df0e9c1..3d523875b1e07a74 100644 ---- a/elf/tst-env-setuid-tunables.c -+++ b/elf/tst-env-setuid-tunables.c -@@ -25,35 +25,50 @@ - #include "config.h" - #undef _LIBC - --#define test_parent test_parent_tunables --#define test_child test_child_tunables -- --static int test_child_tunables (void); --static int test_parent_tunables (void); -- --#include "tst-env-setuid.c" -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+ -+const char *teststrings[] = -+{ -+ "glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096", -+}; - --#define CHILD_VALSTRING_VALUE "glibc.malloc.mmap_threshold=4096" --#define PARENT_VALSTRING_VALUE \ -- "glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096" -+const char *resultstrings[] = -+{ -+ "glibc.malloc.mmap_threshold=4096", -+}; - - static int --test_child_tunables (void) -+test_child (int off) - { - const char *val = getenv ("GLIBC_TUNABLES"); - - #if HAVE_TUNABLES -- if (val != NULL && strcmp (val, CHILD_VALSTRING_VALUE) == 0) -+ if (val != NULL && strcmp (val, resultstrings[off]) == 0) - return 0; - - if (val != NULL) -- printf ("Unexpected GLIBC_TUNABLES VALUE %s\n", val); -+ printf ("[%d] Unexpected GLIBC_TUNABLES VALUE %s\n", off, val); - - return 1; - #else - if (val != NULL) - { -- printf ("GLIBC_TUNABLES not cleared\n"); -+ printf ("[%d] GLIBC_TUNABLES not cleared\n", off); - return 1; - } - return 0; -@@ -61,15 +76,48 @@ test_child_tunables (void) - } - - static int --test_parent_tunables (void) -+do_test (int argc, char **argv) - { -- const char *val = getenv ("GLIBC_TUNABLES"); -+ /* Setgid child process. */ -+ if (argc == 2) -+ { -+ if (getgid () == getegid ()) -+ /* This can happen if the file system is mounted nosuid. */ -+ FAIL_UNSUPPORTED ("SGID failed: GID and EGID match (%jd)\n", -+ (intmax_t) getgid ()); - -- if (val != NULL && strcmp (val, PARENT_VALSTRING_VALUE) == 0) -- return 0; -+ int ret = test_child (atoi (argv[1])); - -- if (val != NULL) -- printf ("Unexpected GLIBC_TUNABLES VALUE %s\n", val); -+ if (ret != 0) -+ exit (1); - -- return 1; -+ exit (EXIT_SUCCESS); -+ } -+ else -+ { -+ int ret = 0; -+ -+ /* Spawn tests. */ -+ for (int i = 0; i < array_length (teststrings); i++) -+ { -+ char buf[INT_BUFSIZE_BOUND (int)]; -+ -+ printf ("Spawned test for %s (%d)\n", teststrings[i], i); -+ snprintf (buf, sizeof (buf), "%d\n", i); -+ if (setenv ("GLIBC_TUNABLES", teststrings[i], 1) != 0) -+ exit (1); -+ -+ int status = support_capture_subprogram_self_sgid (buf); -+ -+ /* Bail out early if unsupported. */ -+ if (WEXITSTATUS (status) == EXIT_UNSUPPORTED) -+ return EXIT_UNSUPPORTED; -+ -+ ret |= status; -+ } -+ return ret; -+ } - } -+ -+#define TEST_FUNCTION_ARGV do_test -+#include diff --git a/glibc-upstream-2.33-35.patch b/glibc-upstream-2.33-35.patch deleted file mode 100644 index 7a39750..0000000 --- a/glibc-upstream-2.33-35.patch +++ /dev/null @@ -1,164 +0,0 @@ -commit 1bf38e7260c2cd3e40e118c1f1ea28de182dc751 -Author: Siddhesh Poyarekar -Date: Tue Mar 16 12:37:55 2021 +0530 - - Fix SXID_ERASE behavior in setuid programs (BZ #27471) - - When parse_tunables tries to erase a tunable marked as SXID_ERASE for - setuid programs, it ends up setting the envvar string iterator - incorrectly, because of which it may parse the next tunable - incorrectly. Given that currently the implementation allows malformed - and unrecognized tunables pass through, it may even allow SXID_ERASE - tunables to go through. - - This change revamps the SXID_ERASE implementation so that: - - - Only valid tunables are written back to the tunestr string, because - of which children of SXID programs will only inherit a clean list of - identified tunables that are not SXID_ERASE. - - - Unrecognized tunables get scrubbed off from the environment and - subsequently from the child environment. - - - This has the side-effect that a tunable that is not identified by - the setxid binary, will not be passed on to a non-setxid child even - if the child could have identified that tunable. This may break - applications that expect this behaviour but expecting such tunables - to cross the SXID boundary is wrong. - Reviewed-by: Carlos O'Donell - - (cherry picked from commit 2ed18c5b534d9e92fc006202a5af0df6b72e7aca) - -diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c -index 8b751dcf0deb0d01..8009e54ee5db32be 100644 ---- a/elf/dl-tunables.c -+++ b/elf/dl-tunables.c -@@ -174,6 +174,7 @@ parse_tunables (char *tunestr, char *valstring) - return; - - char *p = tunestr; -+ size_t off = 0; - - while (true) - { -@@ -187,7 +188,11 @@ parse_tunables (char *tunestr, char *valstring) - /* If we reach the end of the string before getting a valid name-value - pair, bail out. */ - if (p[len] == '\0') -- return; -+ { -+ if (__libc_enable_secure) -+ tunestr[off] = '\0'; -+ return; -+ } - - /* We did not find a valid name-value pair before encountering the - colon. */ -@@ -213,35 +218,28 @@ parse_tunables (char *tunestr, char *valstring) - - if (tunable_is_name (cur->name, name)) - { -- /* If we are in a secure context (AT_SECURE) then ignore the tunable -- unless it is explicitly marked as secure. Tunable values take -- precedence over their envvar aliases. */ -+ /* If we are in a secure context (AT_SECURE) then ignore the -+ tunable unless it is explicitly marked as secure. Tunable -+ values take precedence over their envvar aliases. We write -+ the tunables that are not SXID_ERASE back to TUNESTR, thus -+ dropping all SXID_ERASE tunables and any invalid or -+ unrecognized tunables. */ - if (__libc_enable_secure) - { -- if (cur->security_level == TUNABLE_SECLEVEL_SXID_ERASE) -+ if (cur->security_level != TUNABLE_SECLEVEL_SXID_ERASE) - { -- if (p[len] == '\0') -- { -- /* Last tunable in the valstring. Null-terminate and -- return. */ -- *name = '\0'; -- return; -- } -- else -- { -- /* Remove the current tunable from the string. We do -- this by overwriting the string starting from NAME -- (which is where the current tunable begins) with -- the remainder of the string. We then have P point -- to NAME so that we continue in the correct -- position in the valstring. */ -- char *q = &p[len + 1]; -- p = name; -- while (*q != '\0') -- *name++ = *q++; -- name[0] = '\0'; -- len = 0; -- } -+ if (off > 0) -+ tunestr[off++] = ':'; -+ -+ const char *n = cur->name; -+ -+ while (*n != '\0') -+ tunestr[off++] = *n++; -+ -+ tunestr[off++] = '='; -+ -+ for (size_t j = 0; j < len; j++) -+ tunestr[off++] = value[j]; - } - - if (cur->security_level != TUNABLE_SECLEVEL_NONE) -@@ -254,9 +252,7 @@ parse_tunables (char *tunestr, char *valstring) - } - } - -- if (p[len] == '\0') -- return; -- else -+ if (p[len] != '\0') - p += len + 1; - } - } -diff --git a/elf/tst-env-setuid-tunables.c b/elf/tst-env-setuid-tunables.c -index 3d523875b1e07a74..05619c9adc8b2698 100644 ---- a/elf/tst-env-setuid-tunables.c -+++ b/elf/tst-env-setuid-tunables.c -@@ -45,11 +45,37 @@ - const char *teststrings[] = - { - "glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.check=2:glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.check=2:glibc.malloc.mmap_threshold=4096:glibc.malloc.check=2", -+ "glibc.malloc.perturb=0x800", -+ "glibc.malloc.perturb=0x800:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.perturb=0x800:not_valid.malloc.check=2:glibc.malloc.mmap_threshold=4096", -+ "glibc.not_valid.check=2:glibc.malloc.mmap_threshold=4096", -+ "not_valid.malloc.check=2:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.garbage=2:glibc.maoc.mmap_threshold=4096:glibc.malloc.check=2", -+ "glibc.malloc.check=4:glibc.malloc.garbage=2:glibc.maoc.mmap_threshold=4096", -+ ":glibc.malloc.garbage=2:glibc.malloc.check=1", -+ "glibc.malloc.check=1:glibc.malloc.check=2", -+ "not_valid.malloc.check=2", -+ "glibc.not_valid.check=2", - }; - - const char *resultstrings[] = - { - "glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.perturb=0x800", -+ "glibc.malloc.perturb=0x800:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.perturb=0x800:glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.mmap_threshold=4096", -+ "glibc.malloc.mmap_threshold=4096", -+ "", -+ "", -+ "", -+ "", -+ "", -+ "", - }; - - static int diff --git a/glibc-upstream-2.33-36.patch b/glibc-upstream-2.33-36.patch deleted file mode 100644 index 2881a46..0000000 --- a/glibc-upstream-2.33-36.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit 12ff80b312c11b0284df7a1c5cb9be6418f85228 -Author: Szabolcs Nagy -Date: Tue Feb 2 15:02:09 2021 +0000 - - Remove PR_TAGGED_ADDR_ENABLE from sys/prctl.h - - The value of PR_TAGGED_ADDR_ENABLE was incorrect in the installed - headers and the prctl command macros were missing that are needed - for it to be useful (PR_SET_TAGGED_ADDR_CTRL). Linux headers have - the definitions since 5.4 so it's widely available, we don't need - to repeat these definitions. The remaining definitions are from - Linux 5.10. - - To build glibc with --enable-memory-tagging, Linux 5.4 headers and - binutils 2.33.1 or newer is needed. - - Reviewed-by: DJ Delorie - (cherry picked from commit f4596d9540021265a99697fceef8a434c47e8bcf) - -diff --git a/sysdeps/unix/sysv/linux/sys/prctl.h b/sysdeps/unix/sysv/linux/sys/prctl.h -index 00817ff0f14c617d..c9048c7cdb3e4d26 100644 ---- a/sysdeps/unix/sysv/linux/sys/prctl.h -+++ b/sysdeps/unix/sysv/linux/sys/prctl.h -@@ -25,10 +25,6 @@ - we're picking up... */ - - /* Memory tagging control operations (for AArch64). */ --#ifndef PR_TAGGED_ADDR_ENABLE --# define PR_TAGGED_ADDR_ENABLE (1UL << 8) --#endif -- - #ifndef PR_MTE_TCF_SHIFT - # define PR_MTE_TCF_SHIFT 1 - # define PR_MTE_TCF_NONE (0UL << PR_MTE_TCF_SHIFT) diff --git a/glibc-upstream-2.33-37.patch b/glibc-upstream-2.33-37.patch deleted file mode 100644 index 66760cc..0000000 --- a/glibc-upstream-2.33-37.patch +++ /dev/null @@ -1,28 +0,0 @@ -commit 162df872f0dfc2b124a18e1a8c33be63f70d9a1c -Author: H.J. Lu -Date: Wed Apr 21 18:40:08 2021 -0700 - - x86: tst-cpu-features-supports.c: Update AMX check - - Pass "amx-bf16", "amx-int8" and "amx-tile", instead of "amx_bf16", - "amx_int8" and "amx_tile", to __builtin_cpu_supports for GCC 11. - - (cherry picked from commit 7fc9152e831fb24091c0ceabdcecb9b07dd29dd6) - -diff --git a/sysdeps/x86/tst-cpu-features-supports.c b/sysdeps/x86/tst-cpu-features-supports.c -index 79d803eb291c188a..cc0d2b2d569a376b 100644 ---- a/sysdeps/x86/tst-cpu-features-supports.c -+++ b/sysdeps/x86/tst-cpu-features-supports.c -@@ -59,9 +59,9 @@ do_test (int argc, char **argv) - fails += CHECK_SUPPORTS (aes, AES); - #endif - #if __GNUC_PREREQ (11, 1) -- fails += CHECK_SUPPORTS (amx_bf16, AMX_BF16); -- fails += CHECK_SUPPORTS (amx_int8, AMX_INT8); -- fails += CHECK_SUPPORTS (amx_tile, AMX_TILE); -+ fails += CHECK_SUPPORTS (amx-bf16, AMX_BF16); -+ fails += CHECK_SUPPORTS (amx-int8, AMX_INT8); -+ fails += CHECK_SUPPORTS (amx-tile, AMX_TILE); - #endif - fails += CHECK_SUPPORTS (avx, AVX); - fails += CHECK_SUPPORTS (avx2, AVX2); diff --git a/glibc-upstream-2.33-38.patch b/glibc-upstream-2.33-38.patch deleted file mode 100644 index 75114b3..0000000 --- a/glibc-upstream-2.33-38.patch +++ /dev/null @@ -1,295 +0,0 @@ -commit ea299b62e83cc38b0d910bbd1a879f7d1f836e96 -Author: Florian Weimer -Date: Wed Apr 21 11:50:43 2021 +0200 - - nptl_db: Support different libpthread/ld.so load orders (bug 27744) - - libthread_db is loaded once GDB encounters libpthread, and at this - point, ld.so may not have been processed by GDB yet. As a result, - _rtld_global cannot be accessed by regular means from libthread_db. - To make this work until GDB can be fixed, acess _rtld_global through - a pointer stored in libpthread. - - The new test does not reproduce bug 27744 with - --disable-hardcoded-path-in-tests, but is still a valid smoke test. - With --enable-hardcoded-path-in-tests, it is necessary to avoid - add-symbol-file because this can tickle a GDB bug. - - Fixes commit 1daccf403b1bd86370eb94edca794dc106d02039 ("nptl: Move - stack list variables into _rtld_global"). - - Tested-by: Emil Velikov - (cherry picked from commit a64afc225240b2b27129ccfb0516d7c958b98040) - -diff --git a/nptl/Makefile b/nptl/Makefile -index 5b036eb8a7b5d8b3..1ca23385d4de9000 100644 ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -294,7 +294,8 @@ tests = tst-attr2 tst-attr3 tst-default-attr \ - tst-thread-affinity-sched \ - tst-pthread-defaultattr-free \ - tst-pthread-attr-sigmask \ -- tst-pthread-timedlock-lockloop -+ tst-pthread-timedlock-lockloop \ -+ tst-pthread-gdb-attach tst-pthread-gdb-attach-static - - tests-container = tst-pthread-getattr - -@@ -340,6 +341,19 @@ CPPFLAGS-test-cond-printers.c := $(CFLAGS-printers-tests) - CPPFLAGS-test-rwlockattr-printers.c := $(CFLAGS-printers-tests) - CPPFLAGS-test-rwlock-printers.c := $(CFLAGS-printers-tests) - -+# Reuse the CFLAGS setting for the GDB attaching test. It needs -+# debugging information. -+CFLAGS-tst-pthread-gdb-attach.c := $(CFLAGS-printers-tests) -+CPPFLAGS-tst-pthread-gdb-attach.c := $(CFLAGS-printers-tests) -+ifeq ($(build-shared)$(build-hardcoded-path-in-tests),yesno) -+CPPFLAGS-tst-pthread-gdb-attach.c += -DDO_ADD_SYMBOL_FILE=1 -+else -+CPPFLAGS-tst-pthread-gdb-attach.c += -DDO_ADD_SYMBOL_FILE=0 -+endif -+CFLAGS-tst-pthread-gdb-attach-static.c := $(CFLAGS-printers-tests) -+CPPFLAGS-tst-pthread-gdb-attach-static.c := \ -+ $(CFLAGS-printers-tests) -DDO_ADD_SYMBOL_FILE=0 -+ - ifeq ($(build-shared),yes) - tests-printers-libs := $(shared-thread-library) - else -@@ -411,7 +425,8 @@ link-libc-static := $(common-objpfx)libc.a $(static-gnulib) \ - tests-static += tst-stackguard1-static \ - tst-cancel24-static \ - tst-mutex8-static tst-mutexpi8-static tst-sem11-static \ -- tst-sem12-static tst-cond11-static -+ tst-sem12-static tst-cond11-static \ -+ tst-pthread-gdb-attach-static - - tests += tst-cancel24-static - -diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c -index 6c645aff48ed7dd7..f13d8e44a4b5b693 100644 ---- a/nptl/pthread_create.c -+++ b/nptl/pthread_create.c -@@ -51,6 +51,14 @@ static td_thr_events_t __nptl_threads_events __attribute_used__; - /* Pointer to descriptor with the last event. */ - static struct pthread *__nptl_last_event __attribute_used__; - -+#ifdef SHARED -+/* This variable is used to access _rtld_global from libthread_db. If -+ GDB loads libpthread before ld.so, it is not possible to resolve -+ _rtld_global directly during libpthread initialization. */ -+static struct rtld_global *__nptl_rtld_global __attribute_used__ -+ = &_rtld_global; -+#endif -+ - /* Number of threads running. */ - unsigned int __nptl_nthreads = 1; - -diff --git a/nptl/tst-pthread-gdb-attach-static.c b/nptl/tst-pthread-gdb-attach-static.c -new file mode 100644 -index 0000000000000000..e159632cac57faff ---- /dev/null -+++ b/nptl/tst-pthread-gdb-attach-static.c -@@ -0,0 +1 @@ -+#include "tst-pthread-gdb-attach.c" -diff --git a/nptl/tst-pthread-gdb-attach.c b/nptl/tst-pthread-gdb-attach.c -new file mode 100644 -index 0000000000000000..0603ad844defb8de ---- /dev/null -+++ b/nptl/tst-pthread-gdb-attach.c -@@ -0,0 +1,143 @@ -+/* Smoke testing GDB process attach with thread-local variable access. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* This test runs GDB against a forked copy of itself, to check -+ whether libthread_db can be loaded, and that access to thread-local -+ variables works. */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+/* Starts out as zero, changed to 1 or 2 by the debugger, depending on -+ the thread. */ -+__thread volatile int altered_by_debugger; -+ -+/* Writes the GDB script to run the test to PATH. */ -+static void -+write_gdbscript (const char *path, int tested_pid) -+{ -+ FILE *fp = xfopen (path, "w"); -+ fprintf (fp, -+ "set trace-commands on\n" -+ "set debug libthread-db 1\n" -+#if DO_ADD_SYMBOL_FILE -+ /* Do not do this unconditionally to work around a GDB -+ assertion failure: ../../gdb/symtab.c:6404: -+ internal-error: CORE_ADDR get_msymbol_address(objfile*, -+ const minimal_symbol*): Assertion `(objf->flags & -+ OBJF_MAINLINE) == 0' failed. */ -+ "add-symbol-file %1$s/nptl/tst-pthread-gdb-attach\n" -+#endif -+ "set auto-load safe-path %1$s/nptl_db\n" -+ "set libthread-db-search-path %1$s/nptl_db\n" -+ "attach %2$d\n", -+ support_objdir_root, tested_pid); -+ fputs ("break debugger_inspection_point\n" -+ "continue\n" -+ "thread 1\n" -+ "print altered_by_debugger\n" -+ "print altered_by_debugger = 1\n" -+ "thread 2\n" -+ "print altered_by_debugger\n" -+ "print altered_by_debugger = 2\n" -+ "continue\n", -+ fp); -+ xfclose (fp); -+} -+ -+/* The test sets a breakpoint on this function and alters the -+ altered_by_debugger thread-local variable. */ -+void __attribute__ ((weak)) -+debugger_inspection_point (void) -+{ -+} -+ -+/* Thread function for the test thread in the subprocess. */ -+static void * -+subprocess_thread (void *closure) -+{ -+ /* Wait until altered_by_debugger changes the value away from 0. */ -+ while (altered_by_debugger == 0) -+ { -+ usleep (100 * 1000); -+ debugger_inspection_point (); -+ } -+ -+ TEST_COMPARE (altered_by_debugger, 2); -+ return NULL; -+} -+ -+/* This function implements the subprocess under test. It creates a -+ second thread, waiting for its value to change to 2, and checks -+ that the main thread also changed its value to 1. */ -+static void -+in_subprocess (void) -+{ -+ pthread_t thr = xpthread_create (NULL, subprocess_thread, NULL); -+ TEST_VERIFY (xpthread_join (thr) == NULL); -+ TEST_COMPARE (altered_by_debugger, 1); -+ _exit (0); -+} -+ -+static int -+do_test (void) -+{ -+ pid_t tested_pid = xfork (); -+ if (tested_pid == 0) -+ in_subprocess (); -+ char *tested_pid_string = xasprintf ("%d", tested_pid); -+ -+ char *gdbscript; -+ xclose (create_temp_file ("tst-pthread-gdb-attach-", &gdbscript)); -+ write_gdbscript (gdbscript, tested_pid); -+ -+ pid_t gdb_pid = xfork (); -+ if (gdb_pid == 0) -+ { -+ clearenv (); -+ xdup2 (STDOUT_FILENO, STDERR_FILENO); -+ execlp ("gdb", "gdb", "-nx", "-batch", "-x", gdbscript, NULL); -+ if (errno == ENOENT) -+ _exit (EXIT_UNSUPPORTED); -+ else -+ _exit (1); -+ } -+ -+ int status; -+ TEST_COMPARE (xwaitpid (gdb_pid, &status, 0), gdb_pid); -+ if (WIFEXITED (status) && WEXITSTATUS (status) == EXIT_UNSUPPORTED) -+ /* gdb is not installed. */ -+ return EXIT_UNSUPPORTED; -+ TEST_COMPARE (status, 0); -+ TEST_COMPARE (xwaitpid (tested_pid, &status, 0), tested_pid); -+ TEST_COMPARE (status, 0); -+ -+ free (tested_pid_string); -+ free (gdbscript); -+ return 0; -+} -+ -+#include -diff --git a/nptl_db/structs.def b/nptl_db/structs.def -index 999a9fc35a0c742f..8a613dd2f5fc016b 100644 ---- a/nptl_db/structs.def -+++ b/nptl_db/structs.def -@@ -100,8 +100,7 @@ DB_STRUCT_FIELD (pthread, dtvp) - #endif - - #if !(IS_IN (libpthread) && !defined SHARED) --DB_STRUCT (rtld_global) --DB_RTLD_VARIABLE (_rtld_global) -+DB_VARIABLE (__nptl_rtld_global) - #endif - DB_RTLD_GLOBAL_FIELD (dl_tls_dtv_slotinfo_list) - DB_RTLD_GLOBAL_FIELD (dl_stack_user) -diff --git a/nptl_db/td_init.c b/nptl_db/td_init.c -index 1d15681228470c3a..06b5adc5c2941841 100644 ---- a/nptl_db/td_init.c -+++ b/nptl_db/td_init.c -@@ -33,13 +33,14 @@ td_init (void) - bool - __td_ta_rtld_global (td_thragent_t *ta) - { -- if (ta->ta_addr__rtld_global == 0 -- && td_mod_lookup (ta->ph, LD_SO, SYM__rtld_global, -- &ta->ta_addr__rtld_global) != PS_OK) -+ if (ta->ta_addr__rtld_global == 0) - { -- ta->ta_addr__rtld_global = (void*)-1; -- return false; -+ psaddr_t rtldglobalp; -+ if (DB_GET_VALUE (rtldglobalp, ta, __nptl_rtld_global, 0) == TD_OK) -+ ta->ta_addr__rtld_global = rtldglobalp; -+ else -+ ta->ta_addr__rtld_global = (void *) -1; - } -- else -- return ta->ta_addr__rtld_global != (void*)-1; -+ -+ return ta->ta_addr__rtld_global != (void *)-1; - } -diff --git a/nptl_db/thread_dbP.h b/nptl_db/thread_dbP.h -index 580a70c471d45982..712fa3aeb6bd67de 100644 ---- a/nptl_db/thread_dbP.h -+++ b/nptl_db/thread_dbP.h -@@ -108,6 +108,8 @@ struct td_thragent - # undef DB_SYMBOL - # undef DB_VARIABLE - -+ psaddr_t ta_addr__rtld_global; -+ - /* The method of locating a thread's th_unique value. */ - enum - { diff --git a/glibc-upstream-2.33-39.patch b/glibc-upstream-2.33-39.patch deleted file mode 100644 index edea939..0000000 --- a/glibc-upstream-2.33-39.patch +++ /dev/null @@ -1,131 +0,0 @@ -commit 36783141cf090412e3e6f042f25f7f6c63d6a14a -Author: Florian Weimer -Date: Thu Apr 22 11:07:43 2021 +0200 - - nptl: Check for compatible GDB in nptl/tst-pthread-gdb-attach - - Also do not clear the subprocess environment, in case running - GDB needs certain environment variables. - - (cherry picked from commit f553dc066071a4465321fbc122bed8a75afd996b) - -diff --git a/nptl/tst-pthread-gdb-attach.c b/nptl/tst-pthread-gdb-attach.c -index 0603ad844defb8de..901a12003426d342 100644 ---- a/nptl/tst-pthread-gdb-attach.c -+++ b/nptl/tst-pthread-gdb-attach.c -@@ -20,8 +20,12 @@ - whether libthread_db can be loaded, and that access to thread-local - variables works. */ - -+#include - #include -+#include -+#include - #include -+#include - #include - #include - #include -@@ -35,6 +39,49 @@ - the thread. */ - __thread volatile int altered_by_debugger; - -+/* Common prefix between 32-bit and 64-bit ELF. */ -+struct elf_prefix -+{ -+ unsigned char e_ident[EI_NIDENT]; -+ uint16_t e_type; -+ uint16_t e_machine; -+ uint32_t e_version; -+}; -+_Static_assert (sizeof (struct elf_prefix) == EI_NIDENT + 8, -+ "padding in struct elf_prefix"); -+ -+/* Reads the ELF header from PATH. Returns true if the header can be -+ read, false if the file is too short. */ -+static bool -+read_elf_header (const char *path, struct elf_prefix *elf) -+{ -+ int fd = xopen (path, O_RDONLY, 0); -+ bool result = read (fd, elf, sizeof (*elf)) == sizeof (*elf); -+ xclose (fd); -+ return result; -+} -+ -+/* Searches for "gdb" alongside the path variable. See execvpe. */ -+static char * -+find_gdb (void) -+{ -+ const char *path = getenv ("PATH"); -+ if (path == NULL) -+ return NULL; -+ while (true) -+ { -+ const char *colon = strchrnul (path, ':'); -+ char *candidate = xasprintf ("%.*s/gdb", (int) (colon - path), path); -+ if (access (candidate, X_OK) == 0) -+ return candidate; -+ free (candidate); -+ if (*colon == '\0') -+ break; -+ path = colon + 1; -+ } -+ return NULL; -+} -+ - /* Writes the GDB script to run the test to PATH. */ - static void - write_gdbscript (const char *path, int tested_pid) -@@ -105,6 +152,33 @@ in_subprocess (void) - static int - do_test (void) - { -+ char *gdb_path = find_gdb (); -+ if (gdb_path == NULL) -+ FAIL_UNSUPPORTED ("gdb command not found in PATH: %s", getenv ("PATH")); -+ -+ /* Check that libthread_db is compatible with the gdb architecture -+ because gdb loads it via dlopen. */ -+ { -+ char *threaddb_path = xasprintf ("%s/nptl_db/libthread_db.so", -+ support_objdir_root); -+ struct elf_prefix elf_threaddb; -+ TEST_VERIFY_EXIT (read_elf_header (threaddb_path, &elf_threaddb)); -+ struct elf_prefix elf_gdb; -+ /* If the ELF header cannot be read or "gdb" is not an ELF file, -+ assume this is a wrapper script that can run. */ -+ if (read_elf_header (gdb_path, &elf_gdb) -+ && memcmp (&elf_gdb, ELFMAG, SELFMAG) == 0) -+ { -+ if (elf_gdb.e_ident[EI_CLASS] != elf_threaddb.e_ident[EI_CLASS]) -+ FAIL_UNSUPPORTED ("GDB at %s has wrong class", gdb_path); -+ if (elf_gdb.e_ident[EI_DATA] != elf_threaddb.e_ident[EI_DATA]) -+ FAIL_UNSUPPORTED ("GDB at %s has wrong data", gdb_path); -+ if (elf_gdb.e_machine != elf_threaddb.e_machine) -+ FAIL_UNSUPPORTED ("GDB at %s has wrong machine", gdb_path); -+ } -+ free (threaddb_path); -+ } -+ - pid_t tested_pid = xfork (); - if (tested_pid == 0) - in_subprocess (); -@@ -117,9 +191,8 @@ do_test (void) - pid_t gdb_pid = xfork (); - if (gdb_pid == 0) - { -- clearenv (); - xdup2 (STDOUT_FILENO, STDERR_FILENO); -- execlp ("gdb", "gdb", "-nx", "-batch", "-x", gdbscript, NULL); -+ execl (gdb_path, "gdb", "-nx", "-batch", "-x", gdbscript, NULL); - if (errno == ENOENT) - _exit (EXIT_UNSUPPORTED); - else -@@ -137,6 +210,7 @@ do_test (void) - - free (tested_pid_string); - free (gdbscript); -+ free (gdb_path); - return 0; - } - diff --git a/glibc-upstream-2.33-4.patch b/glibc-upstream-2.33-4.patch deleted file mode 100644 index 602a7a7..0000000 --- a/glibc-upstream-2.33-4.patch +++ /dev/null @@ -1,67 +0,0 @@ -commit c5e354589729c0ca63899923f18783fa6803462d -Author: Siddhesh Poyarekar -Date: Fri Feb 5 14:09:24 2021 +0530 - - tunables: Disallow negative values for some tunables - - The glibc.malloc.mmap_max tunable as well as al of the INT_32 tunables - don't have use for negative values, so pin the hardcoded limits in the - non-negative range of INT. There's no real benefit in any of those - use cases for the extended range of unsigned, so I have avoided added - a new type to keep things simple. - - (cherry picked from commit 228f30ab4724d4087d5f52018873fde22efea6e2) - -diff --git a/elf/dl-tunables.list b/elf/dl-tunables.list -index 3cf0ad83eca89200..8ddd4a23142a941b 100644 ---- a/elf/dl-tunables.list -+++ b/elf/dl-tunables.list -@@ -64,6 +64,7 @@ glibc { - type: INT_32 - env_alias: MALLOC_MMAP_MAX_ - security_level: SXID_IGNORE -+ minval: 0 - } - arena_max { - type: SIZE_T -@@ -109,22 +110,27 @@ glibc { - skip_lock_busy { - type: INT_32 - default: 3 -+ minval: 0 - } - skip_lock_internal_abort { - type: INT_32 - default: 3 -+ minval: 0 - } - skip_lock_after_retries { - type: INT_32 - default: 3 -+ minval: 0 - } - tries { - type: INT_32 - default: 3 -+ minval: 0 - } - skip_trylock_internal_abort { - type: INT_32 - default: 3 -+ minval: 0 - } - } - -diff --git a/elf/tst-rtld-list-tunables.exp b/elf/tst-rtld-list-tunables.exp -index 4f3f7ee4e30a2b42..9f66c528855fb21d 100644 ---- a/elf/tst-rtld-list-tunables.exp -+++ b/elf/tst-rtld-list-tunables.exp -@@ -1,7 +1,7 @@ - glibc.malloc.arena_max: 0x0 (min: 0x1, max: 0x[f]+) - glibc.malloc.arena_test: 0x0 (min: 0x1, max: 0x[f]+) - glibc.malloc.check: 0 (min: 0, max: 3) --glibc.malloc.mmap_max: 0 (min: -2147483648, max: 2147483647) -+glibc.malloc.mmap_max: 0 (min: 0, max: 2147483647) - glibc.malloc.mmap_threshold: 0x0 (min: 0x0, max: 0x[f]+) - glibc.malloc.mxfast: 0x0 (min: 0x0, max: 0x[f]+) - glibc.malloc.perturb: 0 (min: 0, max: 255) diff --git a/glibc-upstream-2.33-40.patch b/glibc-upstream-2.33-40.patch deleted file mode 100644 index 2652c88..0000000 --- a/glibc-upstream-2.33-40.patch +++ /dev/null @@ -1,22 +0,0 @@ -commit 3f5080aedd164c1f92a53552dd3e0b82ac6d2bd3 -Author: Florian Weimer -Date: Thu Apr 22 19:53:15 2021 +0200 - - nptl: Do not build nptl/tst-pthread-gdb-attach as PIE - - (cherry picked from commit 6f3e54d404cfe1ba7d1444e6dfcfd77b102d9287) - -diff --git a/nptl/Makefile b/nptl/Makefile -index 1ca23385d4de9000..a1a8ef254b3c3b17 100644 ---- a/nptl/Makefile -+++ b/nptl/Makefile -@@ -353,6 +353,9 @@ endif - CFLAGS-tst-pthread-gdb-attach-static.c := $(CFLAGS-printers-tests) - CPPFLAGS-tst-pthread-gdb-attach-static.c := \ - $(CFLAGS-printers-tests) -DDO_ADD_SYMBOL_FILE=0 -+# As of version 9.2, GDB cannot attach properly to PIE programs that -+# were launched with an explicit ld.so invocation. -+tst-pthread-gdb-attach-no-pie = yes - - ifeq ($(build-shared),yes) - tests-printers-libs := $(shared-thread-library) diff --git a/glibc-upstream-2.33-41.patch b/glibc-upstream-2.33-41.patch deleted file mode 100644 index e185b3b..0000000 --- a/glibc-upstream-2.33-41.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit 0ef0e6de7fdfa18328b09ba2afb4f0112d4bdab4 -Author: Nicholas Piggin -Date: Thu May 20 11:00:36 2021 -0300 - - powerpc: Fix handling of scv return error codes [BZ #27892] - - When using scv for templated ASM syscalls, current code interprets any - negative return value as error, but the only valid error codes are in - the range -4095..-1 according to the ABI. - - This commit also fixes 'signal.gen.test' strace test, where the issue - was first identified. - - Reviewed-by: Matheus Castanho - (cherry picked from commit 7de36744ee1325f35d3fe0ca079dd33c40b12267) - -diff --git a/sysdeps/powerpc/powerpc64/sysdep.h b/sysdeps/powerpc/powerpc64/sysdep.h -index c57bb1c05d02f663..1ea4c3b917295168 100644 ---- a/sysdeps/powerpc/powerpc64/sysdep.h -+++ b/sysdeps/powerpc/powerpc64/sysdep.h -@@ -398,8 +398,9 @@ LT_LABELSUFFIX(name,_name_end): ; \ - #endif - - #define RET_SCV \ -- cmpdi r3,0; \ -- bgelr+; \ -+ li r9,-4095; \ -+ cmpld r3,r9; \ -+ bltlr+; \ - neg r3,r3; - - #define RET_SC \ diff --git a/glibc-upstream-2.33-5.patch b/glibc-upstream-2.33-5.patch deleted file mode 100644 index 6020f1b..0000000 --- a/glibc-upstream-2.33-5.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 6efa2d44c8a5aeb34bd1f26b707c1713aac5bdd4 -Author: Stefan Liebler -Date: Tue Feb 16 16:18:56 2021 +0100 - - S390: Add new hwcap values. - - The new hwcap values indicate support for arch14 architecture. - - (cherry picked from commit 25251c0707fe34f30a27381a5fabc35435a96621) - -diff --git a/sysdeps/s390/dl-procinfo.c b/sysdeps/s390/dl-procinfo.c -index 0c334a2551c79be8..c174e27b3559c57c 100644 ---- a/sysdeps/s390/dl-procinfo.c -+++ b/sysdeps/s390/dl-procinfo.c -@@ -46,12 +46,13 @@ - #if !defined PROCINFO_DECL && defined SHARED - ._dl_s390_cap_flags - #else --PROCINFO_CLASS const char _dl_s390_cap_flags[19][9] -+PROCINFO_CLASS const char _dl_s390_cap_flags[21][9] - #endif - #ifndef PROCINFO_DECL - = { - "esan3", "zarch", "stfle", "msa", "ldisp", "eimm", "dfp", "edat", "etf3eh", -- "highgprs", "te", "vx", "vxd", "vxe", "gs", "vxe2", "vxp", "sort", "dflt" -+ "highgprs", "te", "vx", "vxd", "vxe", "gs", "vxe2", "vxp", "sort", "dflt", -+ "vxp2", "nnpa" - } - #endif - #if !defined SHARED || defined PROCINFO_DECL -diff --git a/sysdeps/s390/dl-procinfo.h b/sysdeps/s390/dl-procinfo.h -index 9e1a8c7ba9b8e01b..2d9c3058083e5dda 100644 ---- a/sysdeps/s390/dl-procinfo.h -+++ b/sysdeps/s390/dl-procinfo.h -@@ -21,7 +21,7 @@ - #define _DL_PROCINFO_H 1 - #include - --#define _DL_HWCAP_COUNT 19 -+#define _DL_HWCAP_COUNT 21 - - #define _DL_PLATFORMS_COUNT 10 - -@@ -61,6 +61,8 @@ enum - HWCAP_S390_VXRS_PDE = 1 << 16, - HWCAP_S390_SORT = 1 << 17, - HWCAP_S390_DFLT = 1 << 18, -+ HWCAP_S390_VXRS_PDE2 = 1 << 19, -+ HWCAP_S390_NNPA = 1 << 20, - }; - - #define HWCAP_IMPORTANT (HWCAP_S390_ZARCH | HWCAP_S390_LDISP \ -diff --git a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h -index 696616e77923f654..e9bd3684db862d1b 100644 ---- a/sysdeps/unix/sysv/linux/s390/bits/hwcap.h -+++ b/sysdeps/unix/sysv/linux/s390/bits/hwcap.h -@@ -46,3 +46,5 @@ - #define HWCAP_S390_VXRS_PDE 65536 - #define HWCAP_S390_SORT 131072 - #define HWCAP_S390_DFLT 262144 -+#define HWCAP_S390_VXRS_PDE2 524288 -+#define HWCAP_S390_NNPA 1048576 diff --git a/glibc-upstream-2.33-6.patch b/glibc-upstream-2.33-6.patch deleted file mode 100644 index 29b65b2..0000000 --- a/glibc-upstream-2.33-6.patch +++ /dev/null @@ -1,52 +0,0 @@ -commit 8d4241b8976273513e72cc1c5f6b1af3e11f0792 -Author: Florian Weimer -Date: Fri Feb 19 13:29:00 2021 +0100 - - string: Work around GCC PR 98512 in rawmemchr - - (cherry picked from commit 044e603b698093cf48f6e6229e0b66acf05227e4) - -diff --git a/string/rawmemchr.c b/string/rawmemchr.c -index 59bbeeaa42e51056..b8523118e5b3586e 100644 ---- a/string/rawmemchr.c -+++ b/string/rawmemchr.c -@@ -22,24 +22,28 @@ - # define RAWMEMCHR __rawmemchr - #endif - --/* Find the first occurrence of C in S. */ --void * --RAWMEMCHR (const void *s, int c) --{ -- DIAG_PUSH_NEEDS_COMMENT; -+/* The pragmata should be nested inside RAWMEMCHR below, but that -+ triggers GCC PR 98512. */ -+DIAG_PUSH_NEEDS_COMMENT; - #if __GNUC_PREREQ (7, 0) -- /* GCC 8 warns about the size passed to memchr being larger than -- PTRDIFF_MAX; the use of SIZE_MAX is deliberate here. */ -- DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-overflow="); -+/* GCC 8 warns about the size passed to memchr being larger than -+ PTRDIFF_MAX; the use of SIZE_MAX is deliberate here. */ -+DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-overflow="); - #endif - #if __GNUC_PREREQ (11, 0) -- /* Likewise GCC 11, with a different warning option. */ -- DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); -+/* Likewise GCC 11, with a different warning option. */ -+DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); - #endif -+ -+/* Find the first occurrence of C in S. */ -+void * -+RAWMEMCHR (const void *s, int c) -+{ - if (c != '\0') - return memchr (s, c, (size_t)-1); -- DIAG_POP_NEEDS_COMMENT; - return (char *)s + strlen (s); - } - libc_hidden_def (__rawmemchr) - weak_alias (__rawmemchr, rawmemchr) -+ -+DIAG_POP_NEEDS_COMMENT; diff --git a/glibc-upstream-2.33-7.patch b/glibc-upstream-2.33-7.patch deleted file mode 100644 index 990c6eb..0000000 --- a/glibc-upstream-2.33-7.patch +++ /dev/null @@ -1,580 +0,0 @@ -commit 33dc1dd602aecadf2fc5f322715e6f453dda40b5 -Author: Florian Weimer -Date: Tue Mar 2 15:46:42 2021 +0100 - - ld.so: Implement the --list-diagnostics option - - (cherry picked from commit 851f32cf7bf7067f73b991610778915edd57d7b4) - -diff --git a/elf/Makefile b/elf/Makefile -index 5d666b1b0c7ba82c..7610fa080f3f4738 100644 ---- a/elf/Makefile -+++ b/elf/Makefile -@@ -66,7 +66,7 @@ elide-routines.os = $(all-dl-routines) dl-support enbl-secure dl-origin \ - # interpreter and operating independent of libc. - rtld-routines = rtld $(all-dl-routines) dl-sysdep dl-environ dl-minimal \ - dl-error-minimal dl-conflict dl-hwcaps dl-hwcaps_split dl-hwcaps-subdirs \ -- dl-usage -+ dl-usage dl-diagnostics dl-diagnostics-kernel dl-diagnostics-cpu - all-rtld-routines = $(rtld-routines) $(sysdep-rtld-routines) - - CFLAGS-dl-runtime.c += -fexceptions -fasynchronous-unwind-tables -@@ -678,6 +678,9 @@ CFLAGS-cache.c += $(SYSCONF-FLAGS) - CFLAGS-rtld.c += $(SYSCONF-FLAGS) - CFLAGS-dl-usage.c += $(SYSCONF-FLAGS) \ - -D'RTLD="$(rtlddir)/$(rtld-installed-name)"' -+CFLAGS-dl-diagnostics.c += $(SYSCONF-FLAGS) \ -+ -D'PREFIX="$(prefix)"' \ -+ -D'RTLD="$(rtlddir)/$(rtld-installed-name)"' - - cpp-srcs-left := $(all-rtld-routines:=.os) - lib := rtld -diff --git a/elf/dl-diagnostics-cpu.c b/elf/dl-diagnostics-cpu.c -new file mode 100644 -index 0000000000000000..f7d149764bcb35a1 ---- /dev/null -+++ b/elf/dl-diagnostics-cpu.c -@@ -0,0 +1,24 @@ -+/* Print CPU diagnostics data in ld.so. Stub version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+ -+void -+_dl_diagnostics_cpu (void) -+{ -+} -diff --git a/elf/dl-diagnostics-kernel.c b/elf/dl-diagnostics-kernel.c -new file mode 100644 -index 0000000000000000..831c358f1463cbf4 ---- /dev/null -+++ b/elf/dl-diagnostics-kernel.c -@@ -0,0 +1,24 @@ -+/* Print kernel diagnostics data in ld.so. Stub version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+ -+void -+_dl_diagnostics_kernel (void) -+{ -+} -diff --git a/elf/dl-diagnostics.c b/elf/dl-diagnostics.c -new file mode 100644 -index 0000000000000000..bef224b36cbf5fc3 ---- /dev/null -+++ b/elf/dl-diagnostics.c -@@ -0,0 +1,265 @@ -+/* Print diagnostics data in ld.so. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include "trusted-dirs.h" -+#include "version.h" -+ -+/* Write CH to standard output. */ -+static void -+_dl_putc (char ch) -+{ -+ _dl_write (STDOUT_FILENO, &ch, 1); -+} -+ -+/* Print CH to standard output, quoting it if necessary. */ -+static void -+print_quoted_char (char ch) -+{ -+ if (ch < ' ' || ch > '~') -+ { -+ char buf[4]; -+ buf[0] = '\\'; -+ buf[1] = '0' + ((ch >> 6) & 7); -+ buf[2] = '0' + ((ch >> 6) & 7); -+ buf[3] = '0' + (ch & 7); -+ _dl_write (STDOUT_FILENO, buf, 4); -+ } -+ else -+ { -+ if (ch == '\\' || ch == '"') -+ _dl_putc ('\\'); -+ _dl_putc (ch); -+ } -+} -+ -+/* Print S of LEN bytes to standard output, quoting characters as -+ needed. */ -+static void -+print_string_length (const char *s, size_t len) -+{ -+ _dl_putc ('"'); -+ for (size_t i = 0; i < len; ++i) -+ print_quoted_char (s[i]); -+ _dl_putc ('"'); -+} -+ -+void -+_dl_diagnostics_print_string (const char *s) -+{ -+ if (s == NULL) -+ { -+ _dl_printf ("0x0"); -+ return; -+ } -+ -+ _dl_putc ('"'); -+ while (*s != '\0') -+ { -+ print_quoted_char (*s); -+ ++s; -+ } -+ _dl_putc ('"'); -+} -+ -+void -+_dl_diagnostics_print_labeled_string (const char *label, const char *s) -+{ -+ _dl_printf ("%s=", label); -+ _dl_diagnostics_print_string (s); -+ _dl_putc ('\n'); -+} -+ -+void -+_dl_diagnostics_print_labeled_value (const char *label, uint64_t value) -+{ -+ if (sizeof (value) == sizeof (unsigned long int)) -+ /* _dl_printf can print 64-bit values directly. */ -+ _dl_printf ("%s=0x%lx\n", label, (unsigned long int) value); -+ else -+ { -+ uint32_t high = value >> 32; -+ uint32_t low = value; -+ if (high == 0) -+ _dl_printf ("%s=0x%x\n", label, low); -+ else -+ _dl_printf ("%s=0x%x%08x\n", label, high, low); -+ } -+} -+ -+/* Return true if ENV is an unfiltered environment variable. */ -+static bool -+unfiltered_envvar (const char *env, size_t *name_length) -+{ -+ char *env_equal = strchr (env, '='); -+ if (env_equal == NULL) -+ { -+ /* Always dump malformed entries. */ -+ *name_length = strlen (env); -+ return true; -+ } -+ size_t envname_length = env_equal - env; -+ *name_length = envname_length; -+ -+ /* LC_ and LD_ variables. */ -+ if (env[0] == 'L' && (env[1] == 'C' || env[1] == 'D') -+ && env[2] == '_') -+ return true; -+ -+ /* MALLOC_ variables. */ -+ if (strncmp (env, "MALLOC_", strlen ("MALLOC_")) == 0) -+ return true; -+ -+ static const char unfiltered[] = -+ "DATEMSK\0" -+ "GCONV_PATH\0" -+ "GETCONF_DIR\0" -+ "GETCONF_DIR\0" -+ "GLIBC_TUNABLES\0" -+ "GMON_OUTPUT_PREFIX\0" -+ "HESIOD_CONFIG\0" -+ "HES_DOMAIN\0" -+ "HOSTALIASES\0" -+ "I18NPATH\0" -+ "IFS\0" -+ "LANG\0" -+ "LOCALDOMAIN\0" -+ "LOCPATH\0" -+ "MSGVERB\0" -+ "NIS_DEFAULTS\0" -+ "NIS_GROUP\0" -+ "NIS_PATH\0" -+ "NLSPATH\0" -+ "PATH\0" -+ "POSIXLY_CORRECT\0" -+ "RESOLV_HOST_CONF\0" -+ "RES_OPTIONS\0" -+ "SEV_LEVEL\0" -+ "TMPDIR\0" -+ "TZ\0" -+ "TZDIR\0" -+ /* Two null bytes at the end to mark the end of the list via an -+ empty substring. */ -+ ; -+ for (const char *candidate = unfiltered; *candidate != '\0'; ) -+ { -+ size_t candidate_length = strlen (candidate); -+ if (candidate_length == envname_length -+ && memcmp (candidate, env, candidate_length) == 0) -+ return true; -+ candidate += candidate_length + 1; -+ } -+ -+ return false; -+} -+ -+/* Dump the process environment. */ -+static void -+print_environ (char **environ) -+{ -+ unsigned int index = 0; -+ for (char **envp = environ; *envp != NULL; ++envp) -+ { -+ char *env = *envp; -+ size_t name_length; -+ bool unfiltered = unfiltered_envvar (env, &name_length); -+ _dl_printf ("env%s[0x%x]=", -+ unfiltered ? "" : "_filtered", index); -+ if (unfiltered) -+ _dl_diagnostics_print_string (env); -+ else -+ print_string_length (env, name_length); -+ _dl_putc ('\n'); -+ ++index; -+ } -+} -+ -+/* Print configured paths and the built-in search path. */ -+static void -+print_paths (void) -+{ -+ _dl_diagnostics_print_labeled_string ("path.prefix", PREFIX); -+ _dl_diagnostics_print_labeled_string ("path.rtld", RTLD); -+ _dl_diagnostics_print_labeled_string ("path.sysconfdir", SYSCONFDIR); -+ -+ unsigned int index = 0; -+ static const char *system_dirs = SYSTEM_DIRS "\0"; -+ for (const char *e = system_dirs; *e != '\0'; ) -+ { -+ size_t len = strlen (e); -+ _dl_printf ("path.system_dirs[0x%x]=", index); -+ print_string_length (e, len); -+ _dl_putc ('\n'); -+ ++index; -+ e += len + 1; -+ } -+} -+ -+/* Print information about the glibc version. */ -+static void -+print_version (void) -+{ -+ _dl_diagnostics_print_labeled_string ("version.release", RELEASE); -+ _dl_diagnostics_print_labeled_string ("version.version", VERSION); -+} -+ -+void -+_dl_print_diagnostics (char **environ) -+{ -+#ifdef HAVE_DL_DISCOVER_OSVERSION -+ _dl_diagnostics_print_labeled_value -+ ("dl_discover_osversion", _dl_discover_osversion ()); -+#endif -+ _dl_diagnostics_print_labeled_string ("dl_dst_lib", DL_DST_LIB); -+ _dl_diagnostics_print_labeled_value ("dl_hwcap", GLRO (dl_hwcap)); -+ _dl_diagnostics_print_labeled_value ("dl_hwcap_important", HWCAP_IMPORTANT); -+ _dl_diagnostics_print_labeled_value ("dl_hwcap2", GLRO (dl_hwcap2)); -+ _dl_diagnostics_print_labeled_string -+ ("dl_hwcaps_subdirs", _dl_hwcaps_subdirs); -+ _dl_diagnostics_print_labeled_value -+ ("dl_hwcaps_subdirs_active", _dl_hwcaps_subdirs_active ()); -+ _dl_diagnostics_print_labeled_value ("dl_osversion", GLRO (dl_osversion)); -+ _dl_diagnostics_print_labeled_value ("dl_pagesize", GLRO (dl_pagesize)); -+ _dl_diagnostics_print_labeled_string ("dl_platform", GLRO (dl_platform)); -+ _dl_diagnostics_print_labeled_string -+ ("dl_profile_output", GLRO (dl_profile_output)); -+ _dl_diagnostics_print_labeled_value -+ ("dl_string_platform", _dl_string_platform ( GLRO (dl_platform))); -+ -+ _dl_diagnostics_print_labeled_string ("dso.ld", LD_SO); -+ _dl_diagnostics_print_labeled_string ("dso.libc", LIBC_SO); -+ -+ print_environ (environ); -+ print_paths (); -+ print_version (); -+ -+ _dl_diagnostics_kernel (); -+ _dl_diagnostics_cpu (); -+ -+ _exit (EXIT_SUCCESS); -+} -diff --git a/elf/dl-diagnostics.h b/elf/dl-diagnostics.h -new file mode 100644 -index 0000000000000000..27dcb12bca12e5b6 ---- /dev/null -+++ b/elf/dl-diagnostics.h -@@ -0,0 +1,46 @@ -+/* Interfaces for printing diagnostics in ld.so. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _DL_DIAGNOSTICS_H -+#define _DL_DIAGNOSTICS_H -+ -+#include -+ -+/* Write the null-terminated string to standard output, surrounded in -+ quotation marks. */ -+void _dl_diagnostics_print_string (const char *s) attribute_hidden; -+ -+/* Like _dl_diagnostics_print_string, but add a LABEL= prefix, and a -+ newline character as a suffix. */ -+void _dl_diagnostics_print_labeled_string (const char *label, const char *s) -+ attribute_hidden; -+ -+/* Print LABEL=VALUE to standard output, followed by a newline -+ character. */ -+void _dl_diagnostics_print_labeled_value (const char *label, uint64_t value) -+ attribute_hidden; -+ -+/* Print diagnostics data for the kernel. Called from -+ _dl_print_diagnostics. */ -+void _dl_diagnostics_kernel (void) attribute_hidden; -+ -+/* Print diagnostics data for the CPU(s). Called from -+ _dl_print_diagnostics. */ -+void _dl_diagnostics_cpu (void) attribute_hidden; -+ -+#endif /* _DL_DIAGNOSTICS_H */ -diff --git a/elf/dl-main.h b/elf/dl-main.h -index 3a5e13c73923ad68..d3820e0063143878 100644 ---- a/elf/dl-main.h -+++ b/elf/dl-main.h -@@ -63,7 +63,7 @@ struct audit_list - enum rtld_mode - { - rtld_mode_normal, rtld_mode_list, rtld_mode_verify, rtld_mode_trace, -- rtld_mode_list_tunables, rtld_mode_help, -+ rtld_mode_list_tunables, rtld_mode_list_diagnostics, rtld_mode_help, - }; - - /* Aggregated state information extracted from environment variables -@@ -121,4 +121,7 @@ _Noreturn void _dl_version (void) attribute_hidden; - _Noreturn void _dl_help (const char *argv0, struct dl_main_state *state) - attribute_hidden; - -+/* Print a diagnostics dump. */ -+_Noreturn void _dl_print_diagnostics (char **environ) attribute_hidden; -+ - #endif /* _DL_MAIN */ -diff --git a/elf/dl-usage.c b/elf/dl-usage.c -index 6e26818bd753a09f..5ad3a72559c0fc28 100644 ---- a/elf/dl-usage.c -+++ b/elf/dl-usage.c -@@ -261,6 +261,7 @@ setting environment variables (which would be inherited by subprocesses).\n\ - --list-tunables list all tunables with minimum and maximum values\n" - #endif - "\ -+ --list-diagnostics list diagnostics information\n\ - --help display this help and exit\n\ - --version output version information and exit\n\ - \n\ -diff --git a/elf/rtld.c b/elf/rtld.c -index 596b6ac3d99d7d8e..94a00e204907bff7 100644 ---- a/elf/rtld.c -+++ b/elf/rtld.c -@@ -141,6 +141,7 @@ static void dl_main_state_init (struct dl_main_state *state); - /* Process all environments variables the dynamic linker must recognize. - Since all of them start with `LD_' we are a bit smarter while finding - all the entries. */ -+extern char **_environ attribute_hidden; - static void process_envvars (struct dl_main_state *state); - - #ifdef DL_ARGV_NOT_RELRO -@@ -1287,6 +1288,14 @@ dl_main (const ElfW(Phdr) *phdr, - ++_dl_argv; - } - #endif -+ else if (! strcmp (_dl_argv[1], "--list-diagnostics")) -+ { -+ state.mode = rtld_mode_list_diagnostics; -+ -+ ++_dl_skip_args; -+ --_dl_argc; -+ ++_dl_argv; -+ } - else if (strcmp (_dl_argv[1], "--help") == 0) - { - state.mode = rtld_mode_help; -@@ -1315,6 +1324,9 @@ dl_main (const ElfW(Phdr) *phdr, - } - #endif - -+ if (state.mode == rtld_mode_list_diagnostics) -+ _dl_print_diagnostics (_environ); -+ - /* If we have no further argument the program was called incorrectly. - Grant the user some education. */ - if (_dl_argc < 2) -@@ -2649,12 +2661,6 @@ a filename can be specified using the LD_DEBUG_OUTPUT environment variable.\n"); - } - } - --/* Process all environments variables the dynamic linker must recognize. -- Since all of them start with `LD_' we are a bit smarter while finding -- all the entries. */ --extern char **_environ attribute_hidden; -- -- - static void - process_envvars (struct dl_main_state *state) - { -diff --git a/sysdeps/unix/sysv/linux/dl-diagnostics-kernel.c b/sysdeps/unix/sysv/linux/dl-diagnostics-kernel.c -new file mode 100644 -index 0000000000000000..59f6402c547ba590 ---- /dev/null -+++ b/sysdeps/unix/sysv/linux/dl-diagnostics-kernel.c -@@ -0,0 +1,77 @@ -+/* Print kernel diagnostics data in ld.so. Linux version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+ -+/* Dump the auxiliary vector to standard output. */ -+static void -+print_auxv (void) -+{ -+ /* See _dl_show_auxv. The code below follows the general output -+ format for diagnostic dumps. */ -+ unsigned int index = 0; -+ for (ElfW(auxv_t) *av = GLRO(dl_auxv); av->a_type != AT_NULL; ++av) -+ { -+ _dl_printf ("auxv[0x%x].a_type=0x%lx\n" -+ "auxv[0x%x].a_val=", -+ index, (unsigned long int) av->a_type, index); -+ if (av->a_type == AT_EXECFN -+ || av->a_type == AT_PLATFORM -+ || av->a_type == AT_BASE_PLATFORM) -+ /* The address of the strings is not useful at all, so print -+ the strings themselvs. */ -+ _dl_diagnostics_print_string ((const char *) av->a_un.a_val); -+ else -+ _dl_printf ("0x%lx", (unsigned long int) av->a_un.a_val); -+ _dl_printf ("\n"); -+ ++index; -+ } -+} -+ -+/* Print one uname entry. */ -+static void -+print_utsname_entry (const char *field, const char *value) -+{ -+ _dl_printf ("uname."); -+ _dl_diagnostics_print_labeled_string (field, value); -+} -+ -+/* Print information from uname, including the kernel version. */ -+static void -+print_uname (void) -+{ -+ struct utsname uts; -+ if (__uname (&uts) == 0) -+ { -+ print_utsname_entry ("sysname", uts.sysname); -+ print_utsname_entry ("nodename", uts.nodename); -+ print_utsname_entry ("release", uts.release); -+ print_utsname_entry ("version", uts.version); -+ print_utsname_entry ("machine", uts.machine); -+ print_utsname_entry ("domainname", uts.domainname); -+ } -+} -+ -+void -+_dl_diagnostics_kernel (void) -+{ -+ print_auxv (); -+ print_uname (); -+} diff --git a/glibc-upstream-2.33-8.patch b/glibc-upstream-2.33-8.patch deleted file mode 100644 index 51054cb..0000000 --- a/glibc-upstream-2.33-8.patch +++ /dev/null @@ -1,113 +0,0 @@ -commit a1eb3915e781c5b9aed89931cbd536a186c15ed5 -Author: Florian Weimer -Date: Tue Mar 2 14:58:05 2021 +0100 - - x86: Automate generation of PREFERRED_FEATURE_INDEX_1 bitfield - - Use a .def file to define the bitfield layout, so that it is possible - to iterate over field members using the preprocessor. - - (cherry picked from commit e4933c8a92ea08eecdf3ab45e7f76c95dc3d20ac) - -diff --git a/sysdeps/x86/include/cpu-features-preferred_feature_index_1.def b/sysdeps/x86/include/cpu-features-preferred_feature_index_1.def -new file mode 100644 -index 0000000000000000..06af1a8dd5c6c2b4 ---- /dev/null -+++ b/sysdeps/x86/include/cpu-features-preferred_feature_index_1.def -@@ -0,0 +1,34 @@ -+/* Bits in the PREFERRED_FEATURE_INDEX_1 bitfield of . -+ Copyright (C) 2020-2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+BIT (Fast_Rep_String) -+BIT (Fast_Copy_Backward) -+BIT (Slow_BSF) -+BIT (Fast_Unaligned_Load) -+BIT (Prefer_PMINUB_for_stringop) -+BIT (Fast_Unaligned_Copy) -+BIT (I586) -+BIT (I686) -+BIT (Slow_SSE4_2) -+BIT (AVX_Fast_Unaligned_Load) -+BIT (Prefer_MAP_32BIT_EXEC) -+BIT (Prefer_No_VZEROUPPER) -+BIT (Prefer_ERMS) -+BIT (Prefer_No_AVX512) -+BIT (MathVec_Prefer_No_AVX512) -+BIT (Prefer_FSRM) -diff --git a/sysdeps/x86/include/cpu-features.h b/sysdeps/x86/include/cpu-features.h -index 624736b40ebb2cd6..e7f314657c8162da 100644 ---- a/sysdeps/x86/include/cpu-features.h -+++ b/sysdeps/x86/include/cpu-features.h -@@ -757,40 +757,23 @@ enum - #define reg_AESKLE ebx - #define reg_WIDE_KL ebx - --/* PREFERRED_FEATURE_INDEX_1. */ --#define bit_arch_I586 (1u << 0) --#define bit_arch_I686 (1u << 1) --#define bit_arch_Fast_Rep_String (1u << 2) --#define bit_arch_Fast_Copy_Backward (1u << 3) --#define bit_arch_Fast_Unaligned_Load (1u << 4) --#define bit_arch_Fast_Unaligned_Copy (1u << 5) --#define bit_arch_Slow_BSF (1u << 6) --#define bit_arch_Slow_SSE4_2 (1u << 7) --#define bit_arch_AVX_Fast_Unaligned_Load (1u << 8) --#define bit_arch_Prefer_MAP_32BIT_EXEC (1u << 9) --#define bit_arch_Prefer_PMINUB_for_stringop (1u << 10) --#define bit_arch_Prefer_No_VZEROUPPER (1u << 11) --#define bit_arch_Prefer_ERMS (1u << 12) --#define bit_arch_Prefer_FSRM (1u << 13) --#define bit_arch_Prefer_No_AVX512 (1u << 14) --#define bit_arch_MathVec_Prefer_No_AVX512 (1u << 15) -- --#define index_arch_Fast_Rep_String PREFERRED_FEATURE_INDEX_1 --#define index_arch_Fast_Copy_Backward PREFERRED_FEATURE_INDEX_1 --#define index_arch_Slow_BSF PREFERRED_FEATURE_INDEX_1 --#define index_arch_Fast_Unaligned_Load PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_PMINUB_for_stringop PREFERRED_FEATURE_INDEX_1 --#define index_arch_Fast_Unaligned_Copy PREFERRED_FEATURE_INDEX_1 --#define index_arch_I586 PREFERRED_FEATURE_INDEX_1 --#define index_arch_I686 PREFERRED_FEATURE_INDEX_1 --#define index_arch_Slow_SSE4_2 PREFERRED_FEATURE_INDEX_1 --#define index_arch_AVX_Fast_Unaligned_Load PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_MAP_32BIT_EXEC PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_No_VZEROUPPER PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_ERMS PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_No_AVX512 PREFERRED_FEATURE_INDEX_1 --#define index_arch_MathVec_Prefer_No_AVX512 PREFERRED_FEATURE_INDEX_1 --#define index_arch_Prefer_FSRM PREFERRED_FEATURE_INDEX_1 -+/* PREFERRED_FEATURE_INDEX_1. First define the bitindex values -+ sequentially, then define the bit_arch* and index_arch_* lookup -+ constants. */ -+enum -+ { -+#define BIT(x) _bitindex_arch_##x , -+#include "cpu-features-preferred_feature_index_1.def" -+#undef BIT -+ }; -+enum -+ { -+#define BIT(x) \ -+ bit_arch_##x = 1u << _bitindex_arch_##x , \ -+ index_arch_##x = PREFERRED_FEATURE_INDEX_1, -+#include "cpu-features-preferred_feature_index_1.def" -+#undef BIT -+ }; - - /* XCR0 Feature flags. */ - #define bit_XMM_state (1u << 1) diff --git a/glibc-upstream-2.33-9.patch b/glibc-upstream-2.33-9.patch deleted file mode 100644 index 73fa1d3..0000000 --- a/glibc-upstream-2.33-9.patch +++ /dev/null @@ -1,146 +0,0 @@ -commit 71b2463f6178a6097532dcfe8948bffbe2376dfb -Author: Florian Weimer -Date: Wed Feb 24 13:12:04 2021 +0100 - - x86: Add CPU-specific diagnostics to ld.so --list-diagnostics - - (cherry picked from commit 01a5746b6c8a44dc29d33e056b63485075a6a3cc) - - Adjusted to not print the rep_movsb_stop_threshold field, which - does not exist in glibc 2.33. - -diff --git a/sysdeps/x86/dl-diagnostics-cpu.c b/sysdeps/x86/dl-diagnostics-cpu.c -new file mode 100644 -index 0000000000000000..55c6f35c7cabb4da ---- /dev/null -+++ b/sysdeps/x86/dl-diagnostics-cpu.c -@@ -0,0 +1,116 @@ -+/* Print CPU diagnostics data in ld.so. x86 version. -+ Copyright (C) 2021 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+static void -+print_cpu_features_value (const char *label, uint64_t value) -+{ -+ _dl_printf ("x86.cpu_features."); -+ _dl_diagnostics_print_labeled_value (label, value); -+} -+ -+static void -+print_cpu_feature_internal (unsigned int index, const char *kind, -+ unsigned int reg, uint32_t value) -+{ -+ _dl_printf ("x86.cpu_features.features[0x%x].%s[0x%x]=0x%x\n", -+ index, kind, reg, value); -+} -+ -+static void -+print_cpu_feature_preferred (const char *label, unsigned int flag) -+{ -+ _dl_printf("x86.cpu_features.preferred.%s=0x%x\n", label, flag); -+} -+ -+void -+_dl_diagnostics_cpu (void) -+{ -+ const struct cpu_features *cpu_features = __get_cpu_features (); -+ -+ print_cpu_features_value ("basic.kind", cpu_features->basic.kind); -+ print_cpu_features_value ("basic.max_cpuid", cpu_features->basic.max_cpuid); -+ print_cpu_features_value ("basic.family", cpu_features->basic.family); -+ print_cpu_features_value ("basic.model", cpu_features->basic.model); -+ print_cpu_features_value ("basic.stepping", cpu_features->basic.stepping); -+ -+ for (unsigned int index = 0; index < CPUID_INDEX_MAX; ++index) -+ { -+ /* The index values are part of the ABI via -+ , so translating them to strings is not -+ necessary. */ -+ for (unsigned int reg = 0; reg < 4; ++reg) -+ print_cpu_feature_internal -+ (index, "cpuid", reg, -+ cpu_features->features[index].cpuid_array[reg]); -+ for (unsigned int reg = 0; reg < 4; ++reg) -+ print_cpu_feature_internal -+ (index, "usable", reg, -+ cpu_features->features[index].usable_array[reg]); -+ } -+ -+ /* The preferred indicators are not part of the ABI and need to be -+ translated. */ -+#define BIT(x) \ -+ print_cpu_feature_preferred (#x, CPU_FEATURE_PREFERRED_P (cpu_features, x)); -+#include "cpu-features-preferred_feature_index_1.def" -+#undef BIT -+ -+ print_cpu_features_value ("isa_1", cpu_features->isa_1); -+ print_cpu_features_value ("xsave_state_size", -+ cpu_features->xsave_state_size); -+ print_cpu_features_value ("xsave_state_full_size", -+ cpu_features->xsave_state_full_size); -+ print_cpu_features_value ("data_cache_size", cpu_features->data_cache_size); -+ print_cpu_features_value ("shared_cache_size", -+ cpu_features->shared_cache_size); -+ print_cpu_features_value ("non_temporal_threshold", -+ cpu_features->non_temporal_threshold); -+ print_cpu_features_value ("rep_movsb_threshold", -+ cpu_features->rep_movsb_threshold); -+ print_cpu_features_value ("rep_stosb_threshold", -+ cpu_features->rep_stosb_threshold); -+ print_cpu_features_value ("level1_icache_size", -+ cpu_features->level1_icache_size); -+ print_cpu_features_value ("level1_dcache_size", -+ cpu_features->level1_dcache_size); -+ print_cpu_features_value ("level1_dcache_assoc", -+ cpu_features->level1_dcache_assoc); -+ print_cpu_features_value ("level1_dcache_linesize", -+ cpu_features->level1_dcache_linesize); -+ print_cpu_features_value ("level2_cache_size", -+ cpu_features->level2_cache_size); -+ print_cpu_features_value ("level2_cache_assoc", -+ cpu_features->level2_cache_assoc); -+ print_cpu_features_value ("level2_cache_linesize", -+ cpu_features->level2_cache_linesize); -+ print_cpu_features_value ("level3_cache_size", -+ cpu_features->level3_cache_size); -+ print_cpu_features_value ("level3_cache_assoc", -+ cpu_features->level3_cache_assoc); -+ print_cpu_features_value ("level3_cache_linesize", -+ cpu_features->level3_cache_linesize); -+ print_cpu_features_value ("level4_cache_size", -+ cpu_features->level4_cache_size); -+ _Static_assert (offsetof (struct cpu_features, level4_cache_size) -+ + sizeof (cpu_features->level4_cache_size) -+ == sizeof (*cpu_features), -+ "last cpu_features field has been printed"); -+} -diff --git a/sysdeps/x86/include/cpu-features.h b/sysdeps/x86/include/cpu-features.h -index e7f314657c8162da..184dc93c699d9b91 100644 ---- a/sysdeps/x86/include/cpu-features.h -+++ b/sysdeps/x86/include/cpu-features.h -@@ -824,6 +824,8 @@ struct cpuid_feature_internal - }; - }; - -+/* NB: When adding new fields, update sysdeps/x86/dl-diagnostics-cpu.c -+ to print them. */ - struct cpu_features - { - struct cpu_features_basic basic; diff --git a/glibc.spec b/glibc.spec index dc5a5bf..9aaf429 100644 --- a/glibc.spec +++ b/glibc.spec @@ -1,5 +1,5 @@ -%define glibcsrcdir glibc-2.33 -%define glibcversion 2.33 +%define glibcsrcdir glibc-2.33.9000-728-gaa9a7f6296 +%define glibcversion 2.33.9000 # Pre-release tarballs are pulled in from git using a command that is # effectively: # @@ -27,7 +27,7 @@ %bcond_without benchtests # Default: Not bootstrapping. %bcond_with bootstrap -# Default: Treat warnings as errors. +# Default: Enable using -Werror %bcond_without werror # Default: Always build documentation. %bcond_without docs @@ -58,6 +58,14 @@ # Only some architectures have static PIE support. %define pie_arches %{ix86} x86_64 +# The annobin annotations cause binutils to produce broken ARM EABI +# unwinding information. Symptom is a hang/test failure for +# malloc/tst-malloc-stats-cancellation. See +# . +%ifarch armv7hl +%undefine _annotated_build +%endif + ############################################################################## # Any architecture/kernel combination that supports running 32-bit and 64-bit # code in userspace is considered a biarch arch. @@ -89,7 +97,7 @@ Summary: The GNU libc libraries Name: glibc Version: %{glibcversion} -Release: 14%{?dist} +Release: 24%{?dist} # In general, GPLv2+ is used by programs, LGPLv2+ is used for # libraries. @@ -133,27 +141,30 @@ Source12: ChangeLog.old # the definition of __debug_install_post. %{lua: local wrapper = rpm.expand("%{SOURCE10}") -local ldso = rpm.expand("%{glibc_sysroot}/%{_lib}/ld-%{VERSION}.so") +local sysroot = rpm.expand("%{glibc_sysroot}") local original = rpm.expand("%{macrobody:__debug_install_post}") -- Strip leading newline. It confuses the macro redefinition. -- Avoid embedded newlines that confuse the macro definition. original = original:match("^%s*(.-)%s*$"):gsub("\\\n", "") rpm.define("__debug_install_post bash " .. wrapper - .. " " .. ldso .. " " .. original) + .. " " .. sysroot .. " " .. original) } +# The wrapper script relies on the fact that debugedit does not change +# build IDs. +%define _no_recompute_build_ids 1 +%undefine _unique_build_ids + ############################################################################## # Patches: # - See each individual patch file for origin and upstream status. # - For new patches follow template.patch format. ############################################################################## Patch1: glibc-fedora-nscd.patch -Patch3: glibc-rh697421.patch Patch4: glibc-fedora-linux-tcsetattr.patch Patch6: glibc-fedora-localedef.patch Patch8: glibc-fedora-manual-dircategory.patch Patch9: glibc-rh827510.patch -Patch12: glibc-rh819430.patch Patch13: glibc-fedora-localedata-rh61908.patch Patch15: glibc-rh1070416.patch Patch16: glibc-nscd-sysconfig.patch @@ -163,50 +174,11 @@ Patch23: glibc-python3.patch Patch29: glibc-fedora-nsswitch.patch Patch30: glibc-deprecated-selinux-makedb.patch Patch31: glibc-deprecated-selinux-nscd.patch -Patch32: glibc-upstream-2.33-1.patch -Patch33: glibc-upstream-2.33-2.patch -Patch34: glibc-upstream-2.33-3.patch -Patch35: glibc-upstream-2.33-4.patch -Patch36: glibc-upstream-2.33-5.patch -Patch37: glibc-upstream-2.33-6.patch -Patch38: glibc-upstream-2.33-7.patch -Patch39: glibc-upstream-2.33-8.patch -Patch40: glibc-upstream-2.33-9.patch -Patch41: glibc-upstream-2.33-10.patch -Patch42: glibc-upstream-2.33-11.patch -Patch43: glibc-upstream-2.33-12.patch -Patch44: glibc-upstream-2.33-13.patch -Patch45: glibc-upstream-2.33-14.patch -Patch46: glibc-upstream-2.33-15.patch -Patch47: glibc-upstream-2.33-16.patch -Patch48: glibc-upstream-2.33-17.patch -Patch49: glibc-upstream-2.33-18.patch -Patch50: glibc-upstream-2.33-19.patch -Patch51: glibc-upstream-2.33-20.patch -Patch52: glibc-upstream-2.33-21.patch -Patch53: glibc-upstream-2.33-22.patch -Patch54: glibc-upstream-2.33-23.patch -Patch55: glibc-upstream-2.33-24.patch -Patch56: glibc-upstream-2.33-25.patch -Patch57: glibc-upstream-2.33-26.patch -Patch58: glibc-upstream-2.33-27.patch -Patch59: glibc-upstream-2.33-28.patch -Patch60: glibc-upstream-2.33-29.patch -Patch61: glibc-upstream-2.33-30.patch -Patch62: glibc-upstream-2.33-31.patch -Patch63: glibc-upstream-2.33-32.patch -Patch64: glibc-upstream-2.33-33.patch -Patch65: glibc-upstream-2.33-34.patch -Patch66: glibc-upstream-2.33-35.patch -Patch67: glibc-upstream-2.33-36.patch -Patch68: glibc-upstream-2.33-37.patch -Patch69: glibc-upstream-2.33-38.patch -Patch70: glibc-upstream-2.33-39.patch -Patch71: glibc-upstream-2.33-40.patch -Patch72: glibc-cpu-check-1.patch -Patch73: glibc-cpu-check-2.patch -Patch74: glibc-cpu-check-3.patch -Patch75: glibc-upstream-2.33-41.patch +Patch34: glibc-nosymlink-1.patch +Patch35: glibc-nosymlink-2.patch +Patch36: glibc-nosymlink-3.patch +Patch37: glibc-nosymlink-4.patch +Patch38: glibc-libthread_db-dynsym.patch ############################################################################## # Continued list of core "glibc" package information: @@ -331,6 +303,8 @@ BuildRequires: perl-interpreter Requires: glibc-langpack = %{version}-%{release} Suggests: glibc-minimal-langpack = %{version}-%{release} +Requires: glibc-gconv-extra%{_isa} = %{version}-%{release} + %description The glibc package contains standard libraries which are used by multiple programs on the system. In order to save disk space and @@ -866,6 +840,15 @@ This package ensures you can use C, POSIX, or C.UTF-8 locales, but nothing else. It is designed for assembling a minimal system. %files minimal-langpack +# Infrequently used iconv converter modules. +%package gconv-extra +Summary: All iconv converter modules for %{name}. +Requires: %{name} = %{version}-%{release} +Requires: %{name}-common = %{version}-%{release} + +%description gconv-extra +This package contains all iconv converter modules built in %{name}. + ############################################################################## # glibc "nscd" sub-package # @@ -1169,9 +1152,7 @@ build() --without-selinux \ %endif %ifarch aarch64 -%if 0%{?rhel} > 0 --enable-memory-tagging \ -%endif %endif --disable-crypt || { cat config.log; false; } @@ -1449,22 +1430,6 @@ mv -f %{glibc_sysroot}/%{_lib}/lib{pcprofile,memusage}.so \ # Strip all of the installed object files. strip -g %{glibc_sysroot}%{_libdir}/*.o -############################################################################### -# Rebuild libpthread.a using --whole-archive to ensure all of libpthread -# is included in a static link. This prevents any problems when linking -# statically, using parts of libpthread, and other necessary parts not -# being included. Upstream has decided that this is the wrong approach to -# this problem and that the full set of dependencies should be resolved -# such that static linking works and produces the most minimally sized -# static application possible. -############################################################################### -pushd %{glibc_sysroot}%{_prefix}/%{_lib}/ -$GCC -r -nostdlib -o libpthread.o -Wl,--whole-archive ./libpthread.a -rm libpthread.a -ar rcs libpthread.a libpthread.o -rm libpthread.o -popd - # The xtrace and memusage scripts have hard-coded paths that need to be # translated to a correct set of paths using the $LIB token which is # dynamically translated by ld.so as the default lib directory. @@ -1531,6 +1496,7 @@ touch master.filelist touch glibc.filelist touch common.filelist touch utils.filelist +touch gconv.filelist touch nscd.filelist touch devel.filelist touch doc.filelist @@ -1552,7 +1518,7 @@ touch compat-libpthread-nonshared.filelist find %{glibc_sysroot} \( -type f -o -type l \) \ \( \ -name etc -printf "%%%%config " -o \ - -name gconv-modules \ + -name gconv-modules* \ -printf "%%%%verify(not md5 size mtime) %%%%config(noreplace) " -o \ -name gconv-modules.cache \ -printf "%%%%verify(not md5 size mtime) " \ @@ -1606,6 +1572,7 @@ chmod 0444 master.filelist # - All the libnss files (we add back the ones we want later). # - All bench test binaries. # - The aux-cache, since it's handled specially in the files section. +# - Extra gconv modules. We add the required modules later. cat master.filelist \ | grep -v \ -e '%{_infodir}' \ @@ -1614,6 +1581,8 @@ cat master.filelist \ -e '%{_libdir}/lib.*\.a' \ -e '%{_libdir}/.*\.o' \ -e '%{_libdir}/lib.*\.so' \ + -e '%{_libdir}/gconv/.*\.so$' \ + -e '%{_libdir}/gconv/gconv-modules.d/gconv-modules-extra\.conf$' \ -e 'nscd' \ -e '%{_prefix}/bin' \ -e '%{_prefix}/lib/locale' \ @@ -1637,13 +1606,45 @@ for module in compat files dns; do done grep -e "libmemusage.so" -e "libpcprofile.so" master.filelist >> glibc.filelist +############################################################################### +# glibc-gconv-extra +############################################################################### + +grep -e "gconv-modules-extra.conf" master.filelist > gconv.filelist + +# Put the essential gconv modules into the main package. +GconvBaseModules="ANSI_X3.110 ISO8859-15 ISO8859-1 CP1252" +GconvBaseModules="$GconvBaseModules UNICODE UTF-16 UTF-32 UTF-7" +%ifarch s390 s390x +GconvBaseModules="$GconvBaseModules ISO-8859-1_CP037_Z900 UTF8_UTF16_Z9" +GconvBaseModules="$GconvBaseModules UTF16_UTF32_Z9 UTF8_UTF32_Z9" +%endif +GconvAllModules=$(cat master.filelist | + sed -n 's|%{_libdir}/gconv/\(.*\)\.so|\1|p') + +# Put the base modules into glibc and the rest into glibc-gconv-extra +for conv in $GconvAllModules; do + if echo $GconvBaseModules | grep -q $conv; then + grep -E -e "%{_libdir}/gconv/$conv.so$" \ + master.filelist >> glibc.filelist + else + grep -E -e "%{_libdir}/gconv/$conv.so$" \ + master.filelist >> gconv.filelist + fi +done + ############################################################################### # glibc-devel ############################################################################### -# Put some static files into the devel package. +# Static libraries that land in glibc-devel, not glibc-static. +devel_static_library_pattern='/lib\(\(c\|nldbl\|mvec\)_nonshared\|g\|ieee\|mcheck\|pthread\|dl\)\.a$' +# Static libraries neither in glibc-devel nor in glibc-static. +other_static_library_pattern='/libpthread_nonshared\.a' + grep '%{_libdir}/lib.*\.a' master.filelist \ - | grep '/lib\(\(c\|pthread\|nldbl\|mvec\)_nonshared\|g\|ieee\|mcheck\)\.a$' \ + | grep "$devel_static_library_pattern" \ + | grep -v "$other_static_library_pattern" \ > devel.filelist # Put all of the object files and *.so (not the versioned ones) into the @@ -1696,7 +1697,8 @@ grep '%{_prefix}/include' < master.filelist >> devel.filelist # Put the rest of the static files into the static package. grep '%{_libdir}/lib.*\.a' < master.filelist \ - | grep -v '/lib\(\(c\|pthread\|nldbl\|mvec\)_nonshared\|g\|ieee\|mcheck\)\.a$' \ + | grep -v "$devel_static_library_pattern" \ + | grep -v "$other_static_library_pattern" \ > static.filelist ############################################################################### @@ -1757,7 +1759,7 @@ EOF # Move the NSS-related files to the NSS subpackages. Be careful not # to pick up .debug files, and the -devel symbolic links. for module in db hesiod; do - grep -E "/libnss_$module(\.so\.[0-9.]+|-[0-9.]+\.so)$" \ + grep -E "/libnss_$module\\.so\\.[0-9.]+\$" \ master.filelist > nss_$module.filelist done grep -E "%{_prefix}/bin/makedb$" master.filelist >> nss_db.filelist @@ -1775,7 +1777,7 @@ grep '/libnss_[a-z]*\.so$' master.filelist > nss-devel.filelist ############################################################################### # Prepare the libnsl-related file lists. -grep '/libnsl-[0-9.]*.so$' master.filelist > libnsl.filelist +grep -E '/libnsl\.so\.[0-9]+$' master.filelist > libnsl.filelist test $(wc -l < libnsl.filelist) -eq 1 %if %{with benchtests} @@ -1868,8 +1870,10 @@ echo ====================PLT RELOCS END================== # Obtain a way to run the dynamic loader. Avoid matching the symbolic # link and then pick the first loader (although there should be only -# one). -run_ldso="$(find %{glibc_sysroot}/%{_lib}/ld-*.so -type f | LC_ALL=C sort | head -n1) --library-path %{glibc_sysroot}/%{_lib}" +# one). See wrap-find-debuginfo.sh. +ldso_path="$(find %{glibc_sysroot}/ -regextype posix-extended \ + -regex '.*/ld(-.*|64|)\.so\.[0-9]+$' -type f | LC_ALL=C sort | head -n1)" +run_ldso="$ldso_path --library-path %{glibc_sysroot}/%{_lib}" # Show the auxiliary vector as seen by the new library # (even if we do not perform the valgrind test). @@ -1935,12 +1939,17 @@ install_libs = { "anl", "BrokenLocale", "c", "dl", "m", "mvec", -- We are going to remove these libraries. Generally speaking we remove -- all core libraries in the multilib directory. --- We employ a tight match where X.Y is in [2.0,9.9*], so we would +-- For the versioned install names, the version are [2.0,9.9*], so we -- match "libc-2.0.so" and so on up to "libc-9.9*". +-- For the unversioned install names, we match the library plus ".so." +-- followed by digests. remove_regexps = {} for i = 1, #install_libs do + -- Versioned install name. remove_regexps[i] = ("lib" .. install_libs[i] .. "%%-[2-9]%%.[0-9]+%%.so$") + -- Unversioned install name. + remove_regexps[i] = ("lib" .. install_libs[i] .. "%%.so%.[0-9]+$") end -- Two exceptions: @@ -2062,6 +2071,16 @@ if posix.access(save_path) then posix.unlink(save_path) end +%post gconv-extra +iconv_dir=%{_libdir}/gconv +%{_prefix}/sbin/iconvconfig -o "$iconv_dir/gconv-modules.cache" --nostdlib \ + $iconv_dir + +%postun gconv-extra +iconv_dir=%{_libdir}/gconv +%{_prefix}/sbin/iconvconfig -o "$iconv_dir/gconv-modules.cache" --nostdlib \ + $iconv_dir + %pre -n nscd getent group nscd >/dev/null || /usr/sbin/groupadd -g 28 -r nscd getent passwd nscd >/dev/null || @@ -2126,6 +2145,8 @@ fi %files -f utils.filelist utils +%files -f gconv.filelist gconv-extra + %files -f nscd.filelist -n nscd %config(noreplace) /etc/nscd.conf %dir %attr(0755,root,root) /var/run/nscd @@ -2161,99 +2182,2526 @@ fi %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %changelog -* Tue May 25 2021 Florian Weimer - 2.33-14 -- Import commit 0ef0e6de7fdfa18328b09ba2afb4f0112d4bdab4 from the - glibc 2.33 branch: -- ppc64le: scv ABI error handling fails to check IS_ERR_VALUE (#1963901) +* Tue Jun 22 2021 Siddhesh Poyarekar - 2.33.9000-24 +- Strengthen dependency on glibc-gconv-extra. -* Fri May 21 2021 Florian Weimer - 2.33-13 -- Switch back to a unified glibc-headers package (#1940686) +* Fri Jun 18 2021 Florian Weimer - 2.33.9000-23 +- Make glibc-all-langpacks require glibc-gconv-extra in buildroots (#1973663) -* Fri May 21 2021 Florian Weimer - 2.33-12 -- aarch64: Enable optional memory tagging support (#1948645) +* Thu Jun 17 2021 Florian Weimer - 2.33.9000-22 +- Export libthread_db symbols under GLBIC_PRIVATE (#1965374) -* Fri May 7 2021 Florian Weimer - 2.33-11 -- Sync with Fedora f34 branch, commit 4f55bd2df5c705c99f21. -- This removes the forced setting of the z14/POWER9 baselines, - switching back to redhat-rpm-config flags. -- s390x: Adjust z14 check to proposed upstream approach (#1945473) -- ppc64le: Implement preliminary check for POWER9 support (#1945472) -- Use distribution mechanism for debuginfo (#1915330) -- Switch back to parallel locale generation during build -- Upstream patches from the 2.33 stable release branch, up to commit - 3f5080aedd164c1f92a53552dd3e0b82ac6d2bd3: -- S390: Also check vector support in memmove ifunc-selector [BZ #27511] -- malloc: Fix a realloc crash with heap tagging [BZ 27468] -- Update Nios II libm-test-ulps. -- tst: Provide test for select -- misc: Fix tst-select timeout handling (BZ#27648) -- libsupport: Add support_select_modifies_timeout -- libsupport: Add support_select_normalizes_timeout -- linux: Normalize and return timeout on select (BZ #27651) -- linux: always update select timeout (BZ #27706) -- tunables: Fix comparison of tunable values -- support: Typo and formatting fixes -- support: Pass environ to child process -- support: Add capability to fork an sgid child -- tst-env-setuid: Use support_capture_subprogram_self_sgid -- Enhance setuid-tunables test -- Fix SXID_ERASE behavior in setuid programs (BZ #27471) -- Remove PR_TAGGED_ADDR_ENABLE from sys/prctl.h -- x86: tst-cpu-features-supports.c: Update AMX check -- nptl_db: Support different libpthread/ld.so load orders (bug 27744) -- nptl: Check for compatible GDB in nptl/tst-pthread-gdb-attach -- nptl: Do not build nptl/tst-pthread-gdb-attach as PIE +* Thu Jun 17 2021 Florian Weimer - 2.33.9000-21 +- Redo the crafted libc.so.6 symbol table for valgrind (#1965374) -* Thu Apr 15 2021 Mohan Boddu - 2.33-10 -- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 +* Thu Jun 17 2021 Florian Weimer - 2.33.9000-20 +- Remove .symtab from libc.so.6 again (#1965374) -* Fri Apr 9 2021 Florian Weimer - 2.33-9 -- ppc64le, s390x: Enforce POWER9 and z14 baseline (#1876584, #1876479) +* Thu Jun 17 2021 Florian Weimer - 2.33.9000-19 +- Drop glibc-rh697421.patch: The ISO-10646-UCS-2// alias for UTF-8 is incorrect + (#1972520) -* Fri Apr 9 2021 Florian Weimer - 2.33-8 -- s390x: Implement preliminary check for z14 support (#1945473) +* Wed Jun 16 2021 Florian Weimer - 2.33.9000-18 +- Rebuild against rawhide gcc -* Fri Apr 9 2021 Florian Weimer - 2.33-7 -- Inherit additional build flags from redhat-rpm-config (#1947895) +* Tue Jun 15 2021 Florian Weimer - 2.33.9000-17 +- Dropped glibc-gconv-modules-revert.patch, applied upstream. +- Auto-sync with upstream branch master, + 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 -* Wed Apr 7 2021 Florian Weimer - 2.33-6 -- Remove power9 multilib (#1889978) +* Tue Jun 15 2021 Florian Weimer - 2.33.9000-16 +- Preserve some symbols in libc.so.6's symtab (#1965374) -* Tue Mar 16 2021 Florian Weimer - 2.33-5 -- Import patches from the upstream glibc 2.33 branch, up to commit - db32fc27e7bdfb5468200a94e9152bcc1c971d25: -- test-container: Always copy test-specific support files [BZ #27537] -- nptl: Remove private futex optimization [BZ #27304] -- pthread_once hangs when init routine throws an exception [BZ #18435] -- elf: ld.so --help calls _dl_init_paths without a main map (#1609351) -- elf: Always set l in _dl_init_paths (bug 23462) -- x86: Handle _SC_LEVEL1_ICACHE_LINESIZE [BZ #27444] -- io: Return EBAFD for negative file descriptor on fstat (BZ #27559) -- nscd: Fix double free in netgroupcache [BZ #27462] -- x86: Set minimum x86-64 level marker [BZ #27318] +* Tue Jun 15 2021 Florian Weimer - 2.33.9000-15 +- Install shared objects under their ABI names, avoiding symlinks (#1652867) -* Thu Mar 4 2021 Florian Weimer - 2.33-4 -- Import patch from the upstream glibc 2.33 branch, up to commit - 3e880d733753183696d1a81c34caef3a9add2b0c. -- nss: Re-enable NSS module loading after chroot [BZ #27389] +* Mon Jun 14 2021 Siddhesh Poyarekar - 2.33.9000-14 +- Add a conditional dependency for glibc-gconv-extra.i686 in x86_64. -* Tue Mar 2 2021 Florian Weimer - 2.33-3 -- Import patches from the upstream glibc 2.33 branch, up to commit - 71b2463f6178a6097532dcfe8948bffbe2376dfb. +* Mon Jun 14 2021 Siddhesh Poyarekar - 2.33.9000-13 +- Auto-sync with upstream branch master, + commit ebae2f5a6f971a8f0b6c99e00f9c45ef7433924a. +- Revert gconv configuration file name to gconv-modules. + +* Thu Jun 03 2021 Florian Weimer - 2.33.9000-12 +- libdl is no longer a separate shared object. +- CVE-2021-33574: Use-after-free via mq_notify (#1965410) +- Auto-sync with upstream branch master, + commit 466c1ea15f461edb8e3ffaf5d86d708876343bbf: +- dlfcn: Rework static dlopen hooks +- dlfcn: Eliminate GLIBC_PRIVATE dependency from tststatic2 +- dlfcn: Cleanups after -ldl is no longer required +- dlfcn: Move dlopen into libc +- dlfcn: Move dlvsym into libc +- dlfcn: Move dlinfo into libc +- dlfcn: Move dladdr1 into libc +- dlfcn: Move dlmopen into libc +- dlfcn: Move dlsym into libc +- dlfcn: Move dladdr into libc +- dlfcn: Move dlclose into libc +- Improve test coverage of strlen function +- fix typo +- dlfcn: Move dlerror into libc +- Add libc ABI extension kludge for baseline-violating libdl symbols +- scripts/versions.awk: Add local: * to all version nodes +- Add missing symbols to Version files +- Fix use of __pthread_attr_copy in mq_notify (bug 27896) +- Use __pthread_attr_copy in mq_notify (bug 27896) +- Update floating-point feature test macro handling for C2X +- stdio-common: Remove _IO_vfwscanf +- aarch64: align stack in clone [BZ #27939] +- powerpc: Optimized memcmp for power10 +- x86-64: Align child stack to 16 bytes [BZ #27902] + +* Mon May 31 2021 Florian Weimer - 2.33.9000-11 +- glibc-sigsetxid-sa_onstack.patch was applied upstream +- Auto-sync with upstream branch master, + commit 271ec55d0ae795f03d92e3aa61bff69a31a19e3a: +- support: Do not build xpthread_attr_setaffinity_np for hurd +- nptl: Add pthread_attr_setaffinity_np failure test +- support: Add xpthread_attr_setaffinity_np wrapper +- nptl: Move createthread to pthread_create +- nptl: Move Linux createthread to nptl +- nptl: Install SIGSETXID handler with SA_ONSTACK [BZ #27914] +- aarch64: Added optimized memset for A64FX +- aarch64: Added optimized memcpy and memmove for A64FX +- benchtests: Fixed bench-memcpy-random: buf1: mprotect failed +- aarch64: Added Vector Length Set test helper script +- aarch64: define BTI_C and BTI_J macros as NOP unless HAVE_AARCH64_BTI +- config: Added HAVE_AARCH64_SVE_ASM for aarch64 +- tst-mallinfo2.c: Use correct multiple for total variable + +* Wed May 26 2021 Florian Weimer - 2.33.9000-10 +- nptl: Install SIGSETXID handler with SA_ONSTACK [BZ #27914] + +* Tue May 25 2021 Florian Weimer - 2.33.9000-9 +- Auto-sync with upstream branch master, + 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) + +* Fri May 21 2021 Florian Weimer - 2.33.9000-8 +- Switch back to a unified glibc-headers package for downstream (#1940686) + +* Fri May 21 2021 Florian Weimer - 2.33.9000-7 +- aarch64: Enable optional memory tagging support + +* Tue May 11 2021 Florian Weimer - 2.33.9000-6 +- Use distribution mechanism for debuginfo (#1661510, #1886295, #1905611) + +* Thu May 6 2021 Florian Weimer - 2.33.9000-5 +- Build locales in parallel again + +* Tue May 4 2021 Florian Weimer - 2.33.9000-4 +- Various changes to get glibc building again, using selected upstream + backports. +- Re-enable -Werror by default. +- This release introduces __libc_start_main@@GLIBC_2.34, so binaries + are not compatible with glibc 2.33. Building binaries against this + glibc version is not recommended because of the partial libpthread + transition. +- glibc-upstream-amx-detection.patch: Fix build failure after GCC 11.1 update. +- glibc-upstream-malloc-test-hang.patch: Avoid test hang due to + annobin/binutils bug (#1951492) + +* Wed Mar 03 2021 Arjun Shankar - 2.33.9000-3 +- Drop glibc-rh819430.patch; fixed upstream. +- Auto-sync with upstream branch master, + commit f01a61e13872109b3b233158ab664364bd1879bc: +- i386: Regenerate ulps - x86: Add CPU-specific diagnostics to ld.so --list-diagnostics - x86: Automate generation of PREFERRED_FEATURE_INDEX_1 bitfield - ld.so: Implement the --list-diagnostics option +- powerpc: Update libm-test-ulps +- tst: Add test for utimes +- tst: Add test for utime +- tst: Add test for futimens +- nptl: __libc_cleanup_push/__libc_cleanup_pop require -fexceptions +- elf: Build __dl_iterate_phdr with unwinding support [BZ #27498] +- nptl: Use for accessing the libgcc_s unwinder +- Implement _Unwind_Resume in libc on top of +- Move sysdeps/gnu/unwind-resume.c to sysdeps/generic/unwind-resume.c +- __frame_state_for: Use for unwinder access +- sparc: Implement backtrace on top +- m68k: Implement backtrace on top of +- i386: Implement backtrace on top of +- arm: Implement backtrace on top of +- backtrace: Implement on top of +- Implement for dynamically loading the libgcc_s unwinder +- Correct buffer end pointer in IO_wdefault_doallocate (BZ #26874) +- aarch64: update ulps. +- Add inputs that generate larger error bounds +- Reduce the statically linked startup code [BZ #23323] +- posix: Falling back to non wide mode in case of encoding error [BZ #14185] +- nptl: Move elision implementations into libc +- NEWS: Add missing bug closures +- added rt to malloc/Depend [BZ #27132] +- x86: Use x86/nptl/pthreaddef.h +- nptl: Move futex-internal into libc +- nptl: Move lowlevellock into libc [BZ #15648] +- nptl: Move futex-internal.c into main nptl directory +- nptl: Reformat Versions +- nptl: Split libpthread-routines into one routine per line +- x86: Remove unused variables for raw cache sizes from cacheinfo.h +- Use Linux 5.11 in build-many-glibcs.py. +- : Correct x86_cpu_TBM +- x86_64/clone.S: Upate comments +- i386/clone.S: Remove redundant EBX load +- aarch64: Remove the unused __read_tp symbol +- build-many-glibcs.py: Use make -O for more consistent log output -* Fri Feb 19 2021 Florian Weimer - 2.33-2 -- Re-enable -Werror; GCC PR 98512 workaround applied upstream -- Import patches from the upstream glibc 2.33 branch, up to commit - 8d4241b8976273513e72cc1c5f6b1af3e11f0792. +* Sun Feb 21 2021 Carlos O'Donell - 2.33.9000-2 +- Auto-sync with upstream branch master, + commit e9e7f24543e6d1b0a31641f144697e261df6ccd7: +- configure: Replace obsolete AC_TRY_LINK with AC_LINK_IFELSE +- configure: Remove obsolete AC_CHECK_TOOL_PREFIX +- configure: Replace obsoleted AC_HELP_STRING with AS_HELP_STRING +- Update syscall lists for Linux 5.11. +- Correct hppa EFD_NONBLOCK, IN_NONBLOCK, SFD_NONBLOCK and TFD_NONBLOCK defines. - string: Work around GCC PR 98512 in rawmemchr +- tst: time: Provide Y2038 tests for mktime (tst-mktime4.c) +- tst: Provide test for difftime +- tst: Provide test for ctime +- tst: Provide test for sched_rr_get_interval - S390: Add new hwcap values. +- aarch64: Fix sys/ptrace.h if linux headers are included +- elf: Do not copy vDSO soname when setting up link map +- x86: Remove the extra space between "# endif" +- hurd: Fix fstatfs build failure +- linux: Remove stat-check.c +- linux: Remove overflow.h +- linux: Consolidate internal_statvfs +- linux: Consolidate statvfs implementations +- linux: Consolidate fstatvfs implementations +- linux: Consolidate statfs implementations +- linux: Consolidate fstatfs implementations +- linux: Set LFS statfs as default +- linux: Set default kernel_stat.h to LFS +- linux: Fix STATFS_IS_STATFS64 definition + +* Fri Feb 12 2021 Florian Weimer - 2.33.9000-1 +- Auto-sync with upstream branch master, + commit 228f30ab4724d4087d5f52018873fde22efea6e2: - tunables: Disallow negative values for some tunables - x86: Use SIZE_MAX instead of (long int)-1 for tunable range value - tunables: Simplify TUNABLE_SET interface +- setrlimit/getrlimit: Use __nonnull to avoid null pointer +- benchtests: Updated json bench-variant attribute +- regex: stop using alloca +- regexec: remove alloca usage in build_trtable +- regex: remove alloca usage on regex set_regs +- malloc: Sync dynarray with gnulib +- misc: Sync cdefs.h with gnulib +- linux: Fix __sem_check_add_mapping search_sem +- linux: Fix __sem_check_add_mapping name length +- Add more ptrace constants for AArch64 and PowerPC. +- strchr: Add additional benchmarks and tests +- x86-64: Refactor and improve performance of strchr-avx2.S +- pthread: Remove alloca usage from __sem_check_add_mapping +- pthread: Refactor semaphore code +- linux: Require /dev/shm as the shared memory file system +- sunrpc: Fix typo in xdr_string comment +- tst: Provide test for ppoll +- tst: Provide test for timerfd related functions +- x86: Add PTWRITE feature detection [BZ #27346] - nsswitch: return result when nss database is locked [BZ #27343] +- printf: Add smoke tests for long double +- Add NT_ARM_TAGGED_ADDR_CTRL from Linux 5.10 to elf.h. +- argp: Avoid undefined behaviour when invoking qsort(). +- argp: Improve comments. +- argp: Don't pass invalid arguments to isspace, isalnum, isalpha, isdigit. +- argp: Don't rely on undefined behaviour of _tolower(). +- argp: fix pointer-subtraction bug +- Use binutils 2.36 branch in build-many-glibcs.py. +- manual: Correct description of ENTRY [BZ #17183] +- nptl: Remove private futex optimization [BZ #27304] +- stdio-common: Add a few double formatting tests [BZ #27245] +- posix/tst-rfc3484: Fix compile failure linking to local __stat64 +- i686: Regenerate ULPs +- tst-rtld-list-tunables.sh: Unset glibc tunables +- linux: Remove shmmax check from tst-sysvshm-linux +- x86: Adding an upper bound for Enhanced REP MOVSB. +- Fix version.h for glibc 2.34 development +- Add MS_NOSYMFOLLOW from Linux 5.10 to . +- Move _SC_MINSIGSTKSZ/_SC_SIGSTKSZ entry in NEWS +- libSegFault: Fix printing signal number [BZ #27249] +- hurd TIOCFLUSH: fix fixing argument +- sysconf: Add _SC_MINSIGSTKSZ/_SC_SIGSTKSZ [BZ #20305] +- hurd TIOCFLUSH: Cope BSD 4.1 semantic +- tst-mallinfo2.c: Remove useless trailing semicolon for macro +- elf: Replace a --defsym trick with an object file to be compatible with LLD +- Open master branch for glibc 2.34 development +- Prepare for glibc 2.33 release +- Update NEWS with bugs +- Update translations +- NEWS: Fix typo in CVE-2021-3326 entry +- elf: Fix tests that rely on ld.so.cache for cross-compiling +- NEWS: Mention CVE-2021-3326 (iconv assertion with ISO-20220-JP-3) +- NEWS: Add entry for glibc-hwcaps and deprecate legacy hwcaps +- x86: Properly set usable CET feature bits [BZ #26625] +- Update translations +- Update libc.pot for 2.33 release +- Update ia64 libm-test-ulps +- sh: Update libm-tests-ulps +- ia64: Fix brk call on statup +- Update sparc libm-test-ulps +- Update alpha libm-test-ulps +- powerpc64: Workaround sigtramp vdso return call +- Fix nss/tst-reload2 for systems without PATH_MAX +- nsswitch: do not reload if "/" changes +- elf: Limit tst-prelink-cmp target archs +- CVE-2021-3326: gconv: Fix assertion failure in ISO-2022-JP-3 module (#1921917) -* Mon Feb 15 2021 Florian Weimer - 2.33-1 -- Switch to glibc 2.33 upstream release tarball +* Wed Jan 27 2021 Arjun Shankar - 2.32.9000-29 +- Auto-sync with upstream branch master, + commit df359a25ba6f6bda06104229fbfe284c1fb30915: +- Revert "Make libc symbols hidden in static PIE" [BZ #27237] +- benchtests: Do not build bench-timing-type with MODULE_NAME=libc +- aarch64: Fix the list of tested IFUNC variants [BZ #26818] +- Update INSTALL with package versions that are known to work +- aarch64: Move and update the definition of MTE_ENABLED +- Fix misplaced const +- Update C-SKY libm-test-ulps +- manual: Correct argument order in mount examples [BZ #27207] +- linux: mips: Fix getdents64 fallback on mips64-n32 +- x86: Properly match CPU features in /proc/cpuinfo [BZ #27222] +- x86-64: Update tst-glibc-hwcaps-2.c for x86-64 baseline +- powerpc64: Select POWER9 machine for the scv instruction +- x86: Check ifunc resolver with CPU_FEATURE_USABLE [BZ #27072] +- Revert "linux: Move {f}xstat{at} to compat symbols" for static build +- aarch64: revert memcpy optimze for kunpeng to avoid performance degradation +- Make libc symbols hidden in static PIE +- csu: Move static pie self relocation later [BZ #27072] +- Use hidden visibility for early static PIE code +- csu: Avoid weak ref for __ehdr_start in static PIE +- configure: Check for static PIE support +- elf: Avoid RELATIVE relocs in __tunables_init +- elf: Make the tunable struct definition internal only +- : Remove the C preprocessor magic +- posix: Fix fnmatch.c on bootstrap +- stdlib: Add testcase for BZ #26241 +- posix: Fix regex_internal.h on bootstrap +- Use in __libc_init_secure +- elf: Avoid RELATIVE relocation for _dl_sysinfo +- libmvec: Add extra-test-objs to test-extras +- Hurd: Add rtld-strncpy-c.c +- Update MIPS libm-test-ulps. +- Update arm libm-test-ulps. +- Update powerpc-nofpu libm-test-ulps. +- Update hppa libm-test-ulps +- ARC: nofpu: Regenerate ulps +- ld.so: Add --list-tunables to print tunable values +- math/test-tgmath2: Fix fabs failure when no long double +- x86: Move x86 processor cache info to cpu_features +- Fix x86 build with --enable-tunable=no +- ifuncmain6pie: Remove the circular IFUNC dependency [BZ #20019] + +* Tue Jan 26 2021 Fedora Release Engineering - 2.32.9000-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Jan 23 2021 Arjun Shankar - 2.32.9000-27 +- Introduce new glibc-doc.noarch subpackage (#1346925) +- Move the reference manual info pages from glibc-devel to glibc-doc +- Move debugger interface documentation from glibc to glibc-doc +- Remove unnecessary README, INSTALL, NEWS files from glibc +- Remove unnecessary README.timezone and gai.conf files from glibc-common + +* Thu Jan 14 2021 Arjun Shankar - 2.32.9000-26 +- Deprecate nscd (#1905135) +- https://fedoraproject.org/wiki/Changes/DeprecateNSCD + +* Wed Jan 13 2021 Carlos O'Donell - 2.32.9000-25 +- Auto-sync with upstream branch master, + commit cf1290064598def8dfeddec3d86d98495aee1fba: +- Use the right argument code in unnormal tests +- ldconfig/x86: Store ISA level in cache and aux cache +- elf: work around a gcc bug in elf_get_dynamic_info +- x86: Set header.feature_1 in TCB for always-on CET [BZ #27177] +- posix: consume less entropy on tempname +- Makerules: Do not require startup files for format.lds probe object +- install: Replace scripts/output-format.sed with objdump -f [BZ #26559] +- math: Add BZ#18980 fix back on dbl-64 cosh +- posix: Sync tempname with gnulib [BZ #26648] +- posix: Fix return value of system if shell can not be executed [BZ #27053] +- support: Add xchmod wrapper +- Update STATX_ATTR_DAX value from Linux 5.10. +- riscv: Initialize $gp before resolving the IRELATIVE relocation +- riscv: support GNU indirect function +- posix: Correct attribute access mode on readlinkat [BZ #27024]. +- Add xfchmod to libsupport +- Add xchdir to libsupport. +- POSIX locale: Fix typo in comment +- ARC: Regenerate ulps +- mntent: Use __putc_unlocked instead of fputc_unlocked +- aarch64: define PI_STATIC_AND_HIDDEN +- Update NEWS for CVE-2019-25013. +- x86: Support GNU_PROPERTY_X86_ISA_1_V[234] marker [BZ #26717] +- Remove dbl-64/wordsize-64 (part 2) +- Remove dbl-64/wordsize-64 +- Add SEGV_MTEAERR and SEGV_MTESERR from Linux 5.10. +- support: Add support_small_thread_stack_size +- stdlib: Sync canonicalize with gnulib [BZ #10635] [BZ #26592] [BZ #26341] [BZ #24970] +- malloc: Add scratch_buffer_dupfree +- Import filename.h from gnulib +- Import idx.h from gnulib +- alpha: Provide wait4 for static library [BZ #27150] +- aarch64: push the set of rules before falling into slow path +- nptl: Fix comment typo in pthread_cond_wait.c +- x86: Check IFUNC definition in unrelocated executable [BZ #20019] +- hurd: Fix mmap(!MAP_FIXED) on bogus address + +* Mon Jan 04 2021 Florian Weimer - 2.32.9000-24 +- Drop glibc-fedora-__libc_multiple_libcs.patch. Replaced by upstream's + __libc_initial flag. +- Adjust glibc-rh819430.patch to upstream's gnulib merge of fnmatch. +- Disable -Werror again due to GCC PR98512. +- Auto-sync with upstream branch master, + commit 3ec5d83d2a237d39e7fd6ef7a0bc8ac4c171a4a5: +- x86-64: Avoid rep movsb with short distance [BZ #27130] +- aarch64: fix stack missing after sp is updated +- nptl: Remove set*id, set*gid files which are not built +- Drop nan-pseudo-number.h usage from tests +- posix: Sync fnmatch with gnulib +- Sync flexmember.h with gnulib +- Sync intprops.h with gnulib +- posix: Sync glob code with gnulib +- posix: Sync regex code with gnulib +- Move generic nan-pseudo-number.h to ldbl-96 +- Sync FDL from https://www.gnu.org/licenses/fdl-1.3.texi +- Sync move-if-change from Gnulib +- Update automatically-generated copyright dates +- Update copyright dates not handled by scripts/update-copyrights. +- Update copyright dates with scripts/update-copyrights +- aarch64: use PTR_ARG and SIZE_ARG instead of DELOUSE +- nonstring: Enable __FORTIFY_LEVEL=3 +- string: Enable __FORTIFY_LEVEL=3 +- Introduce _FORTIFY_SOURCE=3 +- Warn on unsupported fortification levels +- powerpc: Use scv instruction on clone when available +- powerpc: Runtime selection between sc and scv for syscalls +- malloc: preserve errno on mcheck hooks [BZ #17924] +- x86 long double: Add tests for pseudo normal numbers +- x86 long double: Consider pseudo numbers as signaling +- io: Remove xmknod{at} implementations +- io: Remove xstat implementations +- free: preserve errno [BZ#17924] +- hurd: Accept including hurd/version.h +- hurd: Add WSTOPPED/WCONTINUED/WEXITED/WNOWAIT support [BZ #23091] +- support: Make support_process_state_wait wait less +- hurd: set sigaction for signal preemptors in arch-independent file +- hurd: Fix spawni SPAWN_XFLAGS_TRY_SHELL with empty argv +- hurd: Try shell in posix_spawn* only in compat mode +- Remove _ISOMAC check from +- x86: Remove the duplicated CPU_FEATURE_CPU_P +- Partially revert 681900d29683722b1cb0a8e565a0585846ec5a61 +- x86 long double: Support pseudo numbers in isnanl +- x86 long double: Support pseudo numbers in fpclassifyl +- MTE: Do not pad size in realloc_check +- tests-mcheck: New variable to run tests with MALLOC_CHECK_=3 +- elf: Account for glibc-hwcaps/ prefix in _dl_important_hwcaps +- misc: Use __ferror_unlocked instead of ferror +- s390x: Regenerate ulps +- powerpc: Regenerate ulps +- addmntent: Remove unbounded alloca usage from getmntent [BZ#27083] +- : Add Intel LAM support +- i386: Regenerate ulps +- aarch64: update ulps. +- aarch64: Add aarch64-specific files for memory tagging support +- aarch64: Add sysv specific enabling code for memory tagging +- linux: Add compatibility definitions to sys/prctl.h for MTE +- malloc: Basic support for memory tagging in the malloc() family +- elf: Add a tunable to control use of tagged memory +- config: Allow memory tagging to be enabled when configuring glibc +- alpha: Remove anonymous union in struct stat [BZ #27042] +- add inputs to auto-libm-test-in yielding larger errors (binary64, x86_64) +- m68k: fix clobbering a5 in setjmp() [BZ #24202] +- iconv add iconv_close before the function returned with bad value. +- iconv: use iconv_close after iconv_open +- Fix buffer overrun in EUC-KR conversion module (bz #24973) +- hurd: Make trampoline fill siginfo ss_sp from sc_uesp +- Hurd: make sigstates hold a reference on thread ports +- profil-counter: Add missing SIGINFO case +- hurd: implement SA_SIGINFO signal handlers. +- hurd: Fix ELF_MACHINE_USER_ADDRESS_MASK value +- hurd: Note when the vm_map kernel bug was fixed +- hurd: Also turn KERN_INVALID_ADDRESS to EINVAL +- ieee754: Remove unused __sin32 and __cos32 +- ieee754: Remove slow paths from asin and acos +- getenv: Move call to strlen to the branch it's used in. +- Update kernel version to 5.10 in tst-mman-consts.py. +- s390x: Require GCC 7.1 or later to build glibc. +- malloc: Use __libc_initial to detect an inner libc +- Replace __libc_multiple_libcs with __libc_initial flag +- {nptl,htl}/semaphoreP.h: clean up +- htl: Get sem_open/sem_close/sem_unlink support [BZ #25524] +- pthread: Move semaphore initialization for open to semaphoreP.h +- Mark __libc_freeres_fn as used [BZ #27002] +- Update syscall lists for Linux 5.10. +- htl: Add pshared semaphore support +- hurd: Add LLL_PRIVATE and LLL_SHARED +- hurd: Add __libc_open and __libc_close +- htl: Add futex-internal.h +- hurd: Add __lll_abstimed_wait_intr +- hurd: make lll_* take a variable instead of a ptr +- hurd: Rename LLL_INITIALIZER to LLL_LOCK_INITIALIZER +- Use Linux 5.10 in build-many-glibcs.py. + +* Wed Dec 16 2020 DJ Delorie - 2.32.9000-23 +- Fix conditionals for _enable_debug_packages and benchtests [BZ #1902514] + +* Tue Dec 15 2020 Patsy Griffin - 2.32.9000-22 +- Auto-sync with upstream branch master, + commit 4d0985543f479a6f421d4d8a9e0d1dc71c9c2c53. +- elf: Record libc.so link map when it is the main program (bug 20972) +- Use GMP 6.2.1 in build-many-glibcs.py. +- aarch64: remove the strlen_asimd symbol +- aarch64: fix static PIE start code for BTI [BZ #27068] +- elf: Fix failure handling in _dl_map_object_from_fd +- elf: inline lose for error handling +- Remove strtoimax, strtoumax, wcstoimax, wcstoumax inlines +- nsswitch: handle missing actions properly +- x86: Remove the default REP MOVSB threshold tunable value [BZ #27061] +- elf.h: Remove SHF_GNU_BUILD_NOTE. +- elf.h: fix spelling typos in comments +- Fix spelling and grammar in several comments +- malloc: Detect infinite-loop in _int_free when freeing tcache [BZ#27052] +- elf: Fix dl-load.c +- elf: Include libc.so.6 as main program in dependency sort (bug 20972) +- support: Add support_slibdir_prefix variable +- aarch64: Use mmap to add PROT_BTI instead of mprotect [BZ #26831] +- elf: Pass the fd to note processing +- elf: Move note processing after l_phdr is updated +- aarch64: align address for BTI protection [BZ #26988] +- aarch64: Fix missing BTI protection from dependencies [BZ #26926] +- Fix linknamespace errors in nss_database.c if build with -Os. +- treewide: fix incorrect spelling of indices in comments +- linux: Consolidate brk implementation +- elf: Include in cache.c +- s390x: Add glibc-hwcaps support +- elf: Fix run-time dependencies of tst-dlopen-fail-2 +- Handle out-of-memory case in svc_tcp.c/svc_unix.c:rendezvous_request. +- elf: Fix incorrect comparison in sort_priorities_by_name +- S390: Derive float_t from FLT_EVAL_METHOD +- Fix parsing of /sys/devices/system/cpu/online (bug 25859) +- Make strtoimax, strtoumax, wcstoimax, wcstoumax into aliases +- Fixed typos in "NEWS for version 2.32" +- Add NEWS entry for CVE-2020-29562 (BZ #26923) +- iconv: Fix incorrect UCS4 inner loop bounds (BZ#26923) +- Drop glibc-rh1906066 and glibc-rh741105 patches fixed by sync. + +* Mon Dec 14 2020 Florian Weimer - 2.32.9000-21 +- Re-enable -Werror everywhere (#1888246) + +* Wed Dec 09 2020 DJ Delorie - 2.32.9000-20 +- nsswitch: handle missing actions properly (temporary fix for 1906066) + +* Mon Dec 07 2020 Arjun Shankar - 2.32.9000-19 +- Auto-sync with upstream branch master, + commit 088e9625378f25607acff3daf7a79cbdee497043: +- x86: Rename readelflib.c +- nsswitch: use new internal API (callers) +- nsswitch: user new internal API (tests) +- nsswitch: use new internal API (core) +- nss: Implement +- : New abstraction for combining NSS modules and NSS actions +- nss: Introduce +- Add scripts/move-symbol-to-libc.py + +* Fri Dec 04 2020 Arjun Shankar - 2.32.9000-18 +- Drop glibc-revert-fxstat-compat.patch; applied upstream. +- Drop glibc-revert-mknod-compat.patch; applied upstream. +- Auto-sync with upstream branch master, + commit 4c38c1a229bc3628269ad98bd7e8d31d118d91f6: +- powerpc64le: Add glibc-hwcaps support +- x86: Adjust tst-cpu-features-supports.c for GCC 11 +- x86: Set RDRAND usable if CPU supports RDRAND +- elf: Add missing header to elf/dl-hwcaps.h +- lowlevellock-futex: Remove not used macros +- futex: Remove not used futex_reltimed_wait{_cancelable} +- y2038: Convert gai_suspend to support 64 bit time +- symbols: Add defines for libanl's libanl_hidden_{def|proto} +- x86_64: Add glibc-hwcaps support +- elf: Add glibc-hwcaps subdirectory support to ld.so cache processing +- elf: Process glibc-hwcaps subdirectories in ldconfig +- elf: Implement tail merging of strings in ldconfig +- elf: Implement a string table for ldconfig, with tail merging +- elf: Add extension mechanism to ld.so.cache +- elf: Add endianness markup to ld.so.cache (bug 27008) +- elf: Add glibc-hwcaps support for LD_LIBRARY_PATH +- elf: Synchronize section header flags with binutils +- x86: Fix THREAD_SELF definition to avoid ld.so crash (bug 27004) +- htl: Add hidden def for __pthread_create/detach +- manual: Clarify File Access Modes section and add O_PATH +- htl: Add missing symbols +- Revert "linux: Move xmknod{at} to compat symbols" +- Revert "linux: Move {f}xstat{at} to compat symbols" +- elf.h: Fix spelling of EM_TILE64 comment +- nptl: Fix __futex_clocklock64 return error check [BZ #26964] +- powerpc64le: ifunc select *f128 routines in multiarch mode +- y2038: Convert aio_suspend to support 64 bit time +- Fix typo in NEWS file +- nptl: Add EOVERFLOW checks for futex calls +- nptl: Fix PTHREAD_PRIO_PROTECT timed lock +- sh: Add sh4 fpu Implies folder +- io: nftw/ftw: Fix stack overflow with large nopenfd [BZ #26353] +- elf: Introduce enum opt_format in the ldconfig implementation +- support: Add support_copy_file +- NEWS entry for commit b4f020c9b408fb3d1d3d4901c4a71839145f8791 +- timezone: Change zdump installation to bin directory +- nptl: Return EINVAL for invalid clock for pthread_clockjoin_np +- nptl: Return EINVAL for pthread_mutex_clocklock/PI with CLOCK_MONOTONIC [BZ #26801] +- nptl: Replace lll_futex_wake with futex-internal.h +- nptl: Replace lll_futex_supported_clockid with futex-internal.h +- nptl: Replace lll_futex_{timed_}wait by futex-internal.h +- nptl: Replace lll_timedwait with __futex_abstimed_wait64 +- nptl: Replace __futex_clocklock_wait64 with __futex_abstimed_wait64 +- nptl: Remove _futex_clock_wait_bitset64 +- nptl: Consolidate __futex_abstimed_wait_{cancelable}64 +- nptl: Extend __futex_abstimed_wait_cancelable64 comment +- nptl: Remove clockwait_tid +- nptl: Remove futex_wait_cancelable +- nptl: Remove unused internal futex functions +- Mark mtrace tests UNSUPPORTED if bug-ga2.mtrace or tst-leaks2.mtrace are missing +- elf: Fix uninitialized variable for _dl_write +- powerpc: Make PT_THREAD_POINTER available to assembly code +- Use libnss_files.so for tests posix/bug-ga2 and resolv/tst-leaks2 [BZ #26821] +- hurd report-wait: Fix stpcpy usage +- hurd S_msg_report_wait: Fix detecting fd ports +- hurd S_msg_report_wait: Fix reporting ports +- hurd: Fix strcpy calls +- hurd: Fix _S_msg_get/set_env_variable prototype +- hurd: Enable using ifunc +- Add {,sysdep-}ld-library-path make variable +- nptl: Move stack list variables into _rtld_global +- hurd: let _dl_argv and __libc_stack_end be relro +- hurd: Remove some remnants of cthreads +- nanosleep: Pass NULL when rem == NULL on ports with __TIMESIZE != 64 +- y2038: Convert thrd_sleep to support 64 bit time +- y2038: Convert mtx_timedlock to support 64 bit time +- y2038: Convert cnd_timedwait to support 64 bit time +- hurd: Drop CLOCK_MONOTONIC change which slipped in +- hurd: make ptsname fail with ENOTTY on non-master-pty +- mach: Add missing assert.h include +- hurd: break relocation loop between libc.so and lib{mach,hurd}user.so +- Remove obsolete defines for HPUX support from fcntl.h and update O_NONBLOCK. +- Remove tls.h inclusion from internal errno.h +- nptl: Eliminate and __is_smp +- powerpc: Eliminate UP macro conditionals +- x86: Remove UP macro. Define LOCK_PREFIX unconditionally. +- alpha: Remove UP preprocessor conditionals +- hurd: Make sure signals get started +- hurd: initialize libpthread before starting the signal thread +- hurd: Make _hurd_libc_proc_init idempotent +- powerpc: Add optimized stpncpy for POWER9 +- powerpc: Add optimized strncpy for POWER9 +- Don't use nested function in test-ffs +- Use __builtin___stpncpy_chk when available +- tests: Remove NULL check for an array +- hurd: Move {,f,l}xstat{,at} and xmknod{at} to compat symbols +- hurd: Notify the proc server later during initialization +- htl: Initialize later +- htl: Keep thread signals blocked during its initialization +- htl: Fix spurious symbols in namespaces +- Use O_CLOEXEC in sysconf [BZ #26791] +- struct _Unwind_Exception alignment should not depend on compiler flags +- hurd: keep only required PLTs in ld.so +- hurd: Add missing startup calls +- riscv: Get cache information through sysconf +- RISC-V: Add _dl_start_user. + +* Thu Nov 26 2020 Florian Weimer - 2.32.9000-17 +- s390x: Do not rewrite program interpreter symlink (make install is enough) + +* Tue Nov 10 2020 Carlos O'Donell - 2.32.9000-16 +- Remove the work around for systemd-nspawn (#1869030). + +* Mon Nov 09 2020 DJ Delorie - 2.32.9000-15 +- Auto-sync with upstream branch master, + commit 75a193b7611bade31a150dfcc528b973e3d46231. +- linux: Allow adjtime with NULL argument [BZ #26833] +- aarch64: Add unwind information to _start (bug 26853) +- bsd unlockpt: unlockpt needs to fail with EINVAL, not ENOTTY +- Rearrange bsd_getpt vs bsd_openpt and implement posix_openpt on BSD +- Remove __warndecl +- Remove __warn_memset_zero_len [BZ #25399] +- iconv: Accept redundant shift sequences in IBM1364 [BZ #26224] +- msg: Remove redundant #include header +- tst-setuid1-static-ENV: Add $(common-objpfx)nss [BZ #26820] + +* Tue Nov 03 2020 Patsy Griffin - 2.32.9000-14 +- Auto-sync with upstream branch master, + commit e156dabc766d6f6f99ce9402999eae380a3ec1f2. +- aarch64: Add variant PCS lazy binding test [BZ #26798] +- aarch64: Fix DT_AARCH64_VARIANT_PCS handling [BZ #26798] +- hurd: Correct 'ethenet' spelling +- Avoid -Wstringop-overflow warning in pthread_cleanup_push macros +- Disable spurious -Warray-bounds for ypclnt.c (bug 26687) +- Do not use array parameter to new_composite_name (bug 26726) +- Disable spurious -Wstringop-overflow for setjmp/longjmp (bug 26647) +- malloc debug: fix compile error when enable macro MALLOC_DEBUG > 1 +- tst-tcfree2: adjust coding style. +- elf: In ldconfig, extract the new_sub_entry function from search_dir +- Use MPC 1.2.1 in build-many-glibcs.py. +- Argument Syntax: Use "option", @option, and @command. +- elf: Unify old and new format cache handling code in ld.so +- x86: Restore processing of cache size tunables in init_cacheinfo +- Make elf.h header self contained. +- x86: Optimizing memcpy for AMD Zen architecture. +- Hurd: Fix ftime build +- Add IP_RECVERR_RFC4884 and IPV6_RECVERR_RFC4884 from Linux 5.9. +- misc: Add internal __getauxval2 function +- Remove NEWS entry about ftime removal +- time: Add 64-bit time_t support for ftime +- Reinstate ftime and add deprecate message on ftime usage +- Update kernel version to 5.9 in tst-mman-consts.py. +- Amend grammar and add a description +- Fix typo in NEWS file +- Remove timing related checks of time/tst-cpuclock1 +- Update syscall lists for Linux 5.9. +- Use Linux 5.9 in build-many-glibcs.py. +- Reword description of SXID_* tunable properties +- New benchtest: pthread locks +- y2038: nptl: Provide __futex_clock_wait_bitset64 to support 64 bit bitset +- C-SKY: Make dynamic linker's name compitable with the older gcc. +- Revert "C-SKY:Fix dynamic linker's name when mfloat-abi=softfp." +- Move vtimes to a compatibility symbol +- y2038: linux: Provide __time64 implementation +- rt: Fix typos in comments in +- C-SKY:Fix dynamic linker's name when mfloat-abi=softfp. +- Drop the glibc-revert-ftime-compat.patch. + +* Thu Oct 29 2020 DJ Delorie - 2.32.9000-13 +- Add BuildRequires for perl (malloc/mtrace) if running the testsuite. + +* Wed Oct 21 2020 Siddhesh Poyarekar - 2.32.9000-12 +- Revert __xstat64 symbol removal. +- Revert xmknod* symbol removal. +- Revert ftime symbol removal. + +* Sun Oct 18 2020 Patsy Griffin - 2.32.9000-11 +- Auto-sync with upstream branch master, + commit 0f09154c64005e78b61484ae87b5ea2028051ea0. +- x86: Initialize CPU info via IFUNC relocation [BZ 26203] +- Add NEWS entry for ftime compatibility move +- support: Add create_temp_file_in_dir +- linux: Add __readdir_unlocked +- linux: Simplify opendir buffer allocation +- linux: Move posix dir implementations to Linux +- linux: Add 64-bit time_t support for wait3 +- Move ftime to a compatibility symbol +- linux: Fix time64 support for futimesat +- linux: Use INTERNAL_SYSCALL on fstatat{64} +- shm tests: Append PID to names passed to shm_open [BZ #26737] +- sysvipc: Fix tst-sysvshm-linux on x32 +- x86/CET: Update vfork to prevent child return +- resolv: Serialize processing in resolv/tst-resolv-txnid-collision +- statfs: add missing f_flags assignment +- y2038: Remove not used __fstatat_time64 define +- y2038: nptl: Convert pthread_mutex_{clock|timed}lock to support 64 bit +- sysvipc: Return EINVAL for invalid shmctl commands +- sysvipc: Fix IPC_INFO and SHM_INFO handling [BZ #26636] +- AArch64: Use __memcpy_simd on Neoverse N2/V1 +- resolv: Handle transaction ID collisions in parallel queries (bug 26600) +- support: Provide a way to clear the RA bit in DNS server responses +- support: Provide a way to reorder responses within the DNS test server +- Add missing stat/mknod symbol on libc.abilist some ABIs +- manual: correct the spelling of "MALLOC_PERTURB_" [BZ #23015] +- manual: replace an obsolete collation example with a valid one +- rtld: fix typo in comment +- elf: Add missing header to elf/dl-usage.c +- hurd: support clock_gettime(CLOCK_PROCESS/THREAD_CPUTIME_ID) +- linux: Move xmknod{at} to compat symbols +- linux: Add {f}stat{at} y2038 support +- linux: Move {f}xstat{at} to compat symbols +- linux: Disentangle fstatat from fxstatat +- linux: Implement {l}fstat{at} in terms of fstatat +- linux: Move the struct stat{64} to struct_stat.h +- Remove mknod wrapper functions, move them to symbols +- Remove stat wrapper functions, move them to exported symbols +- : Add FSRCS/FSRS/FZLRM support +- : Add Intel HRESET support +- : Add AVX-VNNI support +- : Add AVX512_FP16 support +- : Add Intel UINTR support +- elf: Do not pass GLRO(dl_platform), GLRO(dl_platformlen) to _dl_important_hwcaps +- elf: Enhance ld.so --help to print HWCAP subdirectories +- elf: Add library search path information to ld.so --help +- sunrpc: Adjust RPC function declarations to match Sun's (bug 26686] +- Avoid GCC 11 -Warray-parameter warnings [BZ #26686]. +- elf: Make __rtld_env_path_list and __rtld_search_dirs global variables +- elf: Print the full name of the dynamic loader in the ld.so help message +- elf: Use the term "program interpreter" in the ld.so help message +- scripts/update-copyrights: Update csu/version.c, elf/dl-usage.c +- elf: Implement ld.so --version +- nptl: Add missing cancellation flags on lockf +- Update mips64 libm-test-ulps +- Update alpha libm-test-ulps +- elf: Implement ld.so --help +- elf: Record whether paths come from LD_LIBRARY_PATH or --library-path +- elf: Move ld.so error/help output to _dl_usage +- elf: Extract command-line/environment variables state from rtld.c + +* Wed Oct 14 2020 Florian Weimer - 2.32.9000-10 +- Disable -Werror on ELN (#1888246) + +* Wed Oct 14 2020 Florian Weimer - 2.32.9000-9 +- Make glibc.spec self-contained (#1887097) + +* Thu Oct 08 2020 Arjun Shankar - 2.32.9000-8 +- Drop glibc-fix-float128-benchtests.patch; applied upstream. +- Auto-sync with upstream branch master, + commit 72d36ffd7db55ae599f4c77feb0eae25a0f3714e: +- elf: Implement __rtld_malloc_is_complete +- __vfscanf_internal: fix aliasing violation (bug 26690) +- Revert "Fix missing redirects in testsuite targets" +- nptl: Add missing cancellation flags on futex_internal and pselect32 +- elf: Implement _dl_write +- elf: Do not search HWCAP subdirectories in statically linked binaries +- Linux: Require properly configured /dev/pts for PTYs +- Linux: unlockpt needs to fail with EINVAL, not ENOTTY (bug 26053) +- login/tst-grantpt: Convert to support framework, more error checking +- posix: Fix -Warray-bounds instances building timer_create [BZ #26687] +- Replace Minumum/minumum with Minimum/minimum +- Optimize scripts/merge-test-results.sh +- Fix GCC 11 -Warray-parameter warning for __sigsetjmp (bug 26647) +- manual: Fix typo +- y2038: nptl: Convert pthread_rwlock_{clock|timed}{rd|wr}lock to support 64 + bit time +- Y2038: nptl: Provide futex_abstimed_wait64 supporting 64 bit time +- sysvipc: Return EINVAL for invalid msgctl commands +- sysvipc: Fix IPC_INFO and MSG_INFO handling [BZ #26639] +- sysvipc: Return EINVAL for invalid semctl commands +- sysvipc: Fix SEM_STAT_ANY kernel argument pass [BZ #26637] +- aarch64: enforce >=64K guard size [BZ #26691] +- sysvipc: Fix semtimedop for Linux < 5.1 for 64-bit ABI +- nptl: futex: Move __NR_futex_time64 alias to beginning of futex-internal.h +- nptl: Provide proper spelling for 32 bit version of futex_abstimed_wait +- string: Fix strerrorname_np return value [BZ #26555] +- Set tunable value as well as min/max values +- ld.so: add an --argv0 option [BZ #16124] +- Reversing calculation of __x86_shared_non_temporal_threshold +- linux: Add time64 recvmmsg support +- linux: Add time64 support for nanosleep +- linux: Consolidate utimes +- linux: Use 64-bit time_t syscall on clock_getcputclockid +- linux: Add time64 sigtimedwait support +- linux: Add time64 select support +- nptl: Fix __futex_abstimed_wait_cancellable32 +- sysvipc: Fix semtimeop for !__ASSUME_DIRECT_SYSVIPC_SYSCALLS +- hurd: add ST_RELATIME +- intl: Handle translation output codesets with suffixes [BZ #26383] +- bench-strcmp.c: Add workloads on page boundary +- bench-strncmp.c: Add workloads on page boundary +- strcmp: Add a testcase for page boundary +- strncmp: Add a testcase for page boundary [BZ #25933] +- Set locale related environment variables in debugglibc.sh +- benchtests: Run _Float128 tests only on architectures that support it +- powerpc: Protect dl_powerpc_cpu_features on INIT_ARCH() [BZ #26615] +- x86: Harden printf against non-normal long double values (bug 26649) +- x86: Use one ldbl2mpn.c file for both i386 and x86_64 +- Define __THROW to noexcept for C++11 and later + +* Mon Sep 21 2020 Arjun Shankar - 2.32.9000-7 +- Adjust glibc-rh741105.patch. +- Add glibc-fix-float128-benchtests.patch to allow building on armv7hl. +- Auto-sync with upstream branch master, + commit cdf645427d176197b82f44308a5e131d69fb53ad: +- Update mallinfo2 ABI, and test +- Allow memset local PLT reference for RISC-V. +- powerpc: fix ifunc implementation list for POWER9 strlen and stpcpy +- nscd: bump GC cycle during cache pruning (bug 26130) +- x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625] +- : Add Intel Key Locker support +- Fix handling of collating symbols in fnmatch (bug 26620) +- pselect.c: Pass a pointer to SYSCALL_CANCEL [BZ #26606] +- y2038: nptl: Convert sem_{clock|timed}wait to support 64 bit time +- hurd: Add __x86_get_cpu_features to ld.abilist +- x86: Install [BZ #26124] +- linux: Add time64 pselect support +- linux: Add time64 semtimedop support +- linux: Add ppoll time64 optimization +- linux: Simplify clock_getres +- Update sparc libm-test-ulps +- Remove internal usage of extensible stat functions +- Linux: Consolidate xmknod +- linux: Consolidate fxstatat{64} +- linux: Consolidate fxstat{64} +- linux: Consolidate lxstat{64} +- linux: Consolidate xstat{64} +- linux: Define STAT64_IS_KERNEL_STAT64 +- linux: Always define STAT_IS_KERNEL_STAT +- Update powerpc libm-test-ulps +- benchtests: Add "workload" traces for sinf128 +- benchtests: Add "workload" traces for sinf +- benchtests: Add "workload" traces for sin +- benchtests: Add "workload" traces for powf128 +- benchtests: Add "workload" traces for pow +- benchtests: Add "workload" traces for expf128 +- benchtests: Add "workload" traces for exp +- nptl: futex: Provide correct indentation for part of + __futex_abstimed_wait_cancelable64 + +* Tue Sep 08 2020 DJ Delorie - 2.32.9000-6 +- Auto-sync with upstream branch master, + commit e74b61c09a2a2ab52153e731225ccba5078659b1. +- Disable -Wstringop-overread for some string tests +- string: Fix GCC 11 `-Werror=stringop-overread' error +- C11 threads: Fix inaccuracies in testsuite +- elf.h: Add aarch64 bti/pac dynamic tag constants +- x86: Set CPU usable feature bits conservatively [BZ #26552] + +* Wed Sep 02 2020 Patsy Griffin - 2.32.9000-5 +- Auto-sync with upstream branch master, + commit 86a912c8634f581ea42ec6973553dde7f058cfbf. +- Update i686 ulps. +- Use LFS readdir in generic POSIX getcwd [BZ# 22899] +- linux: Remove __ASSUME_ATFCTS +- Sync getcwd with gnulib +- x86-64: Fix FMA4 detection in ifunc [BZ #26534] +- y2038: nptl: Convert pthread_cond_{clock|timed}wait to support 64 bit time +- malloc: Fix mallinfo deprecation declaration +- x32: Add and regenerate arch-syscall.h +- Add mallinfo2 function that support sizes >= 4GB. +- Remove obsolete default/nss code +- AArch64: Improve backwards memmove performance +- Add RISC-V 32-bit target to build-many-glibcs.py +- Documentation for the RISC-V 32-bit port +- RISC-V: Build infrastructure for 32-bit port +- RISC-V: Add rv32 path to RTLDLIST in ldd +- riscv32: Specify the arch_minimum_kernel as 5.4 +- RISC-V: Fix llrint and llround missing exceptions on RV32 +- RISC-V: Add the RV32 libm-test-ulps +- RISC-V: Add 32-bit ABI lists +- RISC-V: Add hard float support for 32-bit CPUs +- RISC-V: Support the 32-bit ABI implementation +- RISC-V: Add arch-syscall.h for RV32 +- RISC-V: Add path of library directories for the 32-bit +- RISC-V: Support dynamic loader for the 32-bit +- RISC-V: Add support for 32-bit vDSO calls +- RISC-V: Use 64-bit-time syscall numbers with the 32-bit port +- RISC-V: Cleanup some of the sysdep.h code +- RISC-V: Use 64-bit time_t and off_t for RV32 and RV64 +- io/lockf: Include bits/types.h before __OFF_T_MATCHES_OFF64_T check +- elf/tst-libc_dlvsym: Add a TEST_COMPAT around some symbol tests +- hurd: define BSD 4.3 ioctls only under __USE_MISC +- string: test strncasecmp and strncpy near page boundaries +- linux: Simplify utimensat +- linux: Simplify timerfd_settime +- linux: Simplify timer_gettime +- linux: Simplify sched_rr_get_interval +- linux: Simplify ppoll +- linux: Simplify mq_timedsend +- linux: Simplify mq_timedreceive +- linux: Simplify clock_settime +- linux: Simplify clock_nanosleep +- linux: Simplify clock_gettime +- linux: Simplify clock_adjtime +- linux: Add helper function to optimize 64-bit time_t fallback support +- S390: Sync HWCAP names with kernel by adding aliases [BZ #25971] +- [vcstocl] Import ProjectQuirks from its own file +- build-many-glibcs.py: Add a s390x -O3 glibc variant. +- Fix namespace violation in stdio.h and sys/stat.h if build with optimization. [BZ #26376] +- Add C2x BOOL_MAX and BOOL_WIDTH to limits.h. +- Use MPC 1.2.0 in build-many-glibcs.py. +- Add new STATX_* constants from Linux 5.8 to bits/statx-generic.h. +- Correct locking and cancellation cleanup in syslog functions (bug 26100) + +* Thu Aug 20 2020 Carlos O'Donell - 2.32.9000-4 +- Support building glibc in a mock chroot using older systemd-nspawn (#1869030). + +* Tue Aug 18 2020 Carlos O'Donell - 2.32.9000-3 +- Suggest installing minimal localization e.g. C, POSIX, C.UTF-8. + +* Mon Aug 17 2020 DJ Delorie - 2.32.9000-2 +- Auto-sync with upstream branch master, + commit cb7e7a5ca1d6d25d59bc038bdc09630e507c41e5. +- nptl: Handle NULL abstime [BZ #26394] +- Update build-many-glibcs.py for binutils ia64 obsoletion. +- Update kernel version to 5.8 in tst-mman-consts.py. +- y2038: nptl: Convert pthread_{clock|timed}join_np to support 64 bit time +- aarch64: update ulps. + +* Wed Aug 12 2020 Patsy Griffin - 2.32.9000-1 +- Auto-sync with upstream branch master, + commit 0be0845b7a674dbfb996f66cd03d675f0f6028dc: +- S390: Regenerate ULPs. +- manual: Fix sigdescr_np and sigabbrev_np return type (BZ #26343) +- math: Update x86_64 ulps +- math: Regenerate auto-libm-test-out-j0 +- manual: Put the istrerrorname_np and strerrordesc_np return type in braces +- Linux: Use faccessat2 to implement faccessat (bug 18683) +- manual: Fix strerrorname_np and strerrordesc_np return type (BZ #26343) +- math: Fix inaccuracy of j0f for x >= 2^127 when sin(x)+cos(x) is tiny +- Update syscall lists for Linux 5.8. +- Use Linux 5.8 in build-many-glibcs.py. +- htl: Enable tst-cancelx?[45] +- tst-cancel4: Make blocking on write more portable +- hurd: Add missing hidden def +- hurd: Rework sbrk +- hurd: Implement basic sched_get/setscheduler +- x86: Rename Intel CPU feature names +- manual: Fix some @code/@var formatting glitches chapter Date And Time +- Copy regex_internal.h from Gnulib +- Copy regex BITSET_WORD_BITS porting from Gnulib +- Sync regex.h from Gnulib +- Sync mktime.c from Gnulib +- Sync intprops.h from Gnulib +- Open master branch for glibc 2.33 development. + +* Thu Aug 06 2020 Arjun Shankar - 2.32-1 +- Auto-sync with upstream branch release/2.32/master, + commit 3de512be7ea6053255afed6154db9ee31d4e557a: +- Prepare for glibc 2.32 release. +- Regenerate configure scripts. +- Update NEWS with bugs. +- Update translations. +- Don't mix linker error messages into edited scripts +- benchtests/README update. +- RISC-V: Update lp64d libm-test-ulps according to HiFive Unleashed +- aarch64: update NEWS about branch protection +- Add NEWS entry for CVE-2016-10228 (bug 19519) +- powerpc: Fix incorrect cache line size load in memset (bug 26332) +- Update Nios II libm-test-ulps file. + +* Fri Jul 31 2020 Patsy Griffin - 2.31.9000-24 +- Auto-sync with upstream branch master, + commit 7f1a08cff82255cd4252a2c75fd65b80a6a170bf. +- Move NEWS entry for CVE-2020-1751 to the 2.31 section +- NEWS: Deprecate weak libpthread symbols for single-threaded checks +- NEWS: Deprecate nss_hesiod +- nptl: Zero-extend arguments to SETXID syscalls [BZ #26248] +- Use binutils 2.35 branch in build-many-glibcs.py. +- aarch64: Use future HWCAP2_MTE in ifunc resolver +- Update x86-64 libm-test-ulps +- aarch64: Respect p_flags when protecting code with PROT_BTI +- Disable warnings due to deprecated libselinux symbols used by nss and nscd +- Regenerate INSTALL for ARC port updates. +- Update libc.pot for 2.32 release. +- powerpc: Fix POWER10 selection +- powerpc64le: guarantee a .gnu.attributes section [BZ #26220] + +* Wed Jul 29 2020 Florian Weimer - 2.31.9000-23 +- Inherit -mbranch-protection=standard from redhat-rpm-config (for aarch64) + +* Mon Jul 27 2020 Fedora Release Engineering +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 22 2020 Carlos O'Donell - 2.31.9000-21 +- Use make macros +- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro + +* Tue Jul 21 2020 Arjun Shankar - 2.31.9000-20 +- Add glibc-deprecated-selinux-makedb.patch and + glibc-deprecated-selinux-nscd.patch to work around libselinux API + deprecations. +- Drop glibc-rseq-disable.patch; rseq support removed upstream. (#1855729) +- Auto-sync with upstream branch master, + commit ec2f1fddf29053957d061dfe310f106388472a4f: +- libio: Remove __libc_readline_unlocked +- shadow: Implement fgetspent_r using __nss_fgetent_r +- pwd: Implement fgetpwent_r using __nss_fgetent_r +- gshadow: Implement fgetsgent_r using __nss_fgetent_r (bug 20338) +- grp: Implement fgetgrent_r using __nss_fgetent_r +- nss: Add __nss_fgetent_r +- libio: Add fseterr_unlocked for internal use +- nss_files: Use generic result pointer in parse_line +- nss_files: Consolidate line parse declarations in +- nss_compat: Do not use mmap to read database files (bug 26258) +- nss_files: Consolidate file opening in __nss_files_fopen +- Update powerpc-nofpu libm-test-ulps. +- Use MPFR 4.1.0 in build-many-glibcs.py. +- elf: Change TLS static surplus default back to 1664 +- hurd: Fix longjmp check for sigstate +- hurd: Fix longjmp early in initialization +- manual: New signal and errno string functions are AS-safe +- AArch64: Improve strlen_asimd performance (bug 25824) +- Move from sunrpc to inet +- en_US: Minimize changes to date_fmt (Bug 25923) +- Linux: Remove rseq support +- manual: Use Unicode instead HTML entities for characters (bug 19737) +- Add NEWS entry for CVE-2020-6096 (bug 25620) +- arm: remove string/tst-memmove-overflow XFAIL +- AArch64: Rename IS_ARES to IS_NEOVERSE_N1 +- AArch64: Add optimized Q-register memcpy +- AArch64: Align ENTRY to a cacheline +- Correct timespec implementation [BZ #26232] +- Remove --enable-obsolete-rpc configure flag +- hurd: Fix build-many-glibcs.py +- x86: Support usable check for all CPU features +- string: Make tst-strerror/tst-strsignal unsupported if msgfmt is not installed +- malloc: Deprecate more hook-related functionality +- elf: Support at least 32-byte alignment in static dlopen +- x86: Remove __ASSEMBLER__ check in init-arch.h +- x86: Remove the unused __x86_prefetchw +- Documentation for ARC port +- build-many-glibcs.py: Enable ARC builds +- ARC: Build Infrastructure +- ARC: ABI lists +- ARC: Linux Startup and Dynamic Loading +- ARC: Linux ABI +- ARC: Linux Syscall Interface +- ARC: hardware floating point support +- ARC: math soft float support +- ARC: Atomics and Locking primitives +- ARC: Thread Local Storage support +- ARC: startup and dynamic linking code +- ARC: ABI Implementation +- Fix time/tst-cpuclock1 intermitent failures +- powerpc64: Fix calls when r2 is not used [BZ #26173] +- Add NEWS entry for Update to Unicode 13.0.0 [BZ #25819] +- Update i686 libm-test-ulps +- Fix memory leak in __printf_fp_l (bug 26215). +- Fix double free in __printf_fp_l (bug 26214). +- linux: Fix syscall list generation instructions +- sysv: linux: Add 64-bit time_t variant for shmctl +- sysvipc: Remove the linux shm-pad.h file +- sysvipc: Split out linux struct shmid_ds +- sysv: linux: Add 64-bit time_t variant for msgctl +- sysvipc: Remove the linux msq-pad.h file +- sysvipc: Split out linux struct semid_ds +- sysv: linux: Add 64-bit time_t variant for semctl + +* Fri Jul 10 2020 Florian Weimer - 2.31.9000-19 +- Disable rseq registration by default to help Firefox (#1855729) + +* Thu Jul 09 2020 Florian Weimer - 2.31.9000-18 +- Auto-sync with upstream branch master, + commit ffb17e7ba3a5ba9632cee97330b325072fbe41dd: +- rtld: Avoid using up static TLS surplus for optimizations [BZ #25051] +- rtld: Account static TLS surplus for audit modules +- rtld: Add rtld.nns tunable for the number of supported namespaces +- Remove --enable-obsolete-nsl configure flag +- Move non-deprecated RPC-related functions from sunrpc to inet +- aarch64: add NEWS entry about branch protection support +- aarch64: redefine RETURN_ADDRESS to strip PAC +- aarch64: fix pac-ret support in _mcount +- aarch64: Add pac-ret support to assembly files +- aarch64: configure check for pac-ret code generation +- aarch64: ensure objects are BTI compatible +- aarch64: enable BTI at runtime +- aarch64: fix RTLD_START for BTI +- aarch64: fix swapcontext for BTI +- aarch64: Add BTI support to assembly files +- aarch64: Rename place holder .S files to .c +- aarch64: configure test for BTI support +- Rewrite abi-note.S in C. +- rtld: Clean up PT_NOTE and add PT_GNU_PROPERTY handling +- string: Move tst-strsignal tst-strerror to tests-container +- string: Fix prototype mismatch in sigabbrev_np, __sigdescr_np +- arm: CVE-2020-6096: Fix multiarch memcpy for negative length (#1820332) +- arm: CVE-2020-6096: fix memcpy and memmove for negative length (#1820332) +- sunrpc: Remove hidden aliases for global data symbols (bug 26210) +- hurd: Fix strerror not setting errno +- tst-strsignal: fix checking for RT signals support +- hurd: Evaluate fd before entering the critical section +- CVE-2016-10228: Rewrite iconv option parsing (#1428292) +- nss: Remove cryptographic key support from nss_files, nss_nis, nss_nisplus +- sunrpc: Do not export getrpcport by default +- sunrpc: Do not export key handling hooks by default +- sunrpc: Turn clnt_sperrno into a libc_hidden_nolink_sunrpc symbol +- string: Add strerrorname_np and strerrordesc_np +- string: Add sigabbrev_np and sigdescr_np +- string: Add strerror_l on test-strerror-errno +- string: Add strerror, strerror_r, and strerror_l test +- string: Add strsignal test +- string: Simplify strerror_r +- string: Use tls-internal on strerror_l +- string: Implement strerror in terms of strerror_l +- string: Remove old TLS usage on strsignal +- linux: Fix __NSIG_WORDS and add __NSIG_BYTES +- signal: Move sys_errlist to a compat symbol +- signal: Move sys_siglist to a compat symbol +- signal: Add signum-{generic,arch}.h +- Remove most vfprintf width/precision-dependent allocations (bug 14231, bug 26211). +- elf: Do not signal LA_ACT_CONSISTENT for an empty namespace [BZ #26076] +- Fix stringop-overflow errors from gcc 10 in iconv. +- x86: Add thresholds for "rep movsb/stosb" to tunables +- Use C2x return value from getpayload of non-NaN (bug 26073). +- x86: Detect Extended Feature Disable (XFD) +- x86: Correct bit_cpu_CLFSH [BZ #26208] +- manual: Document __libc_single_threaded +- Add the __libc_single_threaded variable +- Linux: rseq registration tests +- Linux: Use rseq in sched_getcpu if available +- Linux: Perform rseq registration at C startup and thread creation +- tst-cancel4: deal with ENOSYS errors +- manual: Show copyright information not just in the printed manual + + +* Thu Jul 02 2020 Carlos O'Donell - 2.31.9000-17 +- Auto-sync with upstream branch master, + commit c6aac3bf3663709cdefde5f5d5e9e875d607be5e. +- Fix typo in comment in bug 26137 fix. +- Fix strtod multiple-precision division bug (bug 26137). +- Linux: Fix UTC offset setting in settimeofday for __TIMESIZE != 64 +- random: range is not portably RAND_MAX [BZ #7003] +- Update kernel version to 5.7 in tst-mman-consts.py. +- powerpc: Add support for POWER10 +- hurd: Simplify usleep timeout computation +- htl: Enable cancel*16 an cancel*20 tests +- hurd: Add remaining cancelation points +- hurd: fix usleep(ULONG_MAX) +- hurd: Make fcntl(F_SETLKW*) cancellation points +- hurd: make wait4 a cancellation point +- hurd: Fix port definition in HURD_PORT_USE_CANCEL +- hurd: make close a cancellation point +- hurd: make open and openat cancellation points +- hurd: clean fd and port on thread cancel +- htl: Move cleanup handling to non-private libc-lock +- htl: Fix includes for lockfile +- htl: avoid cancelling threads inside critical sections +- tst-cancel4-common.c: fix calling socketpair +- x86: Detect Intel Advanced Matrix Extensions +- Set width of JUNGSEONG/JONGSEONG characters from UD7B0 to UD7FB to 0 [BZ #26120] +- S390: Optimize __memset_z196. +- S390: Optimize __memcpy_z196. +- elf: Include (for size_t), in +- nptl: Don't madvise user provided stack +- S390: Regenerate ULPs. +- htl: Add wrapper header for with hidden __sem_post +- elf: Include in because bool is used +- htl: Fix case when sem_*wait is canceled while holding a token +- htl: Make sem_*wait cancellations points +- htl: Simplify non-cancel path of __pthread_cond_timedwait_internal +- htl: Enable tst-cancel25 test +- powerpc: Add new hwcap values +- aarch64: MTE compatible strncmp +- aarch64: MTE compatible strcmp +- aarch64: MTE compatible strrchr +- aarch64: MTE compatible memrchr +- aarch64: MTE compatible memchr +- aarch64: MTE compatible strcpy +- Add MREMAP_DONTUNMAP from Linux 5.7 +- x86: Update CPU feature detection [BZ #26149] + +* Mon Jun 22 2020 DJ Delorie - 2.31.9000-16 +- Auto-sync with upstream branch master, + commit ea04f0213135b13d80f568ca2c4127c2ec112537. +- aarch64: Remove fpu Makefile +- m68k: Use sqrt{f} builtin for coldfire +- arm: Use sqrt{f} builtin +- riscv: Use sqrt{f} builtin +- s390: Use sqrt{f} builtin +- sparc: Use sqrt{f} builtin +- mips: Use sqrt{f} builtin +- alpha: Use builtin sqrt{f} +- i386: Use builtin sqrtl +- x86_64: Use builtin sqrt{f,l} +- powerpc: Use sqrt{f} builtin +- s390x: Use fma{f} builtin +- aarch64: Use math-use-builtins for ceil{f} +- math: Decompose math-use-builtins.h +- hurd: Add mremap +- ia64: Use generic exp10f +- New exp10f version without SVID compat wrapper +- i386: Use generic exp10f +- math: Optimized generic exp10f with wrappers +- benchtests: Add exp10f benchmark + +* Fri Jun 19 2020 Patsy Franklin - 2.31.9000-15 +- Auto-sync with upstream branch master, + commit 27f8864bd41f0f1b61e8e947d9a030b1a0d23df9. +- x86: Update F16C detection [BZ #26133] +- Fix avx2 strncmp offset compare condition check [BZ #25933] +- nptl: Remove now-spurious tst-cancelx9 references +- x86_64: Use %xmmN with vpxor to clear a vector register +- x86: Correct bit_cpu_CLFLUSHOPT [BZ #26128] +- powerpc64le: refactor e_sqrtf128.c +- Update syscall-names.list for Linux 5.7. +- ieee754/dbl-64: Reduce the scope of temporary storage variables +- manual: Add pthread_attr_setsigmask_np, pthread_attr_getsigmask_np +- ld.so: Check for new cache format first and enhance corruption check +- hurd: Fix __writev_nocancel_nostatus +- hurd: Make send* cancellation points +- htl: Enable more cancellation tests +- hurd: Make write and pwrite64 cancellation points +- htl: Fix cleanup support for IO locking +- htl: Move cleanup stack to variable shared between libc and pthread +- htl: initialize first and prevent from unloading +- htl: Add noreturn attribute on __pthread_exit forward +- hurd: Make recv* cancellation points +- powerpc: Automatic CPU detection in preconfigure +- Use Linux 5.7 in build-many-glibcs.py. +- htl: Enable more cancel tests +- htl: Fix linking static tests by factorizing the symbols list +- Add "%d" support to _dl_debug_vdprintf +- aarch64: MTE compatible strlen +- aarch64: MTE compatible strchr +- aarch64: MTE compatible strchrnul +- AArch64: Merge Falkor memcpy and memmove implementations +- hurd: document that gcc&gdb look at the trampoline code +- pthread: Move back linking rules to nptl and htl +- htl: Enable more tests +- htl: Fix registration of atfork handlers in modules +- htl: Fix tls initialization for already-created threads +- hurd: Make read and pread64 cancellable +- hurd: Fix unwinding over interruptible RPC +- htl: Enable but XFAIL tst-flock2, tst-signal1, tst-signal2 +- hurd: XFAIL more tests that require setpshared support +- hurd: Briefly document in xfails the topics of the bugzilla entries +- htl: Enable more tests +- htl: Add sem_clockwait support +- htl: fix register-atfork ordering +- hurd: Fix hang in _hurd_raise_signal from pthread_kill +- hurd: Reject raising invalid signals +- hurd: fix clearing SS_ONSTACK when longjmp-ing from sighandler +- hurd: Add pointer guard support +- hurd: Add stack guard support +- dl-runtime: reloc_{offset,index} now functions arch overide'able +- powerpc64le: add optimized strlen for P9 +- powerpc64le: use common fmaf128 implementation + +* Fri Jun 05 2020 Patsy Griffin - 2.31.9000-14 +- Auto-sync with upstream branch master, + commit e52434a2e4d1105272daaef87678da950fbec73f. +- benchtests: Restore the clock_gettime option +- Update HP_TIMING_NOW for _ISOMAC in sysdeps/generic/hp-timing.h +- Replace val with __val in TUNABLE_SET_VAL_IF_VALID_RANGE +- support: Fix detecting hole support on >2KB-block filesystems +- powerpc: Fix powerpc64le due a7a3435c9a +- manual/jobs.texi: remove unused var from example code +- powerpc/fpu: use generic fma functions +- aarch/fpu: use generic builtins based math functions +- ieee754: provide gcc builtins based generic fma functions +- ieee754: provide gcc builtins based generic sqrt functions +- Linux: Use __pthread_attr_setsigmask_internal for timer helper thread +- nptl: Add pthread_attr_setsigmask_np, pthread_attr_getsigmask_np +- nptl: Make pthread_attr_t dynamically extensible +- nptl: Destroy the default thread attribute as part of freeres +- nptl: Change type of __default_pthread_attr +- nptl: Use __pthread_attr_setaffinity_np in pthread_getattr_np +- nptl: Use __pthread_getattr_default_np in pthread_create +- nptl: Add internal alias __pthread_getattr_default_np +- htl: Fix gsync_wait symbol exposition +- htl: Make pthread_cond_destroy wait for threads to be woken +- htl: Enable more cond tests +- tst-cond11: Fix build with _SC_MONOTONIC_CLOCK > 0 +- mbstowcs: Document, test, and fix null pointer dst semantics (Bug 25219) +- build: Use FAIL_EXIT1 () on failure to exec child [BZ #23990] +- manual: Fix backtraces code example [BZ #10441] +- hurd: Fix fexecve +- i386: Remove unused file sysdeps/unix/i386/sysdep.S +- hurd: fix ptsname error when called on a non-tty +- hurd: Fix fdopendir checking for directory type +- i386: Remove NO_TLS_DIRECT_SEG_REFS handling +- Hurd: Move internals into wrapper header +- Hurd: Use __sigmask in favor of deprecated sigmask +- hurd: Fix pselect atomicity +- elf: Remove extra hwcap mechanism from ldconfig +- elf: Do not read hwcaps from the vDSO in ld.so +- linux: Use internal DIR locks when accessing filepos on telldir +- Update i386 libm-test-ulps +- htl: Add clock variants +- signal: Deprecate additional legacy signal handling functions +- elf: Turn _dl_printf, _dl_error_printf, _dl_fatal_printf into functions +- x86: Update Intel Atom processor family optimization +- elf.h: add aarch64 property definitions +- elf.h: Add PT_GNU_PROPERTY +- : Add libpthread hidden alias support +- nptl: Use __pthread_attr_copy in pthread_setattr_default_np +- nptl: Use __pthread_attr_copy in pthread_getattr_default_np (bug 25999) +- nptl: Add __pthread_attr_copy for copying pthread_attr_t objects +- nptl: Make __pthread_attr_init, __pthread_attr_destroy available internally +- nptl: Move pthread_gettattr_np into libc +- nptl: Move pthread_getaffinity_np into libc +- nptl: Move pthread_attr_setaffinity_np into libc +- nptl: Replace some stubs with the Linux implementation +- Linux: Add missing handling of tai field to __ntp_gettime64 +- Mention GCC 10 attribute access. +- y2038: Replace __clock_gettime with __clock_gettime64 +- manual: Add missing section and node for clockid_t wait functions +- y2038: linux: Provide __ntp_gettimex64 implementation +- y2038: linux: Provide __ntp_gettime64 implementation +- y2038: Provide conversion helpers for struct __ntptimeval64 +- y2038: Introduce struct __ntptimeval64 - new internal glibc type +- y2038: linux: Provide __adjtime64 implementation +- y2038: linux: Provide ___adjtimex64 implementation +- y2038: linux: Provide __clock_adjtime64 implementation +- ldconfig: Default to the new format for ld.so.cache +- nss_compat: internal_end*ent may clobber errno, hiding ERANGE [BZ #25976] +- powerpc: Optimized rawmemchr for POWER9 +- x86: Add --enable-cet=permissive +- Remove NO_CTORS_DTORS_SECTIONS macro +- elf: Assert that objects are relocated before their constructors run +- powerpc: Optimized stpcpy for POWER9 +- powerpc: Optimized strcpy for POWER9 +- x86: Move CET control to _dl_x86_feature_control [BZ #25887] +- sunrpc/tst-udp-*: Fix timeout value +- Linux: Remove remnants of the getcpu cache +- Update timezone code from tzcode 2020a +- aarch64: fix strcpy and strnlen for big-endian [BZ #25824] +- locale: Add transliteration for Geresh, Gershayim (U+05F3, U+05F4) +- string: Fix string/tst-memmove-overflow to compile with GCC 7 +- Add arch-syscall.h dependency for generating sysd-syscalls file +- arm: XFAIL string/tst-memmove-overflow due to bug 25620 +- elf: Remove redundant add_to_global_resize_failure call from dl_open_args +- string: Add string/tst-memmove-overflow, a test case for bug 25620 +- support: Add support_blob_repeat_allocate_shared +- nptl: wait for pending setxid request also in detached thread (bug 25942) +- aarch64: Accept PLT calls to __getauxval within libc.so +- Use unsigned constants for ICMP6 filters [BZ #22489] +- Linux: Enhance glibcsyscalls.py to support listing system calls + +* Mon May 11 2020 DJ Delorie - 2.31.9000-13 +- Auto-sync with upstream branch master, + commit 978e8ac39f8ba2d694031e521511da1ae803ccfc. +- Suppress GCC 10 true positive warnings [BZ #25967] +- POWER: Add context-synchronizing instructions to pkey_write [BZ #25954] +- hurd: Add missing sigstate members initialization +- x86-64: Use RDX_LP on __x86_shared_non_temporal_threshold [BZ #25966] +- linux: Remove assembly umount2 implementation +- signal: Use for sigemptyset, sigfillset +- ckb_IQ, or_IN locales: Add missing reorder-end keywords +- semaphore: consolidate arch headers into a generic one +- Use GCC 10 branch in build-many-glibcs.py. +- Document the internal _ and N_ macros +- y2038: Provide conversion helpers for struct __timex64 +- y2038: Introduce struct __timex64 - new internal glibc type +- y2038: include: Move struct __timeval64 definition to a separate file +- y2038: nscd: Modify nscd_helper to use __clock_gettime64 +- y2038: inet: Convert inet deadline to support 64 bit time +- y2038: hurd: Provide __clock_gettime64 function +- y2038: Export __clock_gettime64 to be usable in other libraries +- manual: Document the O_NOFOLLOW open flag +- powerpc64le/power9: guard power9 strcmp against rtld usage [BZ# 25905] +- float128: use builtin_signbitf128 always +- improve out-of-bounds checking with GCC 10 attribute access [BZ #25219] +- nios2: delete sysdeps/unix/sysv/linux/nios2/kernel-features.h +- powerpc: Rename argN to _argN in LOADARGS_N [BZ #25902] +- locale/tst-localedef-path-norm: Don't create $(complocaledir) +- support: Set errno before testing it. +- localedef: Add tests-container test for --no-hard-links. +- test-container: Support $(complocaledir) and mkdirp. +- i386: Remove unused variable in sysdeps/x86/cacheinfo.c +- Add a C wrapper for prctl [BZ #25896] +- powerpc64le: Enable support for IEEE long double +- powerpc64le: blacklist broken GCC compilers (e.g GCC 7.5.0) +- powerpc64le: bump binutils version requirement to >= 2.26 +- powerpc64le: raise GCC requirement to 7.4 for long double transition +- Rename __LONG_DOUBLE_USES_FLOAT128 to __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI +- ldbl-128ibm-compat: workaround GCC 9 C++ PR90731 +- x86: Add the test case of __get_cpu_features support for Zhaoxin processors +- x86: Add cache information support for Zhaoxin processors +- x86: Add CPU Vendor ID detection support for Zhaoxin processors +- Update translations +- Add C wrappers for process_vm_readv/process_vm_writev [BZ #25810] +- generic/typesizes.h: Add support for 32-bit arches with 64-bit types +- semctl: Remove the sem-pad.h file +- bits/sem.h: Split out struct semid_ds +- Mark unsigned long arguments with U in more syscalls [BZ #25810] +- elf: Add initial flag argument to __libc_early_init +- Add SYSCALL_ULONG_ARG_[12] to pass long to syscall [BZ #25810] +- Makeconfig: Use $(error ...) to output error message +- manual: Fix typos in the fexecve description +- misc: Remove sstk from the autogenerated system call list +- Remove unused floating-point configuration from gmp-impl.h. +- support: Implement key create/delete +- nptl/tst-setuid1-static: Improve isolation from system objects +- Increase the timeout of locale/tst-localedef-path-norm +- Use 2020 as copyright year. +- misc: Turn sstk into a compat symbol +- manual: Document the fexecve function +- nptl: Start new threads with all signals blocked [BZ #25098] +- localedef: Add verbose messages for failure paths. +- Remove most gmp-mparam.h headers. +- elf: Implement __libc_early_init +- elf: Introduce +- Add a syscall test for [BZ #25810] +- elf: Support lld-style link map for librtld.map +- signal: Only handle on NSIG signals on signal functions (BZ #25657) +- linux: Use pthread_sigmask on sigprocmask +- ia64: Remove sigprocmask/sigblock objects from libpthread +- nptl: Move pthread_sigmask implementation to libc +- Bug 25819: Update to Unicode 13.0.0 + +* Wed Apr 29 2020 Florian Weimer - 2.31.9000-12 +- nss_db.x86_64 should install nss_db.i686 if glibc.i686 is installed (#1807821) +- Likewise for nss_hesiod. + +* Mon Apr 27 2020 Florian Weimer - 2.31.9000-11 +- Introduce glibc-headers-x86, glibc-headers-s390 packages (#1828332) +- Remove the glibc-headers package + +* Mon Apr 20 2020 DJ Delorie - 2.31.9000-10 +- Auto-sync with upstream branch master, + commit 0798b8ecc8da8667362496c1217d18635106c609. +- ARC: Update syscall-names.list for ARC specific syscalls +- Revert "x86_64: Add SSE sfp-exceptions" +- provide y2038 safe socket constants for default/asm-generic ABI +- x86_64: Add SSE sfp-exceptions +- Remove __NO_MATH_INLINES +- i686: Add INTERNAL_SYSCALL_NCS 6 argument support +- Reset converter state after second wchar_t output (Bug 25734) +- Fix typo in posix/tst-fnmatch.input (Bug 25790) + +* Wed Apr 15 2020 Patsy Griffin - 2.31.9000-9 +- Auto-sync with upstream branch master, + commit 076f09afbac1aa57756faa7a8feadb7936a724e4. +- Linux: Remove and the sysctl function +- posix: Add wait4 test case +- linux: wait4: Fix incorrect return value comparison +- hurd: add mach_print function +- x32: Properly pass long to syscall [BZ #25810] +- Add GRND_INSECURE from Linux 5.6 to sys/random.h +- Update kernel version to 5.6 in tst-mman-consts.py. + +* Wed Apr 15 2020 Florian Weimer - 2.31.9000-8 +- nsswitch.conf: don't add sss to shadow line + +* Wed Apr 08 2020 Carlos O'Donell - 2.31.9000-7 +- Auto-sync with upstream branch master, + commit b1caa144c74678097cada5a54eda2996bb459d8f. +- Update mips libm-test-ulps +- Update alpha libm-test-ulps +- Update ia64 libm-test-ulps +- Update sparc libm-test-ulps +- Update arm libm-test-ulps +- Update aarch64 libm-test-ulps +- Updates to the shn_MM locale [BZ #25532] +- powerpc: Update ULPs and xfail more ibm128 outputs +- i386: Remove build support for GCC older than GCC 6 +- oc_FR locale: Fix spelling of April (bug 25639) +- Update hppa libm-test-ulps +- y2038: linux: Provide __mq_timedreceive_time64 implementation +- y2038: linux: Provide __mq_timedsend_time64 implementation +- y2038: include: Move struct __timespec64 definition to a separate file +- malloc: ensure set_max_fast never stores zero [BZ #25733] +- powerpc64le: enforce non-specific long double in .gnu.attributes section +- powerpc64le: workaround ieee long double / _Float128 stdc++ bug +- powerpc64le: Enforce -mabi=ibmlongdouble when -mfloat128 used +- powerpc64le/multiarch: don't generate strong aliases for fmaf128-ppc64 +- ldbl-128ibm: simplify iscanonical.h +- i386: Disable check_consistency for GCC 5 and above [BZ #25788] +- Add IPPROTO_ETHERNET and IPPROTO_MPTCP from Linux 5.6 to netinet/in.h. +- Update syscall lists for Linux 5.6. +- elf: Implement DT_AUDIT, DT_DEPAUDIT support [BZ #24943] +- elf: Simplify handling of lists of audit strings +- support: Change xgetline to return 0 on EOF +- nptl: Remove x86_64 cancellation assembly implementations [BZ #25765] +- aarch64: update bits/hwcap.h +- Add tests for Safe-Linking +- S390: Regenerate ULPs. +- sysv/alpha: Use generic __timeval32 and helpers +- linux: Use long time_t for wait4/getrusage +- resource: Add a __rusage64 struct +- linux: Use long time_t __getitimer/__setitimer +- sysv: Define __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64 +- math: Add inputs that yield larger errors for float type (x86_64) + +* Tue Mar 31 2020 DJ Delorie - 2.31.9000-6 +- Auto-sync with upstream branch master, + commit 49c3c37651e2d2ec4ff8ce21252bbbc08a9d6639. +- Fix alignment bug in Safe-Linking +- Typo fixes and CR cleanup in Safe-Linking +- Use Linux 5.6 and GMP 6.2.0 in build-many-glibcs.py. +- Add new file missed in previous hppa commit. +- powerpc: Add support for fmaf128() in hardware +- Fix data race in setting function descriptors during lazy binding on hppa. +- sparc: Move __fenv_{ld,st}fsr to fenv-private.h +- x86: Remove feraiseexcept optimization +- math: Remove fenvinline.h +- hurd: Make O_TRUNC update mtime/ctime +- Add Safe-Linking to fastbins and tcache +- Add benchtests for roundeven and roundevenf. +- time: Add a __itimerval64 struct +- time: Add a timeval with a 32-bit tv_sec and tv_usec +- sysv/linux: Rename alpha functions to be alpha specific +- ARC: add definitions to elf/elf.h +- powerpc64: apply -mabi=ibmlongdouble to special files +- powerpc64le: add -mno-gnu-attribute to *f128 objects and difftime +- Makeconfig: sandwich gnulib-tests between libc/ld linking of tests +- powerpc64le: Ensure correct ldouble compiler flags are used +- Fix tests which expose ldbl -> _Float128 redirects +- ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally + +* Wed Mar 25 2020 Patsy Franklin - 2.31.9000-5 +- Auto-sync with upstream branch master, + commit 4eda036f5b897fa8bc20ddd2099b5a6ed4239dc9. +- stdlib: Move tst-system to tests-container +- support/shell-container.c: Add builtin kill +- support/shell-container.c: Add builtin exit +- support/shell-container.c: Return 127 if execve fails +- Add NEWS entry for CVE-2020-1751 (bug 25423) +- posix: Fix system error return value [BZ #25715] +- y2038: fix: Add missing libc_hidden_def attribute for some syscall wrappers +- Extended Char Intro: Use getwc in example (Bug 25626) +- stdio: Add tests for printf multibyte convertion leak [BZ#25691] +- stdio: Remove memory leak from multibyte convertion [BZ#25691] +- Add NEWS entry for CVE-2020-1752 (bug 25414) +- math: Remove inline math tests +- Remove __LIBC_INTERNAL_MATH_INLINES +- math: Remove mathinline +- m68k: Remove mathinline.h +- oc_FR locale: Fix spelling of Thursday (bug 25639) +- x86: Remove ARCH_CET_LEGACY_BITMAP [BZ #25397] +- Fix build with GCC 10 when long double = double. +- nscd/cachedumper.c : fix whitespace +- Fix nscd/cachedumper.c compile errors +- manual: Fix inconsistent declaration of wcsrchr [BZ #24655] +- nscd: add cache dumper + +* Fri Mar 13 2020 Patsy Franklin - 2.31.9000-4 +- Auto-sync with upstream branch master, + commit 2de7fe62534b7a6461c633114f03e9dff394f5f7. +- parse_tunables: Fix typo in comment +- ldconfig: trace origin paths with -v +- test-container: print errno when execvp fails +- [AArch64] Improve integer memcpy +- Add NEWS entry for CVE-2020-10029 (bug 25487) +- gcc PR 89877: miscompilation due to missing cc clobber in longlong.h macros +- mips: Fix wrong INTERNAL_SYSCALL_ERROR_P check from bc2eb9321e +- elf: Fix wrong indentation from commit eb447b7b4b +- y2038: linux: Provide __futimesat64 implementation +- y2038: linux: Provide __lutimes64 implementation +- y2038: linux: Provide __futimes64 implementation +- y2038: fix: Add missing libc_hidden_def for __futimens64 +- sparc: Move sigreturn stub to assembly +- ldbl-128ibm: Let long double files have specific compiler flags +- ldbl-128ibm-compat: Add tests for IBM long double functions +- powerpc: Fix feraiseexcept and feclearexcept macros +- arm: Fix softp-fp Implies (BZ #25635) +- Remove reference of --without-fp on configure +- linux/sysipc: Include linux/posix_types.h for __kernel_mode_t +- Improve IFUNC check [BZ #25506] +- linux: Clear mode_t padding bits (BZ#25623) +- linux: Remove aarch64 ipc_priv.h +- Linux: Use __fstatat64 in fchmodat implementation +- Linux: Use AT_FDCWD in utime, utimes when calling utimensat +- S390: Remove backchain-based fallback and use generic backtrace.c. +- manual: Fix wrong declaration of wcschr [BZ #24654] +- manual: Fix typo in parse_printf_format example [BZ #24638] + +* Thu Mar 5 2020 Florian Weimer - 2.31.9000-3 +- Emergency patch for broken utimes/utime functions + +* Tue Mar 03 2020 Patsy Franklin - 2.31.9000-2 +- Auto-sync with upstream branch master, + commit 78c9d0c6efabe2067ef7f93cd36325f54c60adc2. +- Update translations +- Convert Python scripts to Python 3 +- alpha: Do not build with -fpic +- y2038: linux: Provide __utime64 implementation +- y2038: linux: Provide __utimes64 implementation +- y2038: Introduce struct __utimbuf64 - new internal glibc type +- microblaze: vfork is always available +- m68k: getpagesize syscall number is always available +- Linux: epoll_pwait syscall number is always available +- x86_64: Do not define __NR_semtimedop in +- ia64: Do not define __NR_semtimedop in +- Linux: open_by_handle_at syscall number is always available +- Linux: set_robust_list syscall number is always available +- Linux: pciconfig_iobase syscall number is always available on alpha +- Linux: getdents64 syscall number is always available on MIPS +- Linux: Clean up preadv2, pwritev2 system call names +- Linux: exit_group syscall number is always available +- Linux: set_tid_address syscall number is always available +- Linux: pkey_mprotect syscall number is always available +- Linux: rt_sigqueueinfo syscall number is always available +- Linux: getrandom syscall number is always available +- Linux: Clean up preadv, pwritev system call names +- Linux: Clean up pread64/pwrite64 system call names +- Linux: sigaltstack syscall number is always available +- Linux: sched_getaffinity syscall number is always available +- Linux: sched_setaffinity syscall number is always available +- Linux: statx syscall number is always available +- Linux: mq_* syscall numbers are always available +- Linux: mlock2 syscall number is always available +- Linux: copy_file_range syscall number is always available +- Linux: renameat2 syscall number is always available +- build-many-glibcs.py: Add list-compilers, list-glibcs commands +- build-many-glibcs.py: Add --shallow option +- Fixed typo in run_command_array() in support/shell-container.c +- Add missing libc_hidden_def for __utimensat64 +- elf: Add elf/check-wx-segment, a test for the presence of WX segments +- i386: Use comdat instead of .gnu.linkonce for i386 setup pic register (BZ #20543) +- ldbl-128ibm-compat: link tst-ldbl-efgcvt against loader too +- ldbl-128ibm-compat: enforce ibm128 on compat tests +- ldbl-128ibm-compat: Provide nexttoward functions +- ldbl-128ibm-compat: Provide a significand implementation +- ldbl-128ibm-compat: Redirect complex math functions +- ldbl-128ibm-compat: Redirect long double functions to f128/ieee128 functions +- posix: Remove posix waitid +- posix: Refactor tst-waitid (BZ #14666) +- support: Add support_process_state_wait +- malloc/tst-mallocfork2: Kill lingering process for unexpected failures + +* Wed Feb 26 2020 Patsy Franklin - 2.31.9000-1 +- Auto-sync with upstream branch master, + commit 758599bc9dcc5764e862bd9e1613c5d1e6efc5d3. +- elf: Apply attribute_relro to pointers in elf/dl-minimal.c +- powerpc: Refactor fenvinline.h +- nss_nis: Use NSS_DECLARE_MODULE_FUNCTIONS +- csu: Use ELF constructor instead of _init in libc.so +- ldbl-128ibm: make ieee754.h work with IEEE 128 long double +- ldbl-128ibm-compat: fixup subdir location of several funcs +- ldbl-128ibm-compat: enforce correct abi flags on internal file +- ldbl-128ibm-compat: Provide ieee128 symbols to narrow functions +- Undefine redirections after long double definition on __LDBL_COMPAT [BZ #23294] +- nios2: Fix Linux kABI for syscall return +- Fix use-after-free in glob when expanding ~user (bug 25414) +- nptl: Move pthread_setschedparam implementation into libc +- nptl: Move pthread_getschedparam implementation into libc +- Add hidden prototypes for __sched_getparam, __sched_getscheduler +- nptl: Move pthread_cond_init implementation into libc +- nptl: Move pthread_cond_destroy implementation into libc +- nptl: Move pthread_condattr_init implementation into libc +- nptl: Move pthread_condattr_destroy implementation into libc +- nptl: Move pthread_attr_setscope implementation into libc +- nptl: Move pthread_attr_getscope implementation into libc +- nptl: Move pthread_attr_setschedpolicy implementation into libc +- nptl: Move pthread_attr_getschedpolicy implementation into libc +- nptl: Sort routines list in Makefile alphabetically +- nptl: Use .NOTPARALLEL in Makefile only if actually running tests +- Block all signals on timer_create thread (BZ#10815) +- Fix tst-pkey expectations on pkey_get [BZ #23202] +- y2038: linux: Provide __gettimeofday64 implementation +- Linux: Work around kernel bugs in chmod on /proc/self/fd paths [BZ #14578] +- Introduce and ELF_INITFINI for all architectures +- mips: Fix bracktrace result for signal frames +- Move implementation of into a C file +- : Add type safety and port to Hurd +- Prepare redirections for IEEE long double on powerpc64le +- conform/conformtest.py: Extend tokenizer to cover character constants +- stdlib: Reduce namespace pollution in +- x86: Avoid single-argument _Static_assert in +- x86 tls: Use _Static_assert for TLS access size assertion +- htl: Link internal htl tests against libpthread +- pthread: Fix building tst-robust8 with nptl +- pthread: Move robust mutex tests from nptl to sysdeps/pthread +- htl: Remove stub warning for pthread_mutexattr_setpshared +- htl: Add missing functions and defines for robust mutexes +- htl: Only check pthread_self coherency when DEBUG is set +- hurd: Add THREAD_GET/SETMEM/_NC +- hurd tls: update comment about fields at the end of tcbhead +- ld.so: Do not export free/calloc/malloc/realloc functions [BZ #25486] +- Remove weak declaration of free from +- elf: Extract _dl_sym_post, _dl_sym_find_caller_map from elf/dl-sym.c +- elf: Introduce the rtld-stubbed-symbols makefile variable +- arm: fix use of INTERNAL_SYSCALL_CALL +- linux: Remove INTERNAL_SYSCALL_DECL +- nptl: Remove ununsed pthread-errnos.h rule +- linux: Consolidate INLINE_SYSCALL +- s390: Consolidate Linux syscall definition +- riscv: Avoid clobbering register parameters in syscall +- microblaze: Avoid clobbering register parameters in syscall +- nios2: Use Linux kABI for syscall return +- mips: Use Linux kABI for syscall return +- mips64: Consolidate Linux sysdep.h +- ia64: Use Linux kABI for syscall return +- alpha: Refactor syscall and Use Linux kABI for syscall return +- sparc: Avoid clobbering register parameters in syscall +- sparc: Use Linux kABI for syscall return +- powerpc: Use Linux kABI for syscall return +- powerpc: Consolidate Linux syscall definition +- i386: Enable CET support in ucontext functions +- tst-clone3: Use __NR_futex_time64 if we don't have __NR_futex +- powerpc64: Add memory protection key support [BZ #23202] +- ldbl-128ibm-compat: Provide a scalb implementation +- Add a generic scalb implementation +- Adjust thresholds in Bessel function implementations (bug 14469). +- resolv: Fix ABA race in /etc/resolv.conf change detection [BZ #25420] +- resolv: Enhance __resolv_conf_load to capture file change data +- resolv: Fix file handle leak in __resolv_conf_load [BZ #25429] +- resolv: Use in __resolv_conf_get_current +- Add STATX_ATTR_VERITY from Linux 5.5 to bits/statx-generic.h. +- Use gcc -finput-charset=ascii for check-installed-headers. +- math/test-sinl-pseudo: Use stack protector only if available +- alpha: Fix static gettimeofday symbol +- nss_nisplus: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss_dns: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss_files: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss_db: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss_compat: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss_hesiod: Use NSS_DECLARE_MODULE_FUNCTIONS +- nss: Add function types and NSS_DECLARE_MODULE_FUNCTIONS macro to +- nss_compat: Do not use nss_* names for function pointers +- Avoid ldbl-96 stack corruption from range reduction of pseudo-zero (bug 25487). +- mips: Fix argument passing for inlined syscalls on Linux [BZ #25523] +- mips: Use 'long int' and 'long long int' in linux syscall code +- alpha: Use generic gettimeofday implementation +- sunrpc: Properly clean up if tst-udp-timeout fails +- elf: avoid stack allocation in dl_open_worker +- elf: avoid redundant sort in dlopen +- elf: Allow dlopen of filter object to work [BZ #16272] +- Update translations +- Rename RWF_WRITE_LIFE_NOT_SET to RWH_WRITE_LIFE_NOT_SET following Linux 5.5. +- S390: Fix non-ascii character in fenv.h. +- io: Add io/tst-lchmod covering lchmod and fchmodat +- Linux: Emulate fchmodat with AT_SYMLINK_NOFOLLOW using O_PATH [BZ #14578] +- io: Implement lchmod using fchmodat [BZ #14578] +- Add internal header file +- elf.h: Add R_RISCV_IRELATIVE +- Fix typo in the name for Wednesday in Kurdish [BZ #9809] +- debug: Add missing locale dependencies of fortify tests +- htl C11 threads: Avoid pthread_ symbols visibility in static library +- hurd: Add __pthread_spin_wait and use it +- ldbl-128ibm-compat: set PRINTF_CHK flag in {,v}sprintf_chk +- Use --disable-gdbserver in build-many-glibcs.py. +- Improve random memcpy benchmark +- nptl: update default pthread-offsets.h +- nptl: add missing pthread-offsets.h +- htl: Avoid a local plt for pthread_self +- pthread: Move some join tests from nptl to sysdeps/pthread +- htl: Make joining self return EDEADLK +- pthread: Move most barrier tests from nptl to sysdeps/pthread +- htl: Fix barrier_wait with one thread +- pthread: Move most sem tests from nptl to sysdeps/pthread +- htl: Make sem_wait/sem_timedwait interruptible +- htl: Make sem_open return ENOSYS +- htl: Add support for semaphore maximum value +- pthread: Move key tests from nptl to sysdeps/pthread +- hurd: Make nanosleep a cancellation point +- htl: Add support for libc cancellation points +- htl: clean __pthread_get_cleanup_stack hidden proto +- htl: XFAIL rwlock tests which need pshared support +- pthread: Move some rwlock tests from nptl to sysdeps/pthread +- pthread: Move most once tests from nptl to sysdeps/pthread +- htl: support cancellation during pthread_once +- pthread: Move most cond tests from nptl to sysdeps/pthread +- htl: make pthread_cond_destroy return EBUSY on waiters +- htl: Report missing mutex lock on pthread_cond_*wait +- htl: Fix linking static testcases +- htl: Move __register_atfork from forward to own file +- pthread: Move some attr tests from nptl to sysdeps/pthread +- htl: Fix default guard size +- pthread: Move most mutex tests from nptl to sysdeps/pthread +- pthread: Move spin tests from nptl to sysdeps/pthread +- htl: make pthread_spin_lock really spin +- htl: Avoid check-installed-headers looking at inlines +- htl: Do not put spin_lock inlines in public headers +- pthread: Move basic tests from nptl to sysdeps/pthread +- htl: Fix calling pthread_exit in the child of a fork +- x86: Remove and use the generic version +- C11 threads: Move implementation to sysdeps/pthread +- htl: Add C11 threads types definitions +- C11 threads: make thrd_join more portable +- C11 threads: Fix thrd_t / pthread_t compatibility assertion +- C11 threads: do not require PTHREAD_DESTRUCTOR_ITERATIONS +- nptl: Move nptl-specific types to separate header +- htl: Make __PTHREAD_ONCE_INIT more flexible +- htl: Add support for C11 threads behavior +- htl: Add missing internal functions declarations +- htl: Rename _pthread_mutex_init/destroy to __pthread_mutex_init/destroy +- htl: Move internal mutex/rwlock symbols to GLIBC_PRIVATE +- Linux: Add io/tst-o_path-locks test +- support: Add the xlstat function +- htl: Remove duplicate files +- htl: Remove unused files +- resolv: Fix CNAME chaining in resolv/tst-resolv-ai_idn-common.c +- Remove a comment claiming that sin/cos round correctly. +- y2038: linux: Provide __settimeofday64 implementation +- y2038: Provide conversion helpers for struct __timeval64 +- y2038: alpha: Rename valid_timeval64_to_timeval to valid_timeval_to_timeval32 +- y2038: alpha: Rename valid_timeval_to_timeval64 to valid_timeval32_to_timeval +- y2038: Introduce struct __timeval64 - new internal glibc type +- y2038: Define __suseconds64_t type to be used with struct __timeval64 +- Update kernel version to 5.5 in tst-mman-consts.py. +- Update syscall lists for Linux 5.5. +- NEWS: Set fill-column hint to 72 +- y2038: linux: Provide __timespec_get64 implementation +- Use binutils 2.34 branch in build-many-glibcs.py. +- Run nptl/tst-pthread-getattr in a container +- test-container: add exec, cwd +- Use Linux 5.5 in build-many-glibcs.py. +- rt: avoid PLT setup in timer_[sg]ettime +- Update or_IN collation [BZ #22525] +- Fix ckb_IQ [BZ #9809] +- Add new locale: ckb_IQ (Kurdish/Sorani spoken in Iraq) [BZ #9809] +- list-fixed-bugs.py: Wrap at 72 chars +- y2038: linux: Provide __sched_rr_get_interval64 implementation +- y2038: linux: Provide __timerfd_settime64 implementation +- y2038: linux: Provide __timerfd_gettime64 implementation +- i386: Remove _exit.S +- i386: Use ENTRY/END in assembly codes +- i386-mcount.S: Add _CET_ENDBR to _mcount and __fentry__ +- i386/sub_n.S: Add a missing _CET_ENDBR to indirect jump target +- i386: Don't unnecessarily save and restore EAX, ECX and EDX [BZ# 25262] +- x86: Don't make 2 calls to dlerror () in a row +- Open master for 2.32 development + +* Mon Feb 03 2020 DJ Delorie - 2.31-1 +- Auto-sync with upstream branch release/2.31/master, + commit 9ea3686266dca3f004ba874745a4087a89682617. +- glibc 2.31 release +- Generate ChangeLog.old/ChangeLog.20 for 2.31 +- Add bugs fixed in 2.31 in NEWS +- Update newest tested versions of dependencies in install.texi +- Add more contributors to the manual +- Add note to NEWS about kernel headers dependency on risc-v +- Add Portuguese (Portugal) translation +- Add NEWS entry about 64-bit time_t syscall use on 32-bit targets +- nptl: Avoid using PTHREAD_MUTEX_DEFAULT in macro definition [BZ #25271] + +* Thu Jan 30 2020 Patsy Franklin - 2.30.9000-33 +- Auto-sync with upstream branch master, + commit 352bb99754ae7c83ff1b974f9c52244e974c9410. +- Build raise with -fasynchronous-unwind-tables. +- Fix locale/tst-locale-locpath cross-testing when sshd sets LANG. +- Fix elf/tst-rtld-preload cross-testing. +- Fix cross-testing of tst-ifunc-fault-* tests. +- gitlog-to-changelog: Drop scripts in favour of gnulib version +- Add NEWS entry about the change in handling of PT_GNU_STACK on MIPS +- Fix array overflow in backtrace on PowerPC (bug 25423) +- getaddrinfo: Fix resource leak after strdup failure in gethosts (swbz#25425) + +* Tue Jan 28 2020 Fedora Release Engineering +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Jan 20 2020 Patsy Franklin - 2.30.9000-31 +- Auto-sync with upstream branch master, + commit 92ce43eef7ac844782d50a8015d977d216fbadec. +- Run bench-timing-type with newly built libc. +- Get rid of Werror=maybe-uninitialized in res_send.c. +- translations: Update translations +- translations: Trim po files using msgattrib +- Update translations +- translations: Run msgmerge when downloading translations +- Fix maybe-uninitialized error on powerpc +- powerpc32: Fix syntax error in __GLRO macro +- Remove incorrect alloc_size attribute from pvalloc (swbz#25401) + +* Fri Jan 17 2020 Florian Weimer - 2.30.9000-30 +- Auto-sync with upstream branch master, + commit 70ba28f7ab2923d4e36ffc9d5d2e32357353b25c: +- Fix tst-pkey.c pkey_alloc return checks and manual +- powerpc: Move cache line size to rtld_global_ro +- powerpc: Initialize rtld_global_ro for static dlopen (swbz#20802) +- Revert outdated translations +- vcs-to-changelog: Add quirk for __nonnull +- elf: Add elf/tst-dlopenfail-2 (swbz#25396, #1395758) +- Clear GL(dl_initfirst) when freeing its link_map (swbz#25396, #1395758) +- Update Translations +- Fix "elf: Add tst-ldconfig-ld_so_conf-update test" on 32bit. +- elf: Add tst-ldconfig-ld_so_conf-update test +- sl_SI locale: Use "." as the thousands separator (swbz#25233) + +* Mon Jan 06 2020 Arjun Shankar - 2.30.9000-29 +- Auto-sync with upstream branch master, + commit cbce69e70dc4b04fefcc7257e593733b8b03856c: +- Multiple locales: Add date_fmt (bug 24054) +- Update libc.pot for 2.31 release +- Add libm_alias_finite for _finite symbols +- Linux: Fix clock_nanosleep time64 check +- linux: Fix vDSO macros build with time64 interfaces +- x86: Make x32 use x86 time implementation +- Remove vDSO support from make-syscall.sh +- linux: Update x86 vDSO symbols +- linux: Update mips vDSO symbols +- linux: Consolidate Linux gettimeofday +- linux: Consolidate time implementation +- elf: Enable relro for static build +- elf: Move vDSO setup to rtld (BZ#24967) +- linux: Add support for clock_gettime64 vDSO +- linux: Optimize fallback 32-bit clock_gettime +- linux: Enable vDSO clock_gettime64 for i386 +- linux: Enable vDSO clock_gettime64 for arm +- linux: Enable vDSO clock_gettime64 for mips +- linux: Add support for clock_getres64 vDSO +- linux: Optimize fallback 32-bit clock_getres +- htl: Use dso_handle.h +- htl: Drop common tcbhead_t definition +- htl: Move pthread_atfork to libc_nonshared.a +- htl: Add __errno_location and __h_errno_location +- hurd: Fix message reception for timer_thread + +* Thu Jan 02 2020 Florian Weimer - 2.30.9000-28 +- Auto-sync with upstream branch master, + commit cc47d5c5f53f6d845ac54698ae8929af15662c44: +- Linux: Use built-in system call tables +- lv_LV locale: Correct the time part of d_t_fmt (swbz#25324) +- km_KH locale: Use "%M" instead of "m" in d_t_fmt (swbz#25323) +- ldbl-128ibm-compat: Do not mix -mabi=*longdouble and -mlong-double-128 +- ldbl-128ibm-compat: Compiler flags for stdio functions +- Do not redirect calls to __GI_* symbols, when redirecting to *ieee128 +- aarch64: add default memcpy version for kunpeng920 +- aarch64: ifunc rename for kunpeng +- aarch64: Modify error-shown comments for strcpy +- linux: Consolidate sigprocmask +- Fix return code for __libc_signal_* functions +- nptl: Remove duplicate internal __SIZEOF_PTHREAD_MUTEX_T (swbz#25241) + +* Thu Dec 26 2019 Carlos O'Donell - 2.30.9000-27 +- Auto-sync with upstream branch master, + commit b8c210bcc74840d24c61d39bde15bea9daf3e271. +- mnw_MM, my_MM, and shn_MM locales: Do not use %Op +- Avoid compat symbols for totalorder in powerpc64le IEEE long double +- ldbl-128ibm-compat: Add *cvt functions +- Refactor *cvt functions implementation (2/2) +- Refactor *cvt functions implementation (1/2) +- Add exception-based flags for wait4 +- aarch64: Optimized memset for Kunpeng processor. +- aarch64: Optimized strlen for strlen_asimd +- aarch64: Add Huawei Kunpeng to tunable cpu list +- aarch64: Optimized implementation of memrchr +- aarch64: Optimized implementation of strnlen +- aarch64: Optimized implementation of strcpy +- aarch64: Optimized implementation of memcmp +- Consolidate wait3 implementations +- Implement waitpid in terms of wait4 +- linux: Use waitid on wait4 if __NR_wait4 is not defined +- Implement wait in terms of waitpid +- nptl: Move waitpid implementation to libc +- nptl: Move wait implementation to libc +- Remove __waitpid_nocancel +- Fix test isolation for elf/tst-ifunc-fault-lazy, elf/tst-ifunc-fault-bindnow +- Fix __libc_signal_block_all on sparc64 +- powerpc: Do not run IFUNC resolvers for LD_DEBUG=unused [BZ #24214] + +* Thu Dec 19 2019 Patsy Franklin - 2.30.9000-26 +- Auto-sync with upstream branch master, + commit 3dcad8158f43d71d5b8f6f317f82952ddf3468f3. +- hurd: Do not make sigprocmask available in ld.so +- build-many-glibcs.py: Do not build C++ PCHs by default +- hurd: Make getrandom honour GRND_NONBLOCK +- tunables: report sbrk() failure +- build-many-glibcs.py: Add mipsisa64r6el-linux-gnu target +- mips: Do not include hi and lo in __SYSCALL_CLOBBERS for R6 +- ldbl-128ibm-compat: Add ISO C99 versions of scanf functions +- ldbl-128ibm-compat: Fix selection of GNU and ISO C99 scanf +- hurd: Fix local PLT +- dlopen: Do not block signals +- dlopen: Rework handling of pending NODELETE status +- dlopen: Fix issues related to NODELETE handling and relocations +- hurd: Fix __close_nocancel_nostatus availability +- hurd: add getrandom and getentropy implementations +- hurd: Implement __close_nocancel_nostatus +- manual: clarify fopen with the x flag +- S390: Use sysdeps/ieee754/dbl-64/wordsize-64 on s390x. +- S390: Implement roundtoint and converttoint and define TOINT_INTRINSICS. +- S390: Implement math-barriers math_opt_barrier and math_force_eval. +- S390: Use libc_fe* macros in fe* functions. +- S390: Implement libc_fe* macros. +- S390: Use convert-to-fixed instruction for llround functions. +- S390: Use convert-to-fixed instruction for lround functions. +- S390: Use convert-to-fixed instruction for llrint functions. +- S390: Use convert-to-fixed instruction for lrint functions. +- S390: Use load-fp-integer instruction for roundeven functions. +- Adjust s_copysignl.c regarding code style. +- Adjust s_ceilf.c and s_ceill.c regarding code style. +- Adjust s_floorf.c and s_floorl.c regarding code style. +- Adjust s_rintf.c and s_rintl.c regarding code style. +- Adjust s_nearbyintf.c and s_nearbyintl.c regarding code style. +- Use GCC builtins for copysign functions if desired. +- Use GCC builtins for round functions if desired. +- Use GCC builtins for trunc functions if desired. +- Use GCC builtins for ceil functions if desired. +- Use GCC builtins for floor functions if desired. +- Use GCC builtins for rint functions if desired. +- Use GCC builtins for nearbyint functions if desired. +- Always use wordsize-64 version of s_round.c. +- Always use wordsize-64 version of s_trunc.c. +- Always use wordsize-64 version of s_ceil.c. +- Always use wordsize-64 version of s_floor.c. +- Always use wordsize-64 version of s_rint.c. +- Always use wordsize-64 version of s_nearbyint.c. +- ldconfig: Do not print a warning for a missing ld.so.conf file +- hurd: Fix using altstack while in an RPC call to be aborted +- Fix failure when CFLAGS contains -DNDEBUG (Bug 25251) + +* Mon Dec 09 2019 DJ Delorie - 2.30.9000-25 +- Auto-sync with upstream branch master, + commit 0487ebed2278b20971af4cabf186fd3681adccf0. +- nptl: Add more missing placeholder abi symbol from nanosleep move +- sysdeps/riscv/start.S: rename .Lload_gp to load_gp (bug 24376) +- y2038: linux: Provide __timer_settime64 implementation +- y2038: linux: Provide __timer_gettime64 implementation +- timer: Decouple x86_64 specific timer_settime from generic Linux implementation +- timer: Decouple x86_64 specific timer_gettime from generic Linux implementation +- time: Introduce glibc's internal struct __itimerspec64 +- Correct range checking in mallopt/mxfast/tcache [BZ #25194] +- misc/test-errno-linux: Handle EINVAL from quotactl +- : Define __CORRECT_ISO_CPP_STRING_H_PROTO for Clang [BZ #25232] +- build-many-glibcs.py: Move sparcv8 to extra_glibcs + +* Thu Dec 5 2019 Florian Weimer - 2.30.9000-24 +- Upstream patches for fallout from dlopen NODELETE changes (#1778344, #1778366) + +* Wed Dec 04 2019 Patsy Franklin - 2.30.9000-23 +- Auto-sync with upstream branch master, + commit ec138c67cbda8b5826a0a2a7ba456408117996dc. +- sysdeps: Add clock_gettime64 vDSO +- Do not use ld.so to open statically linked programs in debugglibc.sh +- Attach to test in container from debugglibc.sh +- Expand $(as-needed) and $(no-as-needed) throughout the build system +- x86: Assume --enable-cet if GCC defaults to CET [BZ #25225] +- ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold +- ldbl-128ibm-compat: Add tests for strfmon and strfmon_l +- ldbl-128ibm-compat: Add strfmon_l with IEEE long double format +- ldbl-128ibm-compat: Replace http with https in new files +- elf: Do not run IFUNC resolvers for LD_DEBUG=unused [BZ #24214] +- elf/tst-dlopenfail: Disable --no-as-needed for tst-dlopenfailmod1.so +- hurd: Fix ld.so __access override from libc +- hurd: Fix ld.so __getcwd override from libc +- hurd: Make __sigprocmask GLIBC_PRIVATE +- hurd: Fix renameat2 error +- hurd: make strerror(0) coherent with other ports +- hurd: Fix ld.so link +- Update kernel version to 5.4 in tst-mman-consts.py. +- Update SOMAXCONN value from Linux 5.4. +- Update syscall-names.list for Linux 5.4. +- Fix syntax error in build-many-glibcs.py. +- Define MADV_COLD and MADV_PAGEOUT from Linux 5.4. + +* Mon Dec 2 2019 Florian Weimer - 2.30.9000-22 +- dlopen: Remove incorrect assert in activate_nodelete (#1778344) + +* Thu Nov 28 2019 Florian Weimer - 2.30.9000-21 +- Auto-sync with upstream branch master, + commit e37c2cf299b61ce18f62852f6c5624c27829b610: +- Move _dl_open_check to its original place in dl_open_worker +- Block signals during the initial part of dlopen +- Remove all loaded objects if dlopen fails, ignoring NODELETE (#1395758) +- Avoid late dlopen failure due to scope, TLS slotinfo updates (swbz#25112) +- Avoid late failure in dlopen in global scope update (swbz#25112) +- Lazy binding failures during dlopen/dlclose must be fatal (swbz#24304) +- resolv: Implement trust-ad option for /etc/resolv.conf (#1164339) +- dlsym: Do not determine caller link map if not needed +- libio: Disable vtable validation for pre-2.1 interposed handles (swbz#25203) +- ldbl-128ibm-compat: Add syslog functions +- ldbl-128ibm-compat: Add obstack printing functions +- ldbl-128ibm-compat: Reuse tests for err.h and error.h functions +- ldbl-128ibm-compat: Add error.h functions +- ldbl-128ibm-compat: Add err.h functions +- ldbl-128ibm-compat: Add argp_error and argp_failure +- sparc: Use atomic compiler builtins on sparc +- Remove 32 bit sparc v7 support + +* Wed Nov 27 2019 Arjun Shankar - 2.30.9000-20 +- Auto-sync with upstream branch master, + commit bfdb731438206b0f70fe7afa890681155c30b419: +- rtld: Check __libc_enable_secure for LD_PREFER_MAP_32BIT_EXEC (CVE-2019-19126) +- Introduce DL_LOOKUP_FOR_RELOCATE flag for _dl_lookup_symbol_x +- Enable inlining issignalingf within glibc +- Don't use a custom wrapper macro around __has_include (bug 25189). +- Remove duplicate inline implementation of issignalingf +- misc: Set generic pselect as ENOSYS +- Use DEPRECATED_SCANF macro for remaining C99-compliant scanf functions +- ldbl-128ibm-compat: Add regular/wide character printing printing functions +- ldbl-128ibm-compat: Test double values and positional arguments +- ldbl-128ibm-compat: Add regular/wide character scanning functions +- arm: Fix armv7 selection after 'Split BE/LE abilist' +- Use Linux 5.4 in build-many-glibcs.py. +- sysdeps/posix: Simplify if expression in getaddrinfo +- sysdeps/posix/getaddrinfo: Return early on invalid address family +- ru_UA locale: use copy "ru_RU" in LC_TIME (bug 25044) +- locale: Greek -> ASCII transliteration table [BZ #12031] +- nptl: Cleanup mutex internal offset tests +- nptl: Add tests for internal pthread_rwlock_t offsets +- nptl: Remove rwlock elision definitions +- nptl: Add struct_mutex.h and struct_rwlock.h +- nptl: Add default pthreadtypes-arch.h and pthread-offsets.h +- Compile elf/rtld.c with -fno-tree-loop-distribute-patterns. +- nptl: Fix __PTHREAD_MUTEX_INITIALIZER for !__PTHREAD_MUTEX_HAVE_PREV +- S390: Fix handling of needles crossing a page in strstr z15 ifunc [BZ #25226] + +* Mon Nov 18 2019 Patsy Griffin - 2.30.9000-19 +- Auto-sync with upstream branch master, + commit 2a764c6ee848dfe92cb2921ed3b14085f15d9e79. +- Enhance _dl_catch_exception to allow disabling exception handling +- hurd: Suppress GCC 10 -Warray-bounds warning in init-first.c [BZ #25097] +- linux: Add comment on affinity set sizes to tst-skeleton-affinity.c +- Avoid zero-length array at the end of struct link_map [BZ #25097] +- Introduce link_map_audit_state accessor function +- Properly initialize audit cookie for the dynamic loader [BZ #25157] +- nios2: Work around backend bug triggered by csu/libc-tls.c (GCC PR 92499) +- Redefine _IO_iconv_t to store a single gconv step pointer [BZ #25097] +- Add new script for plotting string benchmark JSON output +- support: Fix support_set_small_thread_stack_size to build on Hurd +- login: Use pread64 in utmp implementation +- Clarify purpose of assert in _dl_lookup_symbol_x +- aarch64: Increase small and medium cases for __memcpy_generic +- login: Introduce matches_last_entry to utmp processing + +* Tue Nov 12 2019 Arjun Shankar - 2.30.9000-18 +- Auto-sync with upstream branch master, + commit cba932a5a9e91cffd7f4172d7e91f9b2efb1f84b: +- nptl: Move nanosleep implementation to libc +- Refactor nanosleep in terms of clock_nanosleep +- nptl: Refactor thrd_sleep in terms of clock_nanosleep +- math: enhance the endloop condition of function handle_input_flag +- hurd: Remove lingering references to the time function +- hurd: Use __clock_gettime in _hurd_select +- login: Remove double-assignment of fl.l_whence in try_file_lock +- nptl: Add missing placeholder abi symbol from nanosleep move +- login: Acquire write lock early in pututline [BZ #24882] +- Remove hppa pthreadP.h +- sysdeps/clock_nanosleep: Use clock_nanosleep_time64 if avaliable +- Fix array bounds violation in regex matcher (bug 25149) +- support: Add support_set_small_thread_stack_size +- linux: Reduce stack size for nptl/tst-thread-affinity-pthread +- y2038: linux: Provide __ppoll64 implementation +- Declare asctime_r, ctime_r, gmtime_r, localtime_r for C2X. +- support: Add xsetlocale function +- libio/tst-fopenloc: Use xsetlocale, xfopen, and xfclose +- Fix clock_nanosleep when interrupted by a signal +- slotinfo in struct dtv_slotinfo_list should be flexible array [BZ #25097] + +* Wed Nov 06 2019 Patsy Franklin - 2.30.9000-17 +- Auto-sync with upstream branch master, + commit 2a0356e1191804d57005e1cfe2a72f019b7a8cce. +- posix: Sync regex with gnulib +- Add mnw language code [BZ #25139] +- Add new locale: mnw_MM (Mon language spoken in Myanmar) [BZ #25139] +- S390: Fp comparison are now raising FE_INVALID with gcc 10. +- linux: pselect: Remove CALL_PSELECT6 macro +- Fix run-one-test so that it runs elf tests +- nptl: Fix niggles with pthread_clockjoin_np +- hppa: Align __clone stack argument to 8 bytes (Bug 25066) +- y2038: linux: Provide __futimens64 implementation +- y2038: linux: Provide __utimensat64 implementation +- nptl: Add pthread_timedjoin_np, pthread_clockjoin_np NULL timeout test +- nptl: Add pthread_clockjoin_np +- manual: Add documentation for pthread_tryjoin_np and pthread_timedjoin_np +- nptl: Convert tst-join3 to use libsupport +- Sync time/mktime.c with gnulib +- Sync timespec-{add,sub} with gnulib +- Sync intprops.h with gnulib +- Refactor adjtimex based on clock_adjtime +- Refactor PI mutexes internal definitions +- Remove pause and nanosleep not cancel wrappers +- nptl: Replace non cancellable pause/nanosleep with futex +- Consolidate lowlevellock-futex.h +- Consolidate futex-internal.h +- Base max_fast on alignment, not width, of bins (Bug 24903) +- Revise the documentation of simple calendar time. +- Make second argument of gettimeofday as 'void *' +- Use clock_gettime to implement gettimeofday. +- Use clock_gettime to implement timespec_get. +- Consolidate and deprecate ftime +- Change most internal uses of time to __clock_gettime. +- Use clock_gettime to implement time. +- Use clock_settime to implement settimeofday. +- Use clock_settime to implement stime; withdraw stime. +- Change most internal uses of __gettimeofday to __clock_gettime. +- Linux/Alpha: don't use timeval32 system calls. +- resolv/tst-idna_name_classify: Isolate from system libraries +- hurd: Support for file record locking +- Comment out initgroups from example nsswitch.conf (Bug 25146) + +* Mon Oct 28 2019 DJ Delorie - 2.30.9000-16 +- Auto-sync with upstream branch master, + commit 177a3d48a1c74d7b2cd6bfd48901519d25a5ecad. +- y2038: linux: Provide __clock_getres64 implementation +- time: Introduce function to check correctness of nanoseconds value +- Add Transliterations for Unicode Misc. Mathematical Symbols-A/B [BZ #23132] +- Install charmaps uncompressed in testroot +- Add wait-for-debugger test harness hooks +- Define __STATFS_MATCHES_STATFS64 +- hurd: Fix build after __pread64 usage in the dynamic loader +- sysdeps/stat: Handle 64-bit ino_t types on 32-bit hosts +- S390: Remove not needed stack frame in syscall function. + +* Fri Oct 25 2019 DJ Delorie - 2.30.9000-15 +- Add *.mo files to all-langpacks (#1624528) + +* Thu Oct 24 2019 DJ Delorie - 2.30.9000-14 +- Add Requires on basesystem for main package (#1757267) +- Add Requires on coreutils for glibc-headers (uses rm) + +* Wed Oct 23 2019 Arjun Shankar - 2.30.9000-13 +- Auto-sync with upstream branch master, + commit 7db1fe38de21831d53ceab9ae83493d8d1aec601: +- Include explicitly in Linux clock_settime.c +- Remove math-finite.h +- Remove finite-math tests +- Remove x64 _finite tests and references +- Fix testroot.pristine creation copying dynamic linker + +* Fri Oct 18 2019 Patsy Franklin - 2.30.9000-12 +- Auto-sync with upstream branch master, + commit ef21bd2d8c6805c0c186a01f7c5039189f51b8c4. +- loadarchive: guard against locale-archive corruption (Bug #25115) +- Undo accidental commit to ChangeLog.19. +- nptl: Document AS-safe functions in cancellation.c. +- elf: Use nocancel pread64() instead of lseek()+read() +- Add nocancel version of pread64() +- Add run-one-test convenience target and makefile help text +- Update sysvipc kernel-features.h files for Linux 5.1 +- S390: Add new s390 platform z15. +- nptl: SIGCANCEL, SIGTIMER, SIGSETXID are always defined +- nptl/tst-cancel25 needs to be an internal test +- Remove libc_hidden_def from __semtimedop stub +- sysvipc: Implement semop based on semtimedop +- ipc: Refactor sysvipc internal definitions +- Rename and split elf/tst-dlopen-aout collection of tests +- dlfcn: Remove remnants of caller sensitivity from dlinfo +- ldconfig: handle .dynstr located in separate segment (bug 25087) +- ldd: Print "not a dynamic executable" on standard error [BZ #24150] +- Add PTRACE_GET_SYSCALL_INFO from Linux 5.3 to sys/ptrace.h. +- Move ChangeLog to ChangeLog.old/ChangeLog.19 +- manual: Remove warning in the documentation of the abort function +- sysvipc: Set ipc_perm mode as mode_t (BZ#18231) +- Simplify note processing +- syscall-names.list: fix typos in comment +- y2038: linux: Provide __clock_settime64 implementation +- posix: Use posix_spawn for wordexp +- mips: Do not malloc on getdents64 fallback +- sparc: Assume GOTDATA support in the toolchain +- : Remove wrong comment about getdents64 declaration +- ChangeLog: Remove leading spaces before tabs and trailing whitespace +- Make tst-strftime2 and tst-strftime3 depend on locale generation +- posix/tst-wordexp-nocmd: Fix diagnostics output in test +- wordexp: Split out command execution tests from posix/wordexp-test + +* Tue Oct 08 2019 Arjun Shankar - 2.30.9000-11 +- Adjust glibc-rh741105.patch. +- Auto-sync with upstream branch master, + commit ca602c1536ce2777f95c07525f3c42d78812e665: +- Add TCP_TX_DELAY from Linux 5.3 to netinet/tcp.h +- [powerpc] fenv_private.h clean up +- [powerpc] libc_feupdateenv_test: optimize FPSCR access +- [powerpc] __fesetround_inline optimizations +- [powerpc] Rename fegetenv_status to fegetenv_control +- [powerpc] libc_feholdsetround_noex_ppc_ctx: optimize FPSCR write +- [powerpc] Rename fesetenv_mode to fesetenv_control +- Add helper script for glibc debugging +- Update bits/mman.h constants and tst-mman-consts.py for Linux 5.3. +- y2038: Provide conversion helpers for struct __timespec64 +- Use binutils 2.33 branch in build-many-glibcs.py. +- Sync "language", "lang_name", "territory", "country_name" with CLDR/langtable +- Split up endian.h to minimize exposure of BYTE_ORDER. +- time: Add padding for the timespec if required +- Enable passing arguments to the inferior in debugglibc.sh +- [powerpc] No need to enter "Ignore Exceptions Mode" +- Y2038: Include proper header to provide support for struct timeval on HURD +- Disable warnings in string/tester.c at top level. +- string/endian.h: Restore the __USE_MISC conditionals +- Disable -Wmaybe-uninitialized for total_deadline in sunrpc/clnt_udp.c. +- ChangeLog update from my last commit +- nptl: Move pthread_attr_setinheritsched implementation into libc. +- elf: Never use the file ID of the main executable [BZ #24900] +- elf: Assign TLS modid later during dlopen [BZ #24930] +- nptl: Move pthread_attr_getschedparam implementation into libc +- riscv: Remove support for variable page sizes +- nptl: Move pthread_attr_setschedparam implementation into libc + +* Fri Sep 27 2019 Zbigniew Jędrzejewski-Szmek - 2.30.9000-10 +- Use full locale names in langpack descriptions (#1651375) + +* Thu Sep 26 2019 Patsy Franklin - 2.30.9000-9 +- Auto-sync with upstream branch master, + commit 464cd3a9d5f505d92bae9a941bb75b0d91ac14ee. +- y2038: Introduce struct __timespec64 - new internal glibc type +- auto-changelog: Remove latin1 from codecs +- Set the expects flags to clock_nanosleep +- Fix tst-sigcontext-get_pc rule name from a43565ac447b1 +- inet/net-internal.h: Fix uninitalised clntudp_call() variable +- Fix vDSO initialization on arm and mips +- Script to generate ChangeLog-like output from git log +- [powerpc] SET_RESTORE_ROUND optimizations and bug fix +- Fix building support_ptrace.c on i686-gnu. +- S390: Use _HP_TIMING_S390_H instead of _HP_TIMING_H. +- Update syscall-names.list for Linux 5.3. +- Use Linux 5.3 in build-many-glibcs.py. +- S390: Add support for HP_TIMING_NOW. +- Fix RISC-V vfork build with Linux 5.3 kernel headers. +- Add UNSUPPORTED check in elf/tst-pldd. +- sparc64: Use linux generic time implementation +- mips: Consolidate INTERNAL_VSYSCALL_CALL +- powerpc: Simplify vsyscall internal macros +- Refactor vDSO initialization code +- Remove PREPARE_VERSION and PREPARE_VERSION_KNOW +- Fix small error in HP_TIMING_PRINT trailing null char setting + +* Mon Sep 16 2019 Parag Nemade - 2.30.9000-8 +- Change Supplements "langpacks-" to "langpacks-core-" (#1729992) + +* Mon Sep 16 2019 DJ Delorie - 2.30.9000-7 +- Auto-sync with upstream branch master, + commit 1a6566094d3097f4a3037ab5555cddc6cb11c3a3. +- alpha: force old OSF1 syscalls for getegid, geteuid and getppid [BZ #24986] +- Fix http: URL in 'configure' +- Regenerate charmap-kw.h, locfile-kw.h +- Fix three GNU license URLs, along with trailing-newline issues. +- Prefer https to http for gnu.org and fsf.org URLs + +* Fri Sep 06 2019 Patsy Franklin - 2.30.9000-6 +- Auto-sync with upstream branch master, + commit 1b7f04070bd94f259e2ed24d6fb76309d64fb164. +- locale: Avoid zero-length array in _nl_category_names [BZ #24962] +- math: Replace const attribute with pure in totalorder* functions +- y2038: Introduce the __ASSUME_TIME64_SYSCALLS define +- Finish move of clock_* functions to libc. [BZ #24959] +- Update Alpha libm-test-ulps +- localedef: Use initializer for flexible array member [BZ #24950] +- Add misc/tst-mntent-autofs, testing autofs "ignore" filtering +- Use autofs "ignore" mount hint in getmntent_r/getmntent +- hurd: Fix build +- Use generic memset/memcpy/memmove in benchtests +- nptl: Move pthread_attr_getinheritsched implementation into libc +- hurd: Fix SS_ONSTACK support +- hurd: Remove optimizing anonymous maps as __vm_allocate. +- hurd: Fix poll and select POSIX compliancy details about errors +- hurd: Fix timeout handling in _hurd_select +- hurd getcwd: Allow unknown root directory +- hurd: Fix implementation of setitimer. +- hurd: Fix _hurd_select for single fd sets +- MIPS support for GNU hash +- sh: Split BE/LE abilist +- microblaze: Split BE/LE abilist +- arm: Split BE/LE abilist +- Correct the spelling of more contributors +- Fix posix/tst-regex by using UTF-8 and own test input +- [powerpc] fegetenv_status: simplify instruction generation +- [powerpc] fesetenv: optimize FPSCR access +- [powerpc] SET_RESTORE_ROUND improvements +- [powerpc] fe{en,dis}ableexcept, fesetmode: optimize FPSCR accesses +- [powerpc] fe{en,dis}ableexcept optimize bit translations +- misc: Use allocate_once in getmntent +- nptl: Move pthread_attr_setdetachstate implementation into libc +- login: pututxline could fail to overwrite existing entries [BZ #24902] +- Fix posix/tst-regex by using a dedicated input-file. + +* Tue Aug 27 2019 DJ Delorie - 2.30.9000-5 +- Move makedb from glibc-common to nss_db (#1704334) + +* Mon Aug 26 2019 DJ Delorie - 2.30.9000-4 +- Auto-sync with upstream branch master, + commit 1bced8cadc82077f0201801239e89eb24b68e9aa. +- Don't put non-ASCII into installed headers +- Fix spellings of contributor names in comments and doc +- [MIPS] Raise highest supported EI_ABIVERSION value [SWBZ #24916] +- mips: Force RWX stack for hard-float builds that can run on pre-4.8 kernels +- linux: Make profil_counter a compat_symbol (SWBZ#17726) +- Refactor sigcontextinfo.h +- Add RTLD_SINGLE_THREAD_P on generic single-thread.h +- Chinese locales: Set first_weekday to 2 (swbug 24682). +- powerpc: Fix typos and field name in comments +- Mark IDN tests unsupported with libidn2 before 2.0.5. +- Document strftime %Ob and %OB as C2X features. +- Remove dead regex code +- Fix bad pointer / leak in regex code +- Don't use the argument to time. +- Add tgmath.h macros for narrowing functions. +- Update i386 libm-test-ulps + +* Mon Aug 19 2019 Carlos O'Donell - 2.30.9000-3 +- Drop glibc-fedora-nscd-warnings.patch; applied upstream. +- Drop Source7: nsswitch.conf; applying patch to upstream. +- Add glibc-fedora-nsswitch.patch for Fedora customizations. +- Auto-sync with upstream branch master, + commit d34d4c80226b3f5a1b51a8e5b005a52fba07d7ba: +- Do not print backtraces on fatal glibc errors. +- elf: Self-dlopen failure with explict loader invocation (swbz#24900) +- login: Add nonstring attributes to struct utmp, struct utmpx (swbz#24899) +- login: Use struct flock64 in utmp (swbz#24880) +- login: Disarm timer after utmp lock acquisition (swbz#24879) + +* Fri Aug 16 2019 Carlos O'Donell - 2.30.9000-2 +- Fix C.UTF-8 to use full code ranges. + +* Thu Aug 15 2019 Florian Weimer - 2.30.9000-1 +- Auto-sync with upstream branch master, + commit 341da5b4b6253de9a7581a066f33f89cacb44dec. + +* Fri Aug 02 2019 Florian Weimer - 2.30-1 +- Drop glibc-rh1734680.patch, applied upstream. +- Auto-sync with upstream branch release/2.30/master, + commit be9a328c93834648e0bec106a1f86357d1a8c7e1: +- malloc: Remove unwanted leading whitespace in malloc_info (swbz#24867) +- glibc 2.30 release +- iconv: Revert steps array reference counting changes (#1734680) +- Restore r31 setting in powerpc32 swapcontext + +* Wed Jul 31 2019 Florian Weimer - 2.29.9000-37 +- Fix memory leak in iconv_open (#1734680) + +* Tue Jul 30 2019 Florian Weimer - 2.29.9000-36 +- Drop glibc-rh1732406.patch, fix for the regression applied upstream. +- Auto-sync with upstream branch master, + commit 8a814e20d443adc460a1030fa1a66aa9ae817483: +- nptl: Use uintptr_t for address diagnostic in nptl/tst-pthread-getattr +- Linux: Move getdents64 to +- test-container: Install with $(sorted-subdirs) (swbz#24794) +- gconv: Check reference count in __gconv_release_cache (#1732406) +- x86-64: Compile branred.c with -mprefer-vector-width=128 (swbz#24603) +- build-many-glibcs.py: Use Linux 5.2 by default +- Linux: Use in-tree copy of SO_ constants for !__USE_MISC (swbz#24532) +- test-container: Avoid copying unintended system libraries + +* Thu Jul 25 2019 Fedora Release Engineering +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Jul 23 2019 Florian Weimer - 2.29.9000-34 +- Revert libio change that causes crashes (#1732406) + +* Mon Jul 22 2019 DJ Delorie - 2.29.9000-33 +- Auto-sync with upstream branch master, + commit dcf36bcad3f283f77893d3b157ef7bb2c99419f2. +- Add NEWS entry about the new AArch64 IFUNC resolver call ABI +- locale/C-translit.h.in: Cyrillic -> ASCII transliteration [BZ #2872] +- Linux: Update syscall-names.list to Linux 5.2 + +* Thu Jul 18 2019 DJ Delorie - 2.29.9000-32 +- Auto-sync with upstream branch master, + commit 3556658c5b8765480711b265abc901c67d5fc060. +- Regenerate po/libc.pot for 2.30 release. +- nptl: Add POSIX-proposed _clock functions to hppa pthread.h +- nptl: Remove unnecessary forwarding of pthread_cond_clockwait from libc +- Afar locales: Months and days updated from CLDR (bug 21897). +- nl_BE locale: Use "copy "nl_NL"" in LC_NAME (bug 23996). +- nl_BE and nl_NL locales: Dutch salutations (bug 23996). +- ga_IE and en_IE locales: Revert first_weekday removal (bug 24200). +- nptl: Remove futex_supports_exact_relative_timeouts +- Update NEWS for new _clockwait and _clocklock functions +- nptl: Add POSIX-proposed pthread_mutex_clocklock +- nptl: Rename lll_timedlock to lll_clocklock and add clockid parameter +- nptl: Add POSIX-proposed pthread_rwlock_clockrdlock & pthread_rwlock_clockwrlock +- nptl: pthread_rwlock: Move timeout validation into _full functions +- nptl: Add POSIX-proposed pthread_cond_clockwait +- nptl: Add POSIX-proposed sem_clockwait +- nptl: Add clockid parameter to futex timed wait calls +- posix: Fix large mmap64 offset for mips64n32 (BZ#24699) +- nss_db: fix endent wrt NULL mappings [BZ #24695] [BZ #24696] + +* Wed Jul 10 2019 Carlos O'Donell - 2.29.9000-31 +- Auto-sync with upstream branch master, + commit 30ba0375464f34e4bf8129f3d3dc14d0c09add17. +- Don't declare __malloc_check_init in (bug 23352) +- nftw: fill in stat buf for dangling links [BZ #23501] +- dl-vdso: Add LINUX_4 HASH CODE to support nds32 vdso mechanism +- riscv: restore ABI compatibility (bug 24484) +- aarch64: new ifunc resolver ABI +- nptl: Remove vfork IFUNC-based forwarder from libpthread [BZ #20188] +- malloc: Add nptl, htl dependency for the subdirectory [BZ #24757] +- Call _dl_open_check after relocation [BZ #24259] +- Linux: Use mmap instead of malloc in dirent/tst-getdents64 +- ld.so: Support moving versioned symbols between sonames [BZ #24741] +- io: Remove copy_file_range emulation [BZ #24744] +- Linux: Adjust gedents64 buffer size to int range [BZ #24740] +- powerpc: Use generic e_expf +- Linux: Add nds32 specific syscalls to syscall-names.list +- szl_PL locale: Fix a typo in the previous commit (bug 24652). diff --git a/sources b/sources index 06d649e..f70d44f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (glibc-2.33.tar.xz) = 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb +SHA512 (glibc-2.33.9000-728-gaa9a7f6296.tar.xz) = 99af420fe04976754515154aa9b60769624b431bdfeedcdcea62b1357fc6ef0f1f5f84bac203eb5af142d5eff0034fdc25e55b4fe644aec8b3d283f0e0e14bd8 diff --git a/template.patch b/template.patch deleted file mode 100644 index 10ec35e..0000000 --- a/template.patch +++ /dev/null @@ -1,11 +0,0 @@ -Short description: -Author(s): -Origin: -# Likely git://sourceware.org/git/glibc.git -Bug-RHEL: -Bug-Fedora: -Bug-Upstream: -Upstream status: <[Patchwork URL|libc-alpha URL|not-needed|not-submitted|committed] for each commit> -# - - diff --git a/wrap-find-debuginfo.sh b/wrap-find-debuginfo.sh index 5ace7e6..8c42c9d 100644 --- a/wrap-find-debuginfo.sh +++ b/wrap-find-debuginfo.sh @@ -2,42 +2,139 @@ # Wrapper script for find-debuginfo.sh # # Usage: -# wrap-find-debuginfo.sh LDSO-PATH SCRIPT-PATH SCRIPT-ARGS... +# wrap-find-debuginfo.sh SYSROOT-PATH SCRIPT-PATH SCRIPT-ARGS... # -# The wrapper saves the original versions of the file at LDSO-PATH, +# The wrapper saves the original version of ld.so found in SYSROOT-PATH, # invokes SCRIPT-PATH with SCRIPT-ARGS, and then restores the -# LDSO-PATH file. As a result, LDSO-PATH has unchanged debuginfo even +# LDSO-PATH file, followed by note merging and DWZ compression. +# As a result, ld.so has (mostly) unchanged debuginfo even # after debuginfo extraction. +# +# For libc.so.6, a set of strategic symbols is preserved in .symtab +# that are frequently used in valgrind suppressions. set -ex ldso_tmp="$(mktemp)" +libc_tmp="$(mktemp)" + +# Prefer a separately installed debugedit over the RPM-integrated one. +if command -v debugedit >/dev/null ; then + debugedit=debugedit +else + debugedit=/usr/lib/rpm/debugedit +fi cleanup () { - rm -f "$ldso_tmp" + rm -f "$ldso_tmp" "$libc_tmp" } trap cleanup 0 -ldso_path="$1" +sysroot_path="$1" shift script_path="$1" shift -# Preserve the original file. +# See ldso_path setting in glibc.spec. +ldso_path= +for ldso_candidate in `find "$sysroot_path" -regextype posix-extended \ + -regex '.*/ld(-.*|64|)\.so\.[0-9]+$' -type f` ; do + if test -z "$ldso_path" ; then + ldso_path="$ldso_candidate" + else + echo "error: multiple ld.so candidates: $ldso_path, $ldso_candidate" + exit 1 + fi +done + +# libc.so.6 always uses this name, so it is simpler to locate. +libc_path= +for libc_candidate in `find "$sysroot_path" -name libc.so.6`; do + if test -z "$libc_path" ; then + libc_path="$libc_candidate" + else + echo "error: multiple libc.so.6 candidates: $libc_path, $libc_candidate" + exit 1 + fi +done + + +# Preserve the original files. cp "$ldso_path" "$ldso_tmp" +cp "$libc_path" "$libc_tmp" # Run the debuginfo extraction. "$script_path" "$@" -# Restore the original file. +# Restore the original files. cp "$ldso_tmp" "$ldso_path" +cp "$libc_tmp" "$libc_path" # Reduce the size of notes. Primarily for annobin. objcopy --merge-notes "$ldso_path" +objcopy --merge-notes "$libc_path" -# Rewrite the source file paths to match the extracted locations. -# First compute the arguments for invoking debugedit. See -# find-debuginfo.sh. +# libc.so.6: Reduce to strategic symbols needed by valgrind. +# pthread_create is needed to trigger loading of libthread_db in GDB. +# (Debuginfo is gone after this, so no need to optimize it.) +strip \ + -K __GI___rawmemchr \ + -K __GI___strcasecmp_l \ + -K __GI___strncasecmp_l \ + -K __GI_memchr \ + -K __GI_memcmp \ + -K __GI_memcpy \ + -K __GI_memmove \ + -K __GI_mempcpy \ + -K __GI_stpcpy \ + -K __GI_strcasecmp \ + -K __GI_strcasecmp_l \ + -K __GI_strcat \ + -K __GI_strchr \ + -K __GI_strcmp \ + -K __GI_strcpy \ + -K __GI_strcspn \ + -K __GI_strlen \ + -K __GI_strncasecmp \ + -K __GI_strncasecmp_l \ + -K __GI_strncmp \ + -K __GI_strncpy \ + -K __GI_strnlen \ + -K __GI_strrchr \ + -K __GI_wcsnlen \ + -K __GI_wmemchr \ + -K __memcmp_sse2 \ + -K __memcmp_sse4_1 \ + -K __memcpy_avx_unaligned_erms \ + -K __memcpy_chk \ + -K __memcpy_sse2 \ + -K __memmove_chk \ + -K __stpcpy_chk \ + -K __stpcpy_sse2 \ + -K __stpcpy_sse2_unaligned \ + -K __strchr_sse2 \ + -K __strchr_sse2_no_bsf \ + -K __strcmp_sse2 \ + -K __strcmp_sse42 \ + -K __strcpy_chk \ + -K __strlen_sse2 \ + -K __strlen_sse2_no_bsf \ + -K __strlen_sse42 \ + -K __strncmp_sse2 \ + -K __strncmp_sse42 \ + -K __strncpy_sse2 \ + -K __strncpy_sse2_unaligned \ + -K __strrchr_sse2 \ + -K __strrchr_sse2_no_bsf \ + -K __strrchr_sse42 \ + -K __strstr_sse2 \ + -K __strstr_sse42 \ + -K pthread_create \ + "$libc_path" + +# ld.so: Rewrite the source file paths to match the extracted +# locations. First compute the arguments for invoking debugedit. +# See find-debuginfo.sh. debug_dest_name="/usr/src/debug" last_arg= while true ; do @@ -56,8 +153,7 @@ while true ; do esac done debug_base_name=${last_arg:-$RPM_BUILD_ROOT} -/usr/lib/rpm/debugedit -b "$debug_base_name" -d "$debug_dest_name" -n \ - $ldso_path +$debugedit -b "$debug_base_name" -d "$debug_dest_name" -n $ldso_path # Apply single-file DWARF optimization. dwz $ldso_path