Fix memory handling in strxfrm_l [BZ #16009]
[platform/upstream/glibc.git] / ChangeLog
index c421559..09f1a80 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,684 @@
+2015-01-13  Leonhard Holz  <leonhard.holz@web.de>
+
+       [BZ #16009]
+       * string/strxfrm_l.c (STRXFRM): Allocate fixed size cache for
+       weights and rules. Use do_xfrm_cached if data fits in cache,
+       do_xfrm otherwise.  Moved former main loop to...
+       * (do_xfrm_cached): New function.
+       * (do_xfrm): Non-caching version of do_xfrm_cached. Uses
+       find_idx, find_position and stack_push.
+       * (find_idx): New function.
+       * (find_position): Likewise.
+       * localedata/sort-test.sh: Added test run for do_xfrm.
+       * localedata/xfrm-test.c (main): Added command line option
+       -nocache to run the test with strings that are too large for
+       the STRXFRM cache.
+
+2015-01-13  Torvald Riegel  <triegel@redhat.com>
+
+       * sysdeps/nptl/fork.c (__libc_fork): Provide address of futex
+       variable to lll_futex_wake call, not the value itself.
+
+2015-01-12  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17803]
+       * sysdeps/ieee754/ldbl-96/s_scalblnl.c (twom63): Rename to
+       twom64.  Adjust value to 0x1p-64L.
+       (__scalblnl): Only return standard underflowing result for K <=
+       -64 not K <= -63; adjust exponent for underflowing result by 64
+       not 63.
+       * math/libm-test.inc (scalbn_test_data): Add more tests.
+       (scalbln_test_data): Likewise.
+
+       [BZ #17834]
+       * sysdeps/ieee754/ldbl-96/s_scalblnl.c (two63): Change value to
+       0x1p63L.
+       (__scalblnl): Get new exponent of adjusted subnormal value from ES
+       not HX.
+       * math/libm-test.inc (scalbn_test_data): Add more tests.
+       (scalbln_test_data): Likewise.
+
+2015-01-12  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+           Stefani Seibold  <stefani@seibold.net>
+
+       * sysdeps/unix/sysv/linux/x86_64/Makefile [$(subdir) = elf]
+       (sysdep_routines): Add dl-vdso here, ...
+       * sysdeps/unix/sysv/linux/x86/Makefile [$(subdir) = elf]
+       (sysdep_routines): ... not here.
+       * sysdeps/unix/sysv/linux/i386/gettimeofday.c: New file: set syscall
+       fallback when vDSO is not presented.
+       * sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_clock_gettime):
+       Define with libc_hidden_proto/libc_hidden_data_def definitions.
+       (_libc_vdso_platform_setup): Rename to __vdso_platform_setup.
+       * sysdeps/unix/sysv/linux/i386/init-first.c: New file: likewise.
+       * sysdeps/unix/sysv/linux/i386/time.c: New file: likewise.
+       * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Moved to ...
+       * sysdeps/unix/sysv/linux/x86/libc-vdso.h: ... here.
+       * sysdeps/unix/sysv/linux/x86_64/clock_gettime.c: Move to ...
+       * sysdeps/unix/sysv/linux/x86/clock_gettime.c: ... here.
+       * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: Move to ...
+       * sysdeps/unix/sysv/linux/x86/gettimeofday.c: ... here.  Also added
+       fallback configurable symbol when vDSO is not available.
+       * sysdeps/unix/sysv/linux/x86_64/time.c: Move to ...
+       * sysdeps/unix/sysv/linux/x86/time.c: ... here.  Also refactored to
+       be able to redefine fallback symbol when vDSO is not available.
+       * sysdeps/unix/sysv/linux/x86_64/timespec_get.c: Move to ...
+       * sysdeps/unix/sysv/linux/x86/timespec_get.c: ... here.
+
+2015-01-12  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+       * sysdeps/powerpc/nptl/tls.h (tcbhead_t): Add tm_capable field.
+       (TLS_INIT_TP): Add tm_capable initialization.
+       (TLS_DEFINE_INIT_TP): Likewise.
+       (THREAD_GET_TM_CAPABLE): New file: get tm_capable field value from
+       TCB.
+       (THREAD_SET_TM_CAPABLE): New file: set tm_capable field value in TCB.
+       * sysdeps/powerpc/nptl/tcb-offsets.sym (TM_CAPABLE): Add field offset
+       calculation.
+       * sysdeps/powerpc/powerpc32/sysdep.h (DO_CALL): Abort hardware
+       transactoion is lock elision is built and TCB tm_capable is set.
+       * sysdeps/powerpc/powerpc64/sysdep.h (DO_CALL): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
+       (INTERNAL_SYSCALL_NCS): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
+       (INTERNAL_SYSCALL_NCS): Likewise.
+       * sysdeps/powerpc/sysdep.h (ABORT_TRANSACTION): New define.
+
+       * sysdeps/powerpc/nptl/elide.h: New file: generic lock elision support
+       for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
+       [pthread_rwlock_t] (__pad1): Change size to 7 bytes in 64 bits case
+       and remove it for 32 bits case.
+       [pthread_rwlock_t] (__rwelision): New field for lock elision.
+       (__PTHREAD_RWLOCK_ELISION_EXTRA): Adjust for new lock elision field
+       initialization.
+       * sysdeps/unix/sysv/linux/powerpc/elision-conf.c (elision_init):
+       Disable lock elision with rdlocks if elision is not available.
+
+       * sysdeps/unix/sysv/linux/powerpc/Makefile [nptl]
+       (sysdep_routines): Add lock elision objects.
+       * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
+       [pthread_mutex_t] (__spins): Rework to add lock elision field.
+       [pthread_mutex_t] (__elision): Add field.
+       [__PTHREAD_SPINS]: Adjust to init lock elision field.
+       * sysdeps/unix/sysv/linux/powerpc/elision-conf.c: New file: lock
+       elision definitions for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/elision-lock.c: New file:
+       implementation of lock elision for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/elision-timed.c: New file:
+       implementation of timed lock elision for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/elision-trylock.c: New file:
+       implementation of trylock with lock elision for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/elision-unlock.c: New file:
+       implementaion of unlock for lock elision for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/force-elision.h: New file:
+       automatic enable lock elision for mutexes.
+       * sysdeps/unix/sysv/linux/powerpc/htm.h: New file: hardware
+       transaction execution definitions for powerpc.
+       * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: New file: add TLE
+       definitions.
+       * sysdeps/unix/sysv/linux/powerpc/pthread_mutex_cond_lock.c: New file.
+       * sysdeps/unix/sysv/linux/powerpc/pthread_mutex_lock.c: Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/pthread_mutex_timedlock.c: Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/pthread_mutex_trylock.c: Likewise.
+       * NEWS: Update.
+
+2015-01-09  Roland McGrath  <roland@hack.frob.com>
+
+       * sysdeps/posix/shm-directory.c: Use <> rather than ""
+       for #include of <shm-directory.h>.
+
+2015-01-09  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Remove MIN() and
+       assign raw DT_REL[A]COUNT value to ranges[0].nrelative.
+
+2015-01-09  Matthew Fortune <matthew.fortune@imgtec.com>
+
+       [BZ #17791]
+       * NEWS: Mention bug fix.
+       * sysdepsysdeps/unix/sysv/linux/microblaze/sys/user.h
+       (PAGE_SHIFT, PAGE_SIZE, PAGE_MASK, NBPG, UPAGES): Remove.
+       (HOST_TEXT_START_ADDR, HOST_STACK_END_ADDR): Remove.
+
+2015-01-09  Torvald Riegel <triegel@redhat.com>
+
+       * sysdeps/unix/sysv/linux/microblaze/lowlevellock.h: Delete file.
+
+2015-01-09  Torvald Riegel <triegel@redhat.com>
+
+       * sysdeps/unix/sysv/linux/microblaze/pthread_once.c: Delete file.
+
+2015-01-09  David Holsgrove  <david.holsgrove@xilinx.com>
+
+       * sysdeps/microblaze/jmpbuf-unwind.h (_jmpbuf_sp): Declare SP as void
+       pointer and cast to uintptr_t.
+
+2015-01-09  David Holsgrove  <david.holsgrove@xilinx.com>
+
+       * sysdeps/microblaze/nptl/tls.h (__microblaze_get_thread_area): Function
+       removed.
+       (READ_THREAD_POINTER): Use __microblaze_thread_area instead.
+
+2015-01-09  David Holsgrove  <david.holsgrove@xilinx.com>
+
+       * sysdeps/microblaze/nptl/tls.h (TLS_INIT_TP): Use NULL instead
+       of 0.
+
+2015-01-08  Roland McGrath  <roland@hack.frob.com>
+
+       * sysdeps/pthread/timer_routines.c: Fix <pthreadP.h> include to use
+       <nptl/pthreadP.h> instead.
+       * sysdeps/pthread/aio_notify.c: Include <signal.h> for raise decl.
+
+       * signal/allocrtsig.c (RESERVED_SIGRT): New macro, defined to 0 if not
+       already defined.
+       [__SIGRTMIN] (init): Function removed.
+       [__SIGRTMIN] (initialized): Variable removed.
+       [!__SIGRTMIN] (current_rtmin, current_rtmax): Variables removed.
+       [__SIGRTMIN] (current_rtmin, current_rtmax): Initialize to
+       __SIGRTMIN + RESERVED_SIGRT and __SIGRTMAX, respectively.
+       (__libc_current_sigrtmin) [__SIGRTMIN]: Don't call init.
+       (__libc_current_sigrtmin) [!__SIGRTMIN]: Just return -1.
+       (__libc_current_sigrtmin): Add __libc_current_sigrtmin_private alias.
+       (__libc_current_sigrtmax) [__SIGRTMIN]: Don't call init.
+       (__libc_current_sigrtmax) [!__SIGRTMIN]: Just return -1.
+       (__libc_current_sigrtmax): Add __libc_current_sigrtmax_private alias.
+       (__libc_allocate_rtsig) [__SIGRTMIN]: Don't call init.
+       (__libc_allocate_rtsig): Add __libc_allocate_rtsig_private alias.
+       * sysdeps/nptl/allocrtsig.c: New file.
+       * sysdeps/unix/sysv/linux/allocrtsig.c: File removed.
+       * sysdeps/unix/sysv/linux/testrtsig.h: File removed.
+       * sysdeps/generic/testrtsig.h: File removed.
+
+       * nptl/pthread_sigmask.c [SIGCANCEL || SIGTIMER || SIGSETXID]: #error.
+       (pthread_sigmask): Call sigprocmask, not __sigprocmask.
+
+       * nptl/nptl-init.c (pthread_functions): Conditionalize
+       .ptr__nptl_setxid initialization on [SIGSETXID].
+
+       * sysdeps/nptl/sys/procfs.h: New file.
+       * nptl_db/Makefile (headers): Add it.
+       * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add it.
+
+       * nptl/pthreadP.h (check_cpuset_attr): Moved ...
+       * sysdeps/unix/sysv/linux/check-cpuset.h: ... to this new file.
+       * nptl/pthread_attr_setaffinity.c: Include it.
+       * nptl/pthread_setattr_default_np.c: Likewise.
+       * nptl/check-cpuset.h: New file.
+
+2015-01-08  Richard Henderson  <rth@redhat.com>
+
+       * elf/Makefile (CFLAGS-tst-execstack-mod.c): Add -Wno-trampolines
+       (CFLAGS-tst-execstack-prog.c): Likewise.
+       * nptl/Makefile (CFLAGS-tst-execstack-mod.c): Likewise.
+
+2015-01-08  Chung-Lin Tang  <cltang@codesourcery.com>
+           Sandra Loosemore  <sandra@codesourcery.com>
+           Andrew Jenner  <andrew@codesourcery.com>
+           Joseph Myers  <joseph@codesourcery.com>
+           Nathan Sidwell  <nathan@codesourcery.com>
+
+       * elf/elf.h (EM_ALTERA_NIOS2): New machine number for Altera Nios II.
+       (DT_NIOS2_GP): New dynamic entry type for Nios II _gp address.
+       (R_NIOS2_NONE,R_NIOS2_S16,R_NIOS2_U16): Define Nios II relocations.
+       (R_NIOS2_PCREL16,R_NIOS2_CALL26,R_NIOS2_IMM5): Likewise.
+       (R_NIOS2_CACHE_OPX,R_NIOS2_IMM6,R_NIOS2_IMM8,R_NIOS2_HI16): Likewise.
+       (R_NIOS2_LO16,R_NIOS2_HIADJ16,R_NIOS2_BFD_RELOC_32): Likewise.
+       (R_NIOS2_BFD_RELOC_16,R_NIOS2_BFD_RELOC_8,R_NIOS2_GPREL): Likewise.
+        (R_NIOS2_GNU_VTINHERIT,R_NIOS2_GNU_VTENTRY,R_NIOS2_UJMP): Likewise.
+        (R_NIOS2_CJMP,R_NIOS2_CALLR,R_NIOS2_ALIGN,R_NIOS2_GOT16): Likewise.
+        (R_NIOS2_CALL16,R_NIOS2_GOTOFF_LO,R_NIOS2_GOTOFF_HA): Likewise.
+        (R_NIOS2_PCREL_LO,R_NIOS2_PCREL_HA,R_NIOS2_TLS_GD16): Likewise.
+        (R_NIOS2_TLS_LDM16,R_NIOS2_TLS_LDO16,R_NIOS2_TLS_IE16): Likewise.
+        (R_NIOS2_TLS_LE16,R_NIOS2_TLS_DTPMOD,R_NIOS2_TLS_DTPREL): Likewise.
+       (R_NIOS2_TLS_TPREL,R_NIOS2_COPY,R_NIOS2_GLOB_DAT): Likewise.
+       (R_NIOS2_JUMP_SLOT,R_NIOS2_RELATIVE,R_NIOS2_GOTOFF): Likewise.
+       (R_NIOS2_CALL26_NOAT,R_NIOS2_GOT_LO,R_NIOS2_GOT_HA): Likewise.
+       (R_NIOS2_CALL_LO,R_NIOS2_CALL_HA): Likewise.
+
+2015-01-08  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+       * sysdeps/unix/sysv/linux/futimens.c (futimens): Use address of first
+       timespec struct member in syscall macro.
+       * sysdeps/unix/sysv/linux/utimensat.c (utimensat): Likewise.
+       * sysdeps/unix/sysv/linux/futimesat.c (futimesat): Use address of
+       first timeval struct member in syscall macro.
+       * sysdeps/unix/sysv/linux/utimes.c (__utimeS): Likewise.
+
+2015-01-07  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17748]
+       * include/fenv.h (__feupdateenv): Use libm_hidden_proto.
+       * math/feupdateenv.c (__feupdateenv): Use libm_hidden_def.
+       * sysdeps/aarch64/fpu/feupdateenv.c (feupdateenv): Rename to
+       __feupdateenv and define as weak alias of __feupdateenv.  Use
+       libm_hidden_weak.
+       * sysdeps/alpha/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/arm/feupdateenv.c (feupdateenv): Rename to __feupdateenv
+       and define as weak alias of __feupdateenv.  Use libm_hidden_weak.
+       * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/i386/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Rename to
+       __feupdateenv and define as weak alias of __feupdateenv.  Use
+       libm_hidden_weak.
+       * sysdeps/m68k/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/mips/fpu/feupdateenv.c (feupdateenv): Rename to
+       __feupdateenv and define as weak alias of __feupdateenv.  Use
+       libm_hidden_weak.
+       * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c
+       (__feupdateenv): Likewise.
+       * sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Rename to
+       __feupdateenv and define as weak alias of __feupdateenv.  Use
+       libm_hidden_weak.
+       * sysdeps/sh/sh4/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/sparc/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/tile/math_private.h (__feupdateenv): New inline
+       function.
+       * sysdeps/x86_64/fpu/feupdateenv.c (__feupdateenv): Use
+       libm_hidden_def.
+       * sysdeps/generic/math_private.h (default_libc_feupdateenv): Call
+       __feupdateenv instead of feupdateenv.
+       (default_libc_feupdateenv_test): Likewise.
+       (libc_feresetround_ctx): Likewise.
+
+2015-01-07  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+       * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Fix function
+       prototype.
+
+2015-01-07  Chris Metcalf  <cmetcalf@ezchip.com>
+
+       * posix/regcomp.c (parse_bracket_exp): Initialize type to
+       COLL_SYM in a couple of places to avoid uninitialized variable
+       wanings on tilegx gcc 4.8.2.
+
+2015-01-07  Richard Earnshaw  <rearnsha@arm.com>
+
+       * sysdeps/aarch64/strcpy.S: New file.
+       * sysdeps/aarch64/stpcpy.S: New file.
+       * NEWS: Updated.
+
+2015-01-07  Richard Earnshaw  <rearnsha@arm.com>
+
+       * sysdeps/aarch64/strrchr.S: New file.
+       * NEWS: Updated.
+
+2015-01-07  Eric Biggers  <ebiggers3@gmail.com>
+
+       [BZ #17658]
+       * stdlib/setenv.c: Fix memory leak when setting large,
+       duplicate string.
+
+2015-01-06  Vladimir A. Nazarenko  <naszar@ya.ru>
+
+       [BZ #17273]
+       * misc/mntent_r.c (__getmntent_r): Cut off trailing spaces
+       and tabs from buffer before parsing fstab entry.
+       * misc/tst-mntent.c (main): Add test for mount entry with
+       trailing spaces and tabs.
+
+2015-01-06  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17748]
+       * include/fenv.h (__fesetround): Declare.  Use libm_hidden_proto.
+       * math/fesetround.c (fesetround): Rename to __fesetround and
+       define as weak alias of __fesetround.  Use libm_hidden_weak.
+       * sysdeps/aarch64/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/alpha/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/arm/fesetround.c (fesetround): Likewise.
+       * sysdeps/hppa/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/i386/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/ia64/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/m68k/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/mips/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/powerpc/fpu/fenv_libc.h (__fesetround): Rename to
+       __fesetround_inline.
+       * sysdeps/powerpc/fpu/fenv_private.h (libc_fesetround_ppc): Call
+       __fesetround_inline instead of __fesetround.
+       * sysdeps/powerpc/fpu/fesetround.c (fesetround): Rename to
+       __fesetround and define as weak alias of __fesetround.  Use
+       libm_hidden_weak.  Call __fesetround_inline instead of
+       __fesetround.
+       * sysdeps/powerpc/nofpu/fesetround.c (fesetround): Rename to
+       __fesetround and define as weak alias of __fesetround.  Use
+       libm_hidden_weak.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c (fesetround):
+       Likewise.
+       * sysdeps/s390/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/sh/sh4/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/sparc/fpu/fesetround.c (fesetround): Likewise.
+       * sysdeps/tile/math_private.h (__fesetround): New inline function.
+       * sysdeps/x86_64/fpu/fesetround.c (fesetround): Rename to
+       __fesetround and define as weak alias of __fesetround.  Use
+       libm_hidden_weak.
+       * sysdeps/generic/math_private.h (default_libc_fesetround): Call
+       __fesetround instead of fesetround.
+       (default_libc_feholdexcept_setround): Likewise.
+       (libc_feholdsetround_ctx): Likewise.
+       (libc_feholdsetround_noex_ctx): Likewise.
+
+       [BZ #17748]
+       * include/fenv.h (__fesetenv): Use libm_hidden_proto.
+       * math/fesetenv.c (__fesetenv): Use libm_hidden_def.
+       * sysdeps/aarch64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv
+       and define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/alpha/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
+       * sysdeps/arm/fesetenv.c (fesetenv): Rename to __fesetenv and
+       define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
+       * sysdeps/i386/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
+       * sysdeps/ia64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
+       define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/m68k/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
+       * sysdeps/mips/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
+       define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Use
+       libm_hidden_def.
+       * sysdeps/powerpc/nofpu/fesetenv.c (__fesetenv): Likewise.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c (__fesetenv):
+       Likewise.
+       * sysdeps/s390/fpu/fesetenv.c (fesetenv): Rename to __fesetenv and
+       define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/sh/sh4/fpu/fesetenv.c (fesetenv): Likewise.
+       * sysdeps/sparc/fpu/fesetenv.c (__fesetenv): Use libm_hidden_def.
+       * sysdeps/tile/math_private.h (__fesetenv): New inline function.
+       * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Rename to __fesetenv
+       and define as weak alias of __fesetenv.  Use libm_hidden_weak.
+       * sysdeps/generic/math_private.h (default_libc_fesetenv): Use
+       __fesetenv instead of fesetenv.
+       (libc_feresetround_noex_ctx): Likewise.
+       * sysdeps/alpha/fpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/i386/fpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/m68k/fpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/mips/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c
+       (__feupdateenv): Likewise.
+       * sysdeps/s390/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/sh/sh4/fpu/feupdateenv.c (feupdateenv): Likewise.
+       * sysdeps/sparc/fpu/feupdateenv.c (__feupdateenv): Likewise.
+       * sysdeps/x86_64/fpu/feupdateenv.c (__feupdateenv): Likewise.
+
+2015-01-06  Aurelien Jarno  <aurelien@aurel32.net>
+
+       [BZ #17806]
+       * resolv/res_init.c (__res_iclose): Only clear nsinit if the
+       addresses have been freed.
+
+2015-01-06  Aurelien Jarno  <aurelien@aurel32.net>
+
+       * resolv/res_init.c (__res_vinit): Improve comments about nserv
+       and nservall.
+
+2015-01-06  Ondřej Bílka  <neleai@seznam.cz>
+
+       * sysdeps/unix/sysv/linux/check_pf.c (make_request):
+       Clean up check_pf allocation pattern. addresses
+
+2015-01-06  Adhemerval Zanella  <azanella@linux.vnet.ibm.com>
+
+       * nptl/pthread_cancel.c (pthread_cancel): Use ANSI prototype.
+       * nptl/pthread_cond_timedwait.c (__pthread_cond_timedwait): Likewise.
+       * nptl/pthread_cond_wait.c (__pthread_cond_wait): Likewise.
+       * nptl/pthread_exit.c (__pthread_exit): Likewise.
+       * nptl/pthread_join.c (pthread_join): Likewise.
+       * nptl/pthread_timedjoin.c (pthread_timedjoin_np): Likewise.
+       * sysdeps/posix/waitid.c (__waitid): Likewise.
+       * sysdeps/unix/sysv/linux/arm/pread.c (__libc_pread): Likewise.
+       * sysdeps/unix/sysv/linux/arm/pread64.c (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/arm/pwrite.c (__libc_pwrite): Likewise.
+       * sysdeps/unix/sysv/linux/arm/pwrite64.c (__libc_pwrite64): Likewise.
+       * sysdeps/unix/sysv/linux/generic/wordsize-32/pread.c (__libc_pread):
+       Likewise.
+       * sysdeps/unix/sysv/linux/generic/wordsize-32/pread64.c
+       (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite.c
+       (__libc_pwrite): Likewise.
+       * sysdeps/unix/sysv/linux/generic/wordsize-32/pwrite64.c
+       (__libc_pwrite64): Likewsie.
+       * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
+       * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
+       * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
+       * sysdeps/unix/sysv/linux/msgrcv.c (__libc_msgrcv): Likewise.
+       * sysdeps/unix/sysv/linux/msgsnd.c (__libc_msgsnd): Likewise.
+       * sysdeps/unix/sysv/linux/openat.c (OPENAT_NOT_CANCEL): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c (__libc_pread):
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c
+       (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c (__libc_pwrite):
+       Likewise.
+       * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c
+       (__libc_pwrite64): Likewise.
+       * sysdeps/unix/sysv/linux/pread.c (__libc_pread): Likewise.
+       * sysdeps/unix/sysv/linux/pread64.c (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/preadv.c (PREADV): Likewise.
+       * sysdeps/unix/sysv/linux/pthread_kill.c (__pthread_kill): Likewise.
+       * sysdeps/unix/sysv/linux/pwrite.c (__libc_pwrite): Likewise.
+       * sysdeps/unix/sysv/linux/pwrite64.c (__libc_pwrite64): Likewise.
+       * sysdeps/unix/sysv/linux/pwritev.c (__libc_pwritev): Likewise.
+       * sysdeps/unix/sysv/linux/sh/pread.c (__libc_pread): Likewise.
+       * sysdeps/unix/sysv/linux/sh/pread64.c (__libc_pread64): Likewise.
+       * sysdeps/unix/sysv/linux/sh/pwrite.c (__libc_pwrite): Likewise.
+       * sysdeps/unix/sysv/linux/sh/pwrite64.c (__libc_write64): Likewise.
+       * sysdeps/unix/sysv/linux/sigsuspend.c (__sigsuspend): Likewise.
+       * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Likewise.
+       * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
+       * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
+       * sysdeps/unix/sysv/linux/sparc/sparc64/msgrcv.c (__libc_msgrcv):
+       Likewise.
+
+2015-01-06  Andrew Senkevich  <andrew.n.senkevich@gmail.com>
+
+       * math/Makefile (CFLAGS-test-float.c): Remove -frounding-math.
+       (CFLAGS-test-double.c): Likewise.
+       (CFLAGS-test-ldouble.c): Likewise.
+       (CPPFLAGS-test-ifloat.c): Likewise.
+       (CPPFLAGS-test-idouble.c): Likewise.
+       (CPPFLAGS-test-ildoubl.c): Likewise.
+       (CFLAGS-test-test-fenv.c): Remove variable.
+       (CFLAGS-test-misc.c): Likewise.
+
+2015-01-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       [BZ #17797]
+       * bits/time.h (CLOCKS_PER_SEC): Changed to ((clock_t) 1000000).
+       * sysdeps/unix/sysv/linux/bits/time.h (CLOCKS_PER_SEC): Likewise.
+       * sysdeps/unix/sysv/linux/clock.c (clock): _Static_assert
+       CLOCKS_PER_SEC == 1000000.
+       * time/clocktest.c (main): Replace %ld with %jd and cast to
+       intmax_t.
+
+2015-01-05  Roland McGrath  <roland@hack.frob.com>
+
+       * sysdeps/generic/unwind-resume.h: New file.
+       * sysdeps/gnu/unwind-resume.c: Include it.
+       (libgcc_s_personality): Use PERSONALITY_PROTO macro for the prototype.
+       (__gcc_personality_v0): Likewise, and PERSONALITY_ARGS for the callee
+       argument list.
+       (libgcc_s_resume): Variable renamed to __libgcc_s_resume, made hidden
+       global rather than static.
+       (_Unwind_Resume): Update user.
+       Conditionalize definition on [!HAVE_ARCH_UNWIND_RESUME].
+       (init): Likewise.  Renamed to __libgcc_s_init, made hidden global
+       rather than static.  Add __attribute__ ((cold)).
+       (_Unwind_Resume, __gcc_personality_v0): Update callers.
+       * sysdeps/nptl/unwind-forcedunwind.c: Likewise.
+       * sysdeps/arm/arm-unwind-resume.S: New file.
+       * sysdeps/arm/rt-arm-unwind-resume.S: New file.
+       * sysdeps/arm/pt-arm-unwind-resume.S: New file.
+       * sysdeps/arm/Makefile [$(subdir) = csu]
+       (sysdep_routines, shared-only-routines): Add arm-unwind-resume.
+       [$(subdir) = rt] (librt-sysdep_routines, librt-shared-only-routines):
+       Add rt-arm-unwind-resume.
+       [$(subdir) = nptl]
+       (libpthread-sysdep_routines, libpthread-shared-only-routines):
+       Add pt-arm-unwind-resume.
+       * sysdeps/unix/sysv/linux/arm/unwind-resume.c: File removed.
+       * sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c: File removed.
+
+2015-01-05  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17748]
+       * include/fenv.h (__feholdexcept): Declare.  Use
+       libm_hidden_proto.
+       * math/feholdexcpt.c (feholdexcept): Rename to __feholdexcept and
+       define as weak alias of __feholdexcept.  Use libm_hidden_weak.
+       * sysdeps/aarch64/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/alpha/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/arm/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/m68k/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/mips/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/powerpc/nofpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c
+       (feholdexcept): Likewise.
+       * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Likewise.
+       * sysdeps/generic/math_private.h (default_libc_feholdexcept): Use
+       __feholdexcept instead of feholdexcept.
+       (default_libc_feholdexcept_setround): Likewise.
+
+2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
+
+       * sysdeps/mips/memset.S (memset): Modify for mips32r6/mips64r6
+       to avoid using stl/str to align destination.
+
+2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
+
+       * sysdeps/mips/memcpy.S: Add support for mips32r6/mips64r6.
+
+2015-01-05  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17796]
+       * sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fadvise.c
+       [!SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_3_3)] (posix_fadvise64):
+       Define as weak alias not strong alias.
+
+2015-01-05  Steve Ellcey  <sellcey@imgtec.com>
+
+       * sysdeps/mips/dl-machine.h (elf_machine_load_address): Replace
+       bltzal with addiupc.
+       (RTLD_START): Ditto.
+
+2015-01-05  Chris Metcalf  <cmetcalf@ezchip.com>
+
+        * sysdeps/unix/sysv/linux/tile/bits/libc-vdso.h: Fix return type
+        for __vdso_* functions in declarations.
+        * sysdeps/unix/sysv/linux/tile/init-first.c: Likewise for
+        definitions.
+        * sysdeps/unix/sysv/linux/tile/sysdep.h (INLINE_VSYSCALL,
+        INTERNAL_VSYSCALL): Use struct return types to check for error.
+
+       * sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c [!defined _LP64
+       && REGISTER_CAST_INT32_TO_INT64]: Provide explicit lround()
+       function with cast from llround().
+       * sysdeps/tile/sysdep.h (REGISTER_CAST_INT32_TO_INT64): Define.
+       * sysdeps/x86_64/x32/sysdep.h (REGISTER_CAST_INT32_TO_INT64):
+       Define.
+
+2015-01-05  Joseph Myers  <joseph@codesourcery.com>
+
+       [BZ #17793]
+       * sysdeps/unix/sysv/linux/arm/posix_fadvise64.c (posix_fadvise64):
+       Define as weak alias not strong alias.
+
+       [BZ #17635]
+       * ctype/ctype-c99.c: New file.  isblank implementation moved from
+       ...
+       * ctype/ctype-extn.c: ... here.
+       (__isblank_l): Move to ...
+       * ctype/ctype-c99_l.c: ... here.  New file.
+       * ctype/Makefile (routines): Add ctype-c99 and ctype-c99_l.
+       * conform/Makefile (test-xfail-ISO99/ctype.h/linknamespace):
+       Remove variable.
+       (test-xfail-ISO11/ctype.h/linknamespace): Likewise.
+       (test-xfail-XPG3/ctype.h/linknamespace): Likewise.
+       (test-xfail-XPG4/ctype.h/linknamespace): Likewise.
+       (test-xfail-UNIX98/ctype.h/linknamespace): Likewise.
+       (test-xfail-POSIX2008/ctype.h/linknamespace): Likewise.
+
+       [BZ #17777]
+       * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c
+       (posix_fadvise64): Define as weak alias not strong alias.
+       * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c
+       (posix_fallocate64): Likewise.
+       * conform/Makefile (test-xfail-XOPEN2K/fcntl.h/linknamespace):
+       Remove variable.
+       (test-xfail-XOPEN2K/mqueue.h/linknamespace): Likewise.
+       (test-xfail-POSIX2008/fcntl.h/linknamespace): Likewise.
+       (test-xfail-POSIX2008/mqueue.h/linknamespace): Likewise.
+       (test-xfail-XOPEN2K8/fcntl.h/linknamespace): Likewise.
+       (test-xfail-XOPEN2K8/mqueue.h/linknamespace): Likewise.
+
+2015-01-05  Matthew Fortune  <matthew.fortune@imgtec.com>
+
+       [BZ #16191]
+       * NEWS: Mention bug fix.
+       * sysdeps/unix/sysv/linux/mips/sys/user.h (PAGE_SHIFT): Remove.
+       (PAGE_SIZE, PAGE_MASK, NBPG, UPAGES): Likewise.
+       (HOST_TEXT_START_ADDR, HOST_DATA_START_ADDR): Likewise.
+       (HOST_STACK_END_ADDR): Likewise.
+
 2015-01-02  Joseph Myers  <joseph@codesourcery.com>
 
+       [BZ #17748]
+       * include/fenv.h (__fegetround): Declare.  Use libm_hidden_proto.
+       * math/fegetround.c (fegetround): Rename to __fegetround and
+       define as weak alias of __fegetround.  Use libm_hidden_weak.
+       * sysdeps/aarch64/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/alpha/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/arm/fegetround.c (fegetround): Likewise.
+       * sysdeps/hppa/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/i386/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/ia64/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/m68k/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/mips/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/powerpc/fpu/fegetround.c (fegetround): Likewise.
+       Undefine after rather than before function definition; use
+       parentheses around function name in definition.
+       (__fegetround): Also undefine macro after function definition.
+       * sysdeps/powerpc/nofpu/fegetround.c (fegetround): Rename to
+       __fegetround and define as weak alias of __fegetround.  Use
+       libm_hidden_weak.  Do not undefine as macro.
+       * sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c (fegetround):
+       Likewise.
+       * sysdeps/s390/fpu/fegetround.c (fegetround): Rename to
+       __fegetround and define as weak alias of __fegetround.  Use
+       libm_hidden_weak.
+       * sysdeps/sh/sh4/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/sparc/fpu/fegetround.c (fegetround): Likewise.
+       * sysdeps/tile/math_private.h (__fegetround): New inline function.
+       * sysdeps/x86_64/fpu/fegetround.c (fegetround): Rename to
+       __fegetround and define as weak alias of __fegetround.  Use
+       libm_hidden_weak.
+       * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Use
+       __fegetround instead of fegetround.
+
+       [BZ #17782]
+       * sysdeps/unix/sysv/linux/mips/bits/termios.h (TIOCSER_TEMT):
+       Condition macro definition on [__USE_MISC].
+
+       [BZ #17781]
+       * sysdeps/unix/sysv/linux/mips/bits/sigaction.h
+       (struct sigaction): Change type of sa_flags field to int.
+
        [BZ #17780]
        * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock)
        [!__USE_FILE_OFFSET64 && _MIPS_SIM != _ABI64]: Rename pad field to