]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - ChangeLog
libio: freopen of default streams crashes in old programs [BZ #24632]
[thirdparty/glibc.git] / ChangeLog
index 9a89a443ccb7273352e8d3ddde9f5e7ec7bb6d4c..6efe9c464c52d28ac16d13e9e57158576a10a64b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,737 @@
+2019-06-12  Florian Weimer  <fweimer@redhat.com>
+
+       [BZ #24632]
+       * libio/libioP.h (_IO_JUMPS_FUNC_UPDATE): New macro.
+       * libio/freopen.c (freopen): Use it.
+
+2019-06-12  Florian Weimer  <fweimer@redhat.com>
+
+       Linux: Deprecate sysctl.
+       * include/sysctl.h (__sysctl): Remove declaration.
+       * scripts/check-installed-headers.sh (sys/sysctl.h): Disable
+       check.
+       * sysdeps/unix/sysv/linux/sys/sysctl.h: Add deprecation warning.
+       (sysctl): Add deprecation attribute.
+       * sysdeps/unix/sysv/linux/sysctl.c: Include <linux/sysctl.h>
+       directly, to avoid the deprecation warning.  Do not include
+       <string.h>.
+       (__sysctl): Remove hidden alias.
+
+2019-06-12  Florian Weimer  <fweimer@redhat.com>
+
+       Linux: Use kernel headers for statx definitions if available.
+       * include/bits/statx-generic.h: New file.
+       * include/bits/types/struct_statx.h: Likewise.
+       * include/bits/types/struct_statx_timestamp.h: Likewise.
+       * io/Makefile (headers): Add bits/statx-generic.h.
+       * io/bits/statx-generic.h: New file.  Partly copied from
+       io/bits/statx.h.
+       * io/statx_generic.c: Include <bits/types/struct_statx.h> to
+       define original_statx.
+       * io/bits/types/struct_statx.h: Likewise.
+       * io/bits/types/struct_statx_timestamp.h: Likewise.
+       (statx_generic): Use original_statx.
+       * io/bits/statx.h: Rewrite to include <bits/statx-generic.h>.
+       * sysdeps/unix/sysv/linux/bits/statx.h: New file.
+
+2019-06-12  Florian Weimer  <fweimer@redhat.com>
+
+       * misc/sys/cdefs.h (__glibc_has_include): Define.
+
+2019-06-12  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * string/memmem.c (__memmem): Rewrite to improve performance.
+
+2019-06-12  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * string/str-two-way.h (two_way_short_needle): Add inline to avoid
+       warning.
+       (two_way_long_needle): Block inlining.
+       * string/strstr.c (strstr2): Add new function.
+       (strstr3): Likewise.
+       (STRSTR): Completely rewrite strstr to improve performance.
+
+2019-06-11  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * benchtests/bench-strstr.c (test_hard_needle): New function.
+
+2019-06-10  Joseph Myers  <joseph@codesourcery.com>
+
+       * malloc/tst-calloc.c: Include <libc-diag.h>.
+       (null_test): Ignore -Wunused-result around calls to calloc.
+       * malloc/tst-mallocfork.c: Include <libc-diag.h>.
+       (do_test): Ignore -Wunused-result around call to malloc.
+
+2019-06-07  Florian Weimer  <fweimer@redhat.com>
+
+       Linux: Add getdents64 system call.
+       * include/dirnent.h (getdents): Add comment and change buffer
+       argument type to void *.
+       (getdents64): Likewise.  Add hidden prototype.
+       * sysdeps/unix/sysv/linux/bits/Versions (GLIBC_2.30): Export
+       getdents64.
+       * sysdeps/unix/sysv/linux/Makefile [$(subdir) == dirent] (tests):
+       Add tst-getdents64.
+       * sysdeps/unix/sysv/linux/bits/unistd_ext.h (getdents64): Declare.
+       * sysdeps/unix/sysv/linux/getdents.c (__getdents): Change buffer
+       argument type to void *.
+       * sysdeps/unix/sysv/linux/getdents64.c (__getdents64): Likewise.
+       Add hidden definition and getdents64 alias.
+       * sysdeps/unix/sysv/linux/mips/mips64/getdents64.c (__getdents64):
+       Likewise.
+       * sysdeps/unix/sysv/linux/tst-getdents64.c: New file.
+       * manual/filesys.texi (Accessing Directories): Add Low-level
+       Directory Access node reference.
+       (Opening a Directory): Cross-reference it.
+       (Low-level Directory Access): New node.
+       * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): Add
+       getdents64.
+       * 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-06-06  Paul A. Clarke  <pc@us.ibm.com>
+
+       * sysdeps/powerpc/fpu_control.h (_FPU_MASK_RC): New.
+       (__FPU_MFFS): New.
+       (__FPU_MFFSL): New.
+       (_FPU_GET_RC): New.
+       (_FPU_GETCW): Use __FPU_MFFS().
+       * sysdeps/powerpc/fpu/get-rounding-mode.h: New file.
+
+2019-06-06  Florian Weimer  <fweimer@redhat.com>
+
+       * sysdeps/unix/sysv/linux/riscv/flush-icache.c: Do not use
+       internal GCC preprocessor identifier __has_include__.
+
+2019-06-05  Paul A. Clarke  <pc@us.ibm.com>
+
+       * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Replace code
+       with call to equivalent function.
+
+2019-06-04  Florian Weimer  <fweimer@redhat.com>
+
+       * iconv/gconv_dl.c (release_handle): Remove file-level definition.
+       (do_release_shlib): Adjust for __twalk_r.
+       (__gconv_release_shlib): Call __twalk_r.
+
+2019-06-04  Andreas Schwab  <schwab@suse.de>
+
+       [BZ #18830]
+       * iconv/skeleton.c (FUNCTION_NAME): Use RESET_INPUT_BUFFER only if
+       no irreversible characters occurred.
+       * iconv/gconv_simple.c (internal_ucs4_loop)
+       (internal_ucs4_loop_unaligned, internal_ucs4_loop_single)
+       (ucs4_internal_loop, ucs4_internal_loop_unaligned)
+       (ucs4_internal_loop_single, internal_ucs4le_loop)
+       (internal_ucs4le_loop_unaligned, internal_ucs4le_loop_single)
+       (ucs4le_internal_loop, ucs4le_internal_loop_unaligned)
+       (ucs4le_internal_loop_single): Add const to outend.
+       * sysdeps/s390/multiarch/gconv_simple.c (internal_ucs4le_loop)
+       (ucs4_internal_loop, ucs4le_internal_loop): Likewise.
+       * iconv/Makefile (tests): Add tst-iconv7.
+       * iconv/tst-iconv7.c: New file.
+
+2019-06-03  Joseph Myers  <joseph@codesourcery.com>
+
+       * inet/netinet/in.h (INADDR_ALLSNOOPERS_GROUP): New macro.
+
+2019-06-01  Florian Weimer  <fweimer@redhat.com>
+
+       arm: Remove ioperm/iopl/inb/inw/inl/outb/outw/outl support.
+       * sysdeps/unix/sysv/linux/arm/Makefile
+       [$(subdir) == misc] (sysdep_headers): Remove sys/io.h.
+       * sysdeps/unix/sysv/linux/arm/sys/io.h: Remove file.
+       * sysdeps/unix/sysv/linux/arm/ioperm.c: Rewrite file.
+       (ioperm, iopl, inb, inw, inl, outb, outw, outl): Turn into
+       compatibility symbols.
+
+2019-05-31  Florian Weimer  <fweimer@redhat.com>
+
+       * sysdeps/unix/sysv/linux/syscall-names.list: Add oddly named
+       system calls for the arm architecture: breakpoint, get_tls,
+       set_tls, usr26, usr32.
+
+2019-05-30  Gabriel F. T. Gomes  <gabrielftg@linux.ibm.com>
+
+       * sysdeps/powerpc/Makefile
+       [$(subdir) == misc] (CFLAGS-tst-set_ppr.c): New variable.
+       * sysdeps/powerpc/powerpc64/power4/memcmp.S [__LITTLE_ENDIAN__]:
+       Declare '.machine power7' to get support for ldbrx.
+       * sysdeps/powerpc/powerpc64/power7/strncmp.S: Declare '.machine'
+       directive based on the directory of the file.
+       * sysdeps/powerpc/powerpc64/power8/fpu/s_llround.S: Likewise.
+       * sysdeps/powerpc/powerpc64/power8/strcmp.S: Likewise.
+       * sysdeps/powerpc/powerpc64/power8/strcasecmp.S: Update
+       '.machine' directive.
+       (VCLZD_V8_v7, MFVRD_R3_V1, VSUBUDM_V9_V8, VPOPCNTD_V8_V8)
+       (VADDUQM_V7_V8): Remove.
+       (__STRCASECMP): Replace macros with actual instructions.
+       * sysdeps/powerpc/powerpc64/power8/strcasestr.S: Update
+       '.machine' directive.
+       (VCLZD_V8_v7): Remove.
+       (STRCASESTR): Replace VCLZD_V8_v7 with actual instruction.
+
+2019-05-29  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/get_clockfreq.c:
+       Remove file.
+       * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: Likewise.
+
+2019-05-28  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/powerpc/fpu/round_to_integer.h (set_fenv_mode): Add
+       NEARBYINT handling.
+       * sysdeps/powerpc/fpu/s_nearbyint.c: New file.
+       * sysdeps/powerpc/fpu/s_nearbyintf.c: Likewise.
+       * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: Remove file.
+       * sysdeps/powerpc/powerpc32/fpu/s_nearbyintf.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: Likewise.
+       * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: Likewise.
+
+2019-05-28  mansayk  <6688000@gmail.com>
+
+       [BZ #24370]
+       * localedata/locales/tt_RU (lang_name): Add from CLDR-35.1.
+
+2019-05-28  mansayk  <6688000@gmail.com>
+
+       [BZ #24369]
+       * localedata/locales/tt_RU (mon): Update from CLDR-35.1, fix errors.
+       (abmon): Likewise, but remove the trailing dots.
+
+2019-05-28  Joseph Myers  <joseph@codesourcery.com>
+
+       * inet/netinet/igmp.h (IGMP_MRDISC_ADV): New macro.
+
+2019-05-27  Florian Weimer  <fweimer@redhat.com>
+
+       * nptl/nptl-init.c: Add comment.
+
+2019-05-24  Florian Weimer  <fweimer@redhat.com>
+
+       * resolv/nss_dns/dns-host.c (getanswer_r): Be more explicit about
+       struct in_addr/struct in6_addr alignment.
+
+2019-05-23  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/unix/sysv/linux/bits/fcntl-linux.h [__USE_GNU]
+       (F_SEAL_FUTURE_WRITE): New macro.
+
+2019-05-23 Alexandra Hajkova  <ahajkova@redhat.com>
+
+       * elf/Makefile (test-container): Add tst-ldconfig-bad-aux-cache.
+       * elf/tst-ldconfig-bad-aux-cache.c: New file.
+       * elf/tst-ldconfig_aux-cache.root: New directory.
+       * elf/tst-ldconfig-bad-aux-cache.root/postclean.req: New file.
+       * elf/tst-ldconfig-bad-aux-cache.root/etc: New directory.
+       * elf/tst-ldconfig-bad-aux-cache.root/etc/ld.so.conf: New file.
+
+2019-05-22  Zack Weinberg  <zackw@panix.com>
+
+        * sysdeps/powerpc/preconfigure: Error out on powerpc-*-*gnuspe*
+        host type.
+        * scripts/build-many-glibcs.py: Remove powerpc-*-linux-gnuspe
+        and powerpc-*-linux-gnuspe-e500v1 from list of build configurations.
+
+        * sysdeps/powerpc/powerpc32/e500: Recursively delete.
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500: Recursively delete.
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h:
+        Delete.
+
+        * sysdeps/powerpc/fpu_control.h: Remove SPE variant.
+        Issue an #error if used with a compiler in SPE-float mode.
+        * sysdeps/powerpc/powerpc32/__longjmp_common.S
+        * sysdeps/powerpc/powerpc32/setjmp_common.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
+        * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S:
+        Remove code to preserve SPE register state.
+
+        * sysdeps/unix/sysv/linux/powerpc/elision-lock.c
+        * sysdeps/unix/sysv/linux/powerpc/elision-trylock.c
+        * sysdeps/unix/sysv/linux/powerpc/elision-unlock.c:
+        Remove __SPE__ ifndefs.
+
+2019-05-21  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * benchtests/bench-memcpy-random.c (do_one_test): Use medium iterations.
+       * benchtests/bench-memcpy-walk.c (test_main): Reduce alignment tests.
+       * benchtests/bench-memmem.c (do_one_test): Use small iterations.
+       * benchtests/bench-memmove-walk.c (test_main): Reduce alignment tests.
+       * benchtests/bench-memset-walk.c (test_main): Reduce alignment tests.
+       * benchtests/bench-strcasestr.c (do_one_test): Use small iterations.
+       * benchtests/bench-string.h (INNER_LOOP_ITERS): Increase iterations.
+       (INNER_LOOP_ITERS_MEDIUM): New define.
+       (INNER_LOOP_ITERS_SMALL): New define.
+       * benchtests/bench-strpbrk.c (do_one_test): Use medium iterations.
+       * benchtests/bench-strsep.c (do_one_test): Use small iterations.
+       * benchtests/bench-strspn.c (do_one_test): Use medium iterations.
+       * benchtests/bench-strstr.c (do_one_test): Use small iterations.
+       * benchtests/bench-strtok.c (do_one_test): Use small iterations.
+
+2019-05-21  Adhemeval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/unix/sysv/linux/powerpc/ipc_priv.h (SEMTIMEDOP_IPC_ARGS):
+       New define.
+       * sysdeps/unix/sysv/linux/sparc/sparc64/ipc_priv.h
+       (SEMTIMEDOP_IPC_ARGS): Likewise.
+
+2019-05-21  Florian Weimer  <fweimer@redhat.com>
+
+       [BZ #24584]
+       * wcsmbs/wcsmbsload.c (__wcsmbs_clone_conv): Acquire __gconv_lock
+       before updating __counter field and release it afterwards.  Add
+       overflow check.
+       * iconv/gconv.h (struct __gconv_step): Mention synchronization
+       requirement for __counter member.
+
+2019-05-21  Florian Weimer  <fweimer@redhat.com>
+
+       [BZ #24583]
+       * wcsmbs/wcsmbsload.h (__wcsmbs_close_conv): Declare.
+       * wcsmbs/wcsmbsload.c (__wcsmbs_close_conv): Define.
+       * libio/iofclose.c (_IO_new_fclose): Call __wcsmbs_close_conv
+       instead of __gconv_release_step.
+       * libio/Makefile (tests): Add tst-wfile-gconv.
+       (tests-container): Add tst-wfile-ascii.
+       (tst-wfile-gconv-ENV): Enable mtrace.
+       (generated): Add tst-wfile-gconv.mtrace, tst-wfile-gconv.check.
+       (tests-special): Add tst-wfile-gconv-mem.out.
+       (tst-wfile-gconv.out): Depend on locales.
+       (tst-wfile-gconv-mem.out): Add mtrace rule.
+       * libio/tst-wfile-ascii.c: New file.
+       * libio/tst-wfile-gconv.c: Likewise.
+
+2019-05-20  Florian Weimer  <fweimer@redhat.com>
+
+       [BZ #24588]
+       libio: Remove codecvt vtable.
+       * libio/fileops.c ( _IO_new_file_fopen): Do not copy
+       __libio_codecvt.
+       * libio/iofgetpos.c (_IO_new_fgetpos): Call
+       __libio_codecvt_encoding.
+       * libio/iofgetpos64.c (_IO_new_fgetpos): Likewise.
+       * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
+       * libio/iofsetpos64.c (_IO_new_fsetpos): Likewise.
+       * libio/iofwide.c (__libio_codecvt): Remove variable.
+       (_IO_fwide): Do not copy __libio_codecvt.
+       (__libio_codecvt_out): Rename from do_out and export.
+       (do_unshift): Remove function.
+       (__libio_codecvt_in): Rename from do_in and export.
+       (__libio_codecvt_encoding): Rename from do_encoding and export.
+       (do_always_noconv): Remove function.
+       (__libio_codecvt_length): Rename from do_length and export.
+       (do_max_length): Remove function.
+       * libio/libio.h (enum __codecvt_result): Remove definition; moved
+       to libioP.h.
+       (struct _IO_codecvt): Remove fields __codecvt_destr,
+       __codecvt_do_out, __codecvt_do_unshift, __codecvt_do_in,
+       __codecvt_do_encoding, __codecvt_do_always_noconv,
+       __codecvt_do_length, __codecvt_do_max_length.
+       * libio/libioP.h (enum __codecvt_result): Define; moved from
+       libio.h.
+       (__libio_codecvt_out, __libio_codecvt_in)
+       (__libio_codecvt_encoding, __libio_codecvt_length): Declare
+       functions.
+       * libio/wfileops.c (_IO_wdo_write): Call __libio_codecvt_out.
+       (_IO_wfile_underflow): Call __libio_codecvt_in.
+       (_IO_wfile_underflow): Likewise.
+       (_IO_wfile_underflow_mmap): Likewise.
+       (_IO_wfile_sync): Call __libio_codecvt_encoding,
+       __libio_codecvt_length.
+       (adjust_wide_data): Call __libio_codecvt_encoding,
+       __libio_codecvt_in.
+       (do_ftell_wide): Call __libio_codecvt_length, __libio_codecvt_out.
+       (_IO_wfile_seekoff): Call __libio_codecvt_encoding,
+       __libio_codecvt_length.
+
+2019-05-20  Florian Weimer  <fweimer@redhat.com>
+
+       * support/support.h (support_sbindir_prefix): Declare.
+       (support_install_rootsbindir): Update comment.
+       * support/Makefile (CFLAGS-support_paths.c): Define SBINDIR_PATH.
+       * support/support_paths.c (support_sbindir_prefix): Define.
+
+2019-05-20  Mike Crowe  <mac@mcrowe.com>
+
+       * support/timespec.c: Add backslash to correct newline in failure
+       message.
+
+       * support/timespec.h: Correct confusing comment.
+
+2019-05-20  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       * sysdeps/unix/sysv/linux/ipc_priv.h (SEMTIMEDOP_IPC_ARGS): New
+       define.
+       * sysdpes/unix/sysv/linux/s390/ipc_priv.h: New file.
+       * sysdeps/unix/sysv/linux/s390/semtimedop.c: Remove file.
+       * sysdeps/unix/sysv/linux/semtimedop.c (semtimedop): Use
+       SEMTIMEDOP_IPC_ARGS for calls with __NR_ipc.
+
+       [BZ #24570]
+       * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Remove __IPC_64
+       usage.
+
+2019-05-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * elf/elf.h (NT_ARM_PACA_KEYS): New macro.
+       (NT_ARM_PACG_KEYS): Likewise.
+
+2019-05-17  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * malloc/malloc.c (MAX_TCACHE_COUNT): Increase to UINT16_MAX.
+       (tcache_put): Remove redundant assert.
+       (tcache_get): Remove redundant asserts.
+       (__libc_malloc): Check tcache count is not zero.
+       * manual/tunables.texi (glibc.malloc.tcache_count): Update maximum.
+
+2019-05-17  Florian Weimer  <fweimer@redhat.com>
+
+       * manual/llio.texi (Open-time Flags): Document O_DIRECTORY.
+
+2019-05-16  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/unix/sysv/linux/alpha/kernel-features.h
+       (__ASSUME_STATFS64): Only undefine if [__LINUX_KERNEL_VERSION <
+       0x050100].
+       * sysdeps/unix/sysv/linux/ia64/kernel-features.h (__ASSUME_STATX):
+       Likewise.
+       * sysdeps/unix/sysv/linux/sh/kernel-features.h
+       (__ASSUME_STATX): Likewise.
+
+2019-05-16  Florian Weimer  <fweimer@redhat.com>
+
+       * nis/nss_nis/nis-hosts.c (EXTRA_ARGS, EXTRA_ARGS_DECL): Remove
+       flags argument.
+       (LINE_PARSER): Do not map IPv4 addresses.
+       (internal_nis_gethostent_r): Remove flags argument.  Adjust call
+       to parse_line.
+       (_nss_nis_gethostent_r): Always pass AF_INET to
+       internal_nis_gethostent_r.
+       (internal_gethostbyname2_r): Remove flags argument.  Adjust call
+       to parse_line.
+       (_nss_nis_gethostbyname2_r): Adjust call to
+       internal_nis_gethostent_r.
+       (_nss_nis_gethostbyname_r): Do not attempt IPv6 query.  Adjust
+       call to internal_nis_gethostent_r.
+       (_nss_nis_gethostbyaddr_r): Do not request IPv4 address mapping
+       from parse_line.
+       (_nss_nis_gethostbyname4_r):Adjust call to parse_line.
+       * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_parse_hostent):
+       Remove flags argument.  Do not map IPv4 addresses.
+       (internal_nisplus_gethostent_r): Adjust call to
+       _nss_nisplus_parse_hostent.
+       (internal_gethostbyname2_r): Remove flags argument.  Adjust call
+       to _nss_nisplus_parse_hostent.
+       (_nss_nisplus_gethostbyname2_r): Adjust call to
+       internal_gethostbyname2_r.
+       (_nss_nisplus_gethostbyname_r): Do not perform IPv6 lookup.
+       Adjust call to internal_gethostbyname2_r.
+       (_nss_nisplus_gethostbyaddr_r): Adjust call to
+       _nss_nisplus_parse_hostent.
+       (_nss_nisplus_gethostbyname4_r): Adjust call to
+       internal_gethostbyname2_r.
+
+2019-05-16  Florian Weimer  <fweimer@redhat.com>
+
+       * nss/nss_files/files-hosts.c (EXTRA_ARGS, EXTRA_ARGS_DECL):
+       Remove flags.
+       (LINE_PARSER): Remove address mapping.
+       (EXTRA_ARGS_VALUE): Remove flags argument.
+       (gethostbyname3_multi): Likewise.  Adjust call to internal_getent.
+       (_nss_files_gethostbyname3_r): Adjust calls to internal_getent and
+       gethostbyname3_multi.
+       (_nss_files_gethostbyname_r): Always use AF_INET.  Adjust call to
+       _nss_files_gethostbyname3_r.
+       (_nss_files_gethostbyname4_r): Adjust call to internal_getent.
+
+2019-05-16  Florian Weimer  <fweimer@redhat.com>
+
+       * support/support_test_compare_blob.c (report_blob): Report
+       incorrect NULL blobs.
+
+2019-05-15  Mark Wielaard  <mark@klomp.org>
+
+       [BZ# 24476]
+       * dlfcn/dlerror.c (__dlerror_main_freeres): Guard using
+       __libc_once_get (once) and static_buf == NULL.
+       (__dlerror): Check we have a valid key, set result to static_buf
+       otherwise.
+
+2019-05-15  Andreas Schwab  <schwab@suse.de>
+
+       [BZ #20568]
+       * libio/wfileops.c (_IO_wfile_sync): Correct last argument to
+       __codecvt_do_length.
+       * libio/Makefile (tests): Add tst-wfile-sync.
+       ($(objpfx)tst-wfile-sync.out): Depend on $(gen-locales).
+       * libio/tst-wfile-sync.c: New file.
+       * libio/tst-wfile-sync.input: New file.
+
+2019-05-15  Florian Weimer  <fweimer@redhat.com>
+
+       nss: Turn __nss_database_lookup into a compatibility symbol.
+       * nss/nsswitch.h (__nss_database_lookup2): Renamed from
+       __nss_database_lookup.
+       * nss/nsswitch.c (__nss_database_lookup2): Likewise.
+       (nss_load_all_libraries): Call __nss_database_lookup2 instead of
+       __nss_database_lookup.
+       (__nss_next): Move to …
+       * nss/compat-lookup.c (nss_next): … here.  Change it to fail
+       unconditionally.
+       (__nss_database_lookup): New function.
+       * nss/Versions (GLIBC_2.0): Update comment.
+       (GLIBC_PRIVATE): Export __nss_database_lookup2.
+       * grp/initgroups.c (internal_getgrouplist): Call
+       __nss_database_lookup2 instead of __nss_database_lookup.
+       * nscd/aicache.c (addhstaiX): Likewise.
+       * nscd/initgrcache.c (addinitgroupsX): Likewise.
+       * nscd/netgroupcache.c (addgetnetgrentX): Likewise.
+       * nss/XXX-lookup.c (DB_LOOKUP_FCT): Likewise.
+       * nss/nss_compat/compat-grp.c (init_nss_interface): Likewise.
+       * nss/nss_compat/compat-initgroups.c (init_nss_interface):
+       Likewise.
+       * nss/nss_compat/compat-pwd.c (init_nss_interface): Likewise.
+       * nss/nss_compat/compat-spwd.c (init_nss_interface): Likewise.
+       * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
+
+2019-05-15  Alexandra Hajkova  <ahajkova@redhat.com>
+
+       * support/support.h (support_install_rootsbindir): New variable.
+       * support/support_paths.c: Likewise.
+       * support/Makefile (CFLAGS-support_paths.c): Add -DROOTSBINDIR_PATH.
+
+2019-05-15  Florian Weimer  <fweimer@redhat.com>
+
+       * iconv/gconv.h (__gconv_transliterate): Move declaration …
+       * iconv/gconv_int.h (__gconv_transliterate): … here.
+       * iconv/loop.c: Include <iconv/gconv_int.h> instead of <gconv.h>.
+       * iconv/skeleton.c: Likewise.
+
+2019-05-14  Florian Weimer  <fweimer@redhat.com>
+
+       Linux: Add the tgkill function.
+       * bits/signal_ext.h: New file.
+       * manual/signal.texi (Signaling Another Process): Document tgkill.
+       * signal/Makefile (headers): Add bits/signal_ext.h.
+       * signal/signal.h: Include <bits/signal_ext.h>.
+       * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-tgkill.
+       (tst-tgkill): Link with libpthread.
+       * sysdeps/unix/sysv/linux/Versions (GLIBC_2.30): Export tgkill.
+       * sysdeps/unix/sysv/linux/bits/signal_ext.h: New file.
+       * sysdeps/unix/sysv/linux/bits/tst-tgkill.c: Likewise.
+       * sysdeps/unix/sysv/linux/aarch64/libc.abilist (GLIBC_2.30): Add
+       tgkill.
+       * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/csky/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist:
+       Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist:
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist:
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist:
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist:
+       Likewise.
+       * sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise.
+
+2019-05-14  Carlos O'Donell  <carlos@redhat.com>
+
+       * manual/search.texi (Tree Search Function): Adjust twalk_r
+       documentation.
+
+2019-05-14  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       [BZ #24544]
+       * elf/tst-pldd.c (do_test): Use support_bindir_prefix instead of
+       pre-defined value.
+
+       * support/Makefile (CFLAGS-support_paths.c): Add -DBINDIR_PATH.
+       * support/support.h (support_bindir_prefix): New variable.
+       * support/support_paths.c [BINDIR_PATH] (support_bindir_prefix):
+
+       * config.make.in (bindir): New variable.
+
+       * sysdeps/nptl/lowlevellock.h (__lll_trylock): New macro.
+       (lll_trylock): Call __lll_trylock.
+       * sysdeps/unix/sysv/linux/i386/libc-lowlevellock.S: Remove file.
+       * sysdeps/unix/sysv/linux/i386/lll_timedlock_wait.c: Likewise.
+       * sysdeps/unix/sysv/linux/i386/lowlevellock.S: Likewise.
+       * sysdeps/unix/sysv/linux/i386/lowlevellock.h: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/lll_timedlock_wait.c: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise.
+       * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise.
+       * sysdeps/unix/sysv/linux/x86/lowlevellock.h: New file.
+       * sysdeps/unix/sysv/linux/x86_64/cancellation.S: Include
+       lowlevellock-futex.h.
+
+       * nptl/nptl-init.c (__pthread_initialize_minimal_internal): Remove
+       initialization for LLL_LOCK_INITIALIZER different than 0.
+       * nptl/old_pthread_cond_broadcast.c (__pthread_cond_broadcast_2_0):
+       Assume LLL_LOCK_INITIALIZER being 0.
+       * nptl/old_pthread_cond_signal.c (__pthread_cond_signal_2_0): Likewise.
+       * nptl/old_pthread_cond_timedwait.c (__pthread_cond_timedwait_2_0):
+       Likewise.
+       * nptl/old_pthread_cond_wait.c (__pthread_cond_wait_2_0): Likewise.
+       * sysdeps/nptl/libc-lockP.h (__libc_lock_define_initialized): Likewise.
+
+       * nptl/lowlevellock.c (__lll_lock_wait, __lll_lock_wait_private):
+       Optimize futex call and add systemtap probe.
+
+       * nptl/pthreadP.h (CANCEL_ASYNC, CANCEL_RESET, LIBC_CANCEL_ASYNC,
+       LIBC_CANCEL_RESET, __libc_enable_asynccancel,
+       __libc_disable_asynccancel, __librt_enable_asynccancel,
+       __libc_disable_asynccancel, __librt_enable_asynccancel,
+       __librt_disable_asynccancel): Move to ...
+       * sysdeps/unix/sysv/linux/sysdep-cancel.h: ... here.
+       (SINGLE_THREAD_P, RTLD_SINGLE_THREAD_P): Move to ...
+       * sysdeps/unix/sysv/linux/single-thread.h: ... here.
+       * sysdeps/generic/single-thread.h: New file.
+       * sysdeps/unix/sysdep.h: Include single-thread.h.
+       * sysdeps/unix/sysv/linux/futex-internal.h: Include sysdep-cancel.h.
+       * sysdeps/unix/sysv/linux/lowlevellock-futex.h: Likewise.
+
+2019-05-08  Mike FABIAN  <mfabian@redhat.com>
+
+       [BZ #24535]
+       * localedata/unicode-gen/Makefile (UNICODE_VERSION): Set to 12.1.0.
+       * localedata/unicode-gen/DerivedCoreProperties.txt: Update to
+       Unicode 12.1.0.
+       * localedata/unicode-gen/EastAsianWidth.txt: Likewise.
+       * localedata/unicode-gen/PropList.txt: Likewise.
+       * localedata/unicode-gen/UnicodeData.txt: Likewise.
+       * localedata/charmaps/UTF-8: Regenerate.
+       * localedata/locales/i18n_ctype: Likewise.
+       * localedata/locales/tr_TR: Likewise.
+       * localedata/locales/translit_circle: Likewise.
+       * localedata/locales/translit_cjk_compat: Likewise.
+       * localedata/locales/translit_combining: Likewise.
+       * localedata/locales/translit_compat: Likewise.
+       * localedata/locales/translit_font: Likewise.
+       * localedata/locales/translit_fraction: Likewise.
+
+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
        * localedata/locales/lzh_TW (era): Likewise.
        * localedata/locales/nan_TW (era): Likewise.
 
+2019-03-14  Adam Maris  <amaris@redhat.com>
+
+       * malloc/malloc.c (_int_malloc): Check for large bin list
+       corruption when inserting unsorted chunk.
+
 2019-03-14  Florian Weimer  <fweimer@redhat.com>
 
        Remove obsolete, never-implemented XSI STREAMS declarations.