]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - ChangeLog
Fix tcache count maximum (BZ #24531)
[thirdparty/glibc.git] / ChangeLog
index d30639abf6507f2c631b8b93c52aa0bc1bd2e500..1ec840cf2bc171f02a54d498ea6d208b7e4c0e35 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,375 @@
+2019-05-10  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       [BZ #24531]
+       * malloc/malloc.c (MAX_TCACHE_COUNT): New define.
+       (do_set_tcache_count): Only update if count is small enough.
+       * manual/tunables.texi (glibc.malloc.tcache_count): Document max value.
+
+2019-05-10  Florian Weimer  <fweimer@redhat.com>
+
+       * nptl/sem_close.c (struct walk_closure): Define.
+       (walker): Adjust for __twalk_r.
+       (sem_close): Call __twalk_r.
+
+2019-05-09  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * support/timespec.c (test_timespec_before_impl,
+       test_timespec_equal_or_after_impl): print timespec member as intmax_t
+       insted of long int.
+
+2019-05-09  Mike Crowe <mac@mcrowe.com>
+
+       * nptl/tst-abstime.c: Use libsupport.
+
+       * nptl/tst-rwlock6.c: Use libsupport. This also happens to fix a
+       small bug where only tv.tv_usec was checked which could cause an
+       erroneous pass if pthread_rwlock_timedrdlock incorrectly took more
+       than a second.
+
+       * nptl/tst-rwlock7.c, nptl/tst-rwlock9.c, nptl/tst-rwlock14.c: Use
+       libsupport.
+
+       * nptl/tst-sem5.c (do_test): Use xclock_gettime, timespec_add and
+       TEST_TIMESPEC_NOW_OR_AFTER from libsupport.
+
+       * nptl/tst-cond11.c: Use libsupport.
+
+       * support/timespec.h: New file.  Provide timespec helper functions
+       along with macros in the style of those in check.h.
+       * support/timespec.c: New file.  Implement check functions declared
+       in support/timespec.h.
+       * support/timespec-add.c: New file from gnulib containing
+       timespec_add implementation that handles overflow.
+       * support/timespec-sub.c: New file from gnulib containing
+       timespec_sub implementation that handles overflow.
+       * support/README: Mention timespec.h.
+
+2019-05-09  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       [BZ #24537]
+       * nptl/Makefile: Move tst-eintr1 to xtests.
+
+2019-05-09  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/powerpc/fpu/trunc_to_integer.h (set_fenv_mode): Add
+        TRUNC handling.
+       (round_mode): Add definition for TRUNC.
+       * sysdeps/powerpc/fpu/s_trunc.c: New file.
+       * sysdeps/powerpc/fpu/s_truncf.c: New file.
+       * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Remove file.
+       * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-ppc32.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-ppc32.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-power5+.c: New
+       file.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_trunc-ppc32.c:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-power5+.c:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_truncf-ppc32.c:
+       Likewise.
+       * sysdep/powerpc/powerpc32/power5+/fpu/s_trunc.S: Remove file.
+       * sysdep/powerpc/powerpc32/power5+/fpu/s_truncf.S: Likewise.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Add s_trunc-power5+, s_trunc-ppc64,
+       s_truncf-power5+, and s_truncf-ppc64.
+       (CFLAGS-s_trunc-power5+.c, CFLAGS-s_truncf-power5+.c): New rule.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_trunc-power5+.c: New
+       file.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_trunc-ppc64.c: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_trunc.c: ... here.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_truncf-power5+.c: New
+       file.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_truncf-ppc64.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_truncf.c: ... here.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Remove s_trunc-power5+, s_trunc-ppc64,
+       s_truncf-power5+, and s_truncf-ppc64.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S: Remove
+       file.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S: Likewise.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
+       * sysdep/powerpc/powerpc64/power5+/fpu/s_trunc.S: Likewise.
+       * sysdep/powerpc/powerpc64/power5+/fpu/s_truncf.S: Likewise.
+
+       * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode): Add
+       ROUND handling.
+       (round_mode): Add definition for ROUND.
+       (round_to_integer_float): Likewise.
+       * sysdeps/powerpc/fpu/s_round.c: New file.
+       * sysdeps/powerpc/fpu/s_roundf.c: New file.
+       * sysdeps/powerpc/powerpc32/fpu/s_round.S: Remove file.
+       * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-ppc32.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-ppc32.S:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-power5+.c: New
+       file.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_round-ppc32.c:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-power5+.c:
+       Likewise.
+       * sysdep/powerpc/powepc32/power4/fpu/multiarch/s_roundf-ppc32.c:
+       Likewise.
+       * sysdep/powerpc/powerpc32/power5+/fpu/s_round.S: Remove file.
+       * sysdep/powerpc/powerpc32/power5+/fpu/s_roundf.S: Likewise.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Add s_round-power5+, s_round-ppc64,
+       s_roundf-power5+, and s_roundf-ppc64.
+       (CFLAGS-s_round-power5+.c, CFLAGS-s_roundf-power5+.c): New rule.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_round-power5+.c: New
+       file.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_round-ppc64.c: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_round.c: ... here.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_roundf-power5+.c: New
+       file.
+       * sysdep/powerpc/powercp64/be/fpu/multiarch/s_roundf-ppc64.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_roundf.c: ... here.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Remove s_round-power5+, s_round-ppc64,
+       s_roundf-power5+, and s_roundf-ppc64.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S: Remove
+       file.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S: Likewise.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S:
+       Likewise.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_round.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
+       * sysdep/powerpc/powerpc64/power5+/fpu/s_round.S: Likewise.
+       * sysdep/powerpc/powerpc64/power5+/fpu/s_roundf.S: Likewise.
+
+       * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode):
+       Add FLOOR option.
+       (round_mode): Add definition for FLOOR.
+       * sysdeps/powerpc/fpu/s_floor.c: New file.
+       * sysdeps/powerpc/fpu/s_floorf.c: Likewise.
+       * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Remove file.
+       * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Likewise.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S:
+       Remove file.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S:
+       Likewise
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S:
+       Likewise.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S:
+       Likewise.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.c:
+       New file.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: Remove file.
+       * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: Remove file.
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Add s_floor-power5+, s_floor-ppc64,
+       s_floorf-power5+, and s_floorf-ppc64.
+       (CFLAGS-s_floor-power5+.c, CFLAGS-s_floorf-power5+.c): New rule.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floor-power5+.c: New
+       file.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floor-ppc64.c: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_floor.c: ... here.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floorf-power5+.c: New
+       file.
+       * sysdep/powerpc/powerpc64/be/fpu/multiarch/s_floorf-ppc64.c:
+       Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c: Move to ...
+       * sysdeps/powerpc/powerpc64/be/fpu/multiarch/s_floorf.c: ... here.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile
+       (libm-sysdep_routines): Remove s_floor-power5+, s_floor-ppc64,
+       s_floorf-power5+, and s_floorf-ppc64.
+       * sysdep/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S: Remove
+       file.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S: Remove
+       file.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S:
+       Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S:
+       Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
+       * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: Likewise.
+       * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: Likewise.
+
+2019-05-08  Mike Crowe  <mac@mcrowe.com>
+
+       * support/xclock_gettime.c (xclock_gettime): New file. Provide
+       clock_gettime wrapper for use in tests that fails the test rather
+       than returning failure.
+
+       * support/xtime.h: New file to declare xclock_gettime.
+
+       * support/Makefile: Add xclock_gettime.c.
+
+       * support/README: Mention xtime.h.
+
+2019-05-08  Florian Weimer  <fweimer@redhat.com>
+
+       malloc/tst-mallocfork2: Use process-shared barriers.
+       * malloc/tst-mallocfork2.c: Switch to <support/test-driver.c>.
+       (signal_count, sigusr1_sender_pid): Remove.
+       (iterations): Define constant.
+       (shared): New variable.
+       (sigusr1_received): Update comment.
+       (sigusr1_handler): Do not send SIGSTOP to the sender process.
+       (signal_sender): Optional use barriers to avoid sending signals
+       during irrelevant times.
+       (do_it): Initialize variable shared.  Use xfork for error
+       checking.  Launch multiple SIGUSR1-sending subprocesses.  Limit
+       the iteration count, independent of signal delivery.  Check for
+       deadlocks in fork.  Introduce barriers for reducing signal
+       traffic.  Do not send SIGCONT to the SIGUSR1-sending processes;
+       replaced by the barriers.  Count signals during fork/free/malloc
+       and report them.
+       * malloc/Makefile (tst-mallocfork): Link with libpthread.
+
+2019-05-07  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/unix/sysv/linux/syscall-names.list: Update kernel
+       version to 5.1.
+       (clock_adjtime64) New syscall.
+       (clock_getres_time64) Likewise.
+       (clock_gettime64) Likewise.
+       (clock_nanosleep_time64) Likewise.
+       (clock_settime64) Likewise.
+       (futex_time64) Likewise.
+       (io_pgetevents_time64) Likewise.
+       (io_uring_enter) Likewise.
+       (io_uring_register) Likewise.
+       (io_uring_setup) Likewise.
+       (mq_timedreceive_time64) Likewise.
+       (mq_timedsend_time64) Likewise.
+       (pidfd_send_signal) Likewise.
+       (ppoll_time64) Likewise.
+       (pselect6_time64) Likewise.
+       (recvmmsg_time64) Likewise.
+       (rt_sigtimedwait_time64) Likewise.
+       (sched_rr_get_interval_time64) Likewise.
+       (semtimedop_time64) Likewise.
+       (timer_gettime64) Likewise.
+       (timer_settime64) Likewise.
+       (timerfd_gettime64) Likewise.
+       (timerfd_settime64) Likewise.
+       (utimensat_time64) Likewise.
+
+       * scripts/build-many-glibcs.py (Context.checkout): Default GCC
+       version to 9 branch.
+
+2019-05-03  Anton Youdkevitch  <anton.youdkevitch@bell-sw.com>
+
+       * sysdeps/aarch64/multiarch/ifunc-impl-list.c: Added
+       __memmove_thunderx2 to the list of implementations
+       * sysdeps/aarch64/multiarch/memmove.c: Likewise
+       * sysdeps/aarch64/multiarch/memcpy_thunderx2.S:
+       (__memmove_thunderx2): Rewritten using SIMD ld/st
+       (__memcpy_thunderx2): Fixed handling overlapping cases.
+       Used ldp/stp instead of ldr/str if possible. Made loops
+       tails branchless.
+
+2019-05-03  Florian Weimer  <fweimer@redhat.com>
+
+       * misc/tst-tsearch.c (walk_tree): Add more error checking.
+
+2019-05-02  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       [BZ #24506]
+       * elf/tst-pldd.c (in_str_list): New function.
+       (do_test): Add default names for ld and libc as one option.
+
+2019-05-02  Florian Weimer  <fweimer@redhat.com>
+
+       misc: Add twalk_r function.
+       * include/search.h (__twalk_r): Declare.
+       * manual/examples/twalk.c: New file.
+       * manual/search.texi (Tree Search Function): Document twalk_r.
+       * misc/Versions (2.30): Export twalk_r.
+       (GLIBC_PRIVATE): Export __twalk_r.
+       * misc/search.h [__USE_GNU] (twalk_r): Declare.
+       * misc/tsearch.c (trecurse_r, __twalk_r): New functions.
+       (twalk_r): Add weak alias.
+       * misc/tst-tsearch.c (struct walk_trace_element): Define.
+       (walk_trace): New variable.
+       (struct twalk_with_twalk_r_closure): Define.
+       (twalk_with_twalk_r_action): New function.
+       (twalk_with_twalk_r): Likewise.
+       (walk_action): Call walk_trace_add.
+       (walk_tree_with): Rename from walk_tree.  Add walk argument.
+       (walk_tree): New function.
+       * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.30): Add twalk_r.
+       * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/alpha/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/arm/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/csky/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/hppa/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/i386/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/ia64/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/microblaze/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/nios2/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist
+       (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/sh/libc.abilist (GLIBC_2.30): Likewise.
+       * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist (GLIBC_2.30):
+       Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist (GLIBC_2.30):
+       Likewise.
+
 2019-04-30  Paul Eggert  <eggert@cs.ucla.edu>
 
        Make mktime etc. compatible with __time64_t