Bug 6803 - scalb(), scalbln(), scalbn() do not set errno on overflow/underflow
Summary: scalb(), scalbln(), scalbn() do not set errno on overflow/underflow
Status: RESOLVED FIXED
Alias: None
Product: glibc
Classification: Unclassified
Component: math (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: 2.23
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-31 11:05 UTC by Michael Kerrisk
Modified: 2020-05-26 09:20 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:
fweimer: security-


Attachments
test program (2.74 KB, text/plain)
2008-07-31 11:06 UTC, Michael Kerrisk
Details
test program (2.75 KB, text/plain)
2008-07-31 11:07 UTC, Michael Kerrisk
Details
test program (2.74 KB, text/plain)
2008-07-31 11:07 UTC, Michael Kerrisk
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Kerrisk 2008-07-31 11:05:58 UTC
On overflow and underflow, scalb(), scalbln(), scalbn() correctly raises
exceptions.  But errno is not set.  For these errors errno should be set to ERANGE.

Background: 
On error, many glibc math functions both set errno and raise an exception
(fetestexcept(3)).  For example, the following  function all do this: acos(),
asin(), cosh(), sinh(), acosh(), asinh(), exp(), exp2(), ldexp(), log(),
log10(), log2().  However, there is much inconsistency.  Some functions raise an
exception, but don't set errno.  Some functions set errno for some errors, but
not others.  A few set errno, but don't raise an exception.  This series of bug
reports documents deviations from what I consider the ideal: all functions
should BOTH set errno AND raise an exception for all errors.

All of these reports relate to tests on glibc 2.8 (as provided by SUSE 11.0).
Comment 1 Michael Kerrisk 2008-07-31 11:06:44 UTC
Created attachment 2867 [details]
test program
Comment 2 Michael Kerrisk 2008-07-31 11:07:09 UTC
Created attachment 2868 [details]
test program
Comment 3 Michael Kerrisk 2008-07-31 11:07:52 UTC
Created attachment 2869 [details]
test program
Comment 4 Michael Kerrisk 2008-07-31 11:11:06 UTC
Sample runs demonstrating the problem

$ /tmp/mt_scalb -- dbl_max 1000
errno == 0
fetestexcept() says:  FE_OVERFLOW FE_INEXACT
scalb(1.79769313486231571e+308,1.00000000000000000e+03)=inf
0 FE_OVERFLOW +inf

$ /tmp/mt_scalb -- dbl_min -1000
errno == 0
fetestexcept() says:  FE_UNDERFLOW FE_INEXACT
scalb(2.22507385850720138e-308,-1.00000000000000000e+03)=0.00000000000000000e+00
0 FE_UNDERFLOW +0

$ /tmp/mt_scalbln -- dbl_max 1000
errno == 0
fetestexcept() says:  FE_OVERFLOW FE_INEXACT
scalbln(1.79769313486231571e+308,1000)=inf
0 FE_OVERFLOW +inf

$ /tmp/mt_scalbln -- dbl_min -1000
errno == 0
fetestexcept() says:  FE_UNDERFLOW FE_INEXACT
scalbln(2.22507385850720138e-308,-1000)=0.00000000000000000e+00
0 FE_UNDERFLOW +0

$ /tmp/mt_scalbn -- dbl_max 1000
errno == 0
fetestexcept() says:  FE_OVERFLOW FE_INEXACT
scalbn(1.79769313486231571e+308,1000)=inf
0 FE_OVERFLOW +inf

$ /tmp/mt_scalbn -- dbl_min -1000
errno == 0
fetestexcept() says:  FE_UNDERFLOW FE_INEXACT
scalbn(2.22507385850720138e-308,-1000)=0.00000000000000000e+00
0 FE_UNDERFLOW +0

Comment 5 Joseph Myers 2012-03-01 17:34:28 UTC
Confirmed with current sources on x86 and x86_64.
Comment 6 Sourceware Commits 2014-03-31 14:58:46 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  8795b4a443a8f19d279e0c1bc99b73d1f5aec166 (commit)
      from  54fa2475d37b9c7afd903eb970362e50ec76f01e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8795b4a443a8f19d279e0c1bc99b73d1f5aec166

commit 8795b4a443a8f19d279e0c1bc99b73d1f5aec166
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Mon Mar 31 14:57:53 2014 +0000

    Set errno for scalb errors (bug 6803, bug 6804).
    
    This patch fixes the default mode of scalb to set errno (bugs 6803 and
    6804).
    
    Previously, the _LIB_VERSION == _SVID_ mode would set errno but only
    in some relevant cases, and with various peculiarities (such as errno
    setting when an exact infinity or zero result arises with an argument
    to scalb being an infinity).  This patch leaves this mode
    bug-compatible, while making the default mode set errno in accordance
    with normal practice (so an exact infinity from an infinite argument
    is not an error, and nor is an exact zero result).  gen-libm-test.pl
    is taught new notation such as ERRNO_PLUS_OFLOW to facilitate writing
    the tests of errno setting for underflow / overflow in libm-test.inc.
    
    Note that bug 6803 also covers scalbn and scalbln, but this patch only
    addresses the scalb parts of that bug (along with the whole of bug
    6804).
    
    Tested x86_64 and x86.
    
    	[BZ #6803]
    	[BZ #6804]
    	* math/w_scalb.c (__scalb): For non-SVID mode, check result and
    	set errno as appropriate.
    	* math/w_scalbf.c (__scalbf): Likewise.
    	* math/w_scalbl.c (__scalbl): Likewise.
    	* math/gen-libm-test.pl (parse_args): Handle ERRNO_PLUS_OFLOW,
    	ERRNO_MINUS_OFLOW, ERRNO_PLUS_UFLOW and ERRNO_MINUS_UFLOW.
    	* math/libm-test.inc (scalb_test_data): Add errno expectations.
    	Add more NaN tests.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog             |   11 ++++
 NEWS                  |   10 ++--
 math/gen-libm-test.pl |   10 ++++
 math/libm-test.inc    |  134 +++++++++++++++++++++++++------------------------
 math/w_scalb.c        |   30 ++++++++++-
 math/w_scalbf.c       |   30 ++++++++++-
 math/w_scalbl.c       |   30 ++++++++++-
 7 files changed, 175 insertions(+), 80 deletions(-)
Comment 7 Sourceware Commits 2014-06-20 02:33:00 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  3ef6b85059cdd52096625d98c4ce9259854cb8bb (commit)
       via  d8c2869d4450d54935c3410ad3093d51b5d85f79 (commit)
      from  c8daec5c7cd19378112391d2394e6d6344e156dc (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3ef6b85059cdd52096625d98c4ce9259854cb8bb

commit 3ef6b85059cdd52096625d98c4ce9259854cb8bb
Author: Stefan Liebler <stli@linux.vnet.ibm.com>
Date:   Fri Jun 20 07:48:20 2014 +0530

    [BZ #6803] Set errno for scalbln, scalbn
    
    Errno is not set and the testcases will fail.
    
    Now the scalbln-aliases are removed in i386/m68
    and the wrappers are used when calling the scalbln-functions.
    
    On ia64 only scalblnf has its own implementation.
    For scalbln and scalblnl the ieee754/dbl-64 and ieee754/ldbl-96 are used, thus
    the wrappers are needed, too.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d8c2869d4450d54935c3410ad3093d51b5d85f79

commit d8c2869d4450d54935c3410ad3093d51b5d85f79
Author: Stefan Liebler <stli@linux.vnet.ibm.com>
Date:   Fri Jun 20 07:44:42 2014 +0530

    Generate en_GB.UTF-8 during testing
    
    This patch generates en_GB.UTF-8, which is used in
    tst-strcoll-overflow.  This solves the issue of failing xtests on
    s390/s390x.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                      |   37 +++++++
 NEWS                                           |   24 ++--
 localedata/Makefile                            |    2 +-
 math/Makefile                                  |    2 +-
 math/libm-test.inc                             |  128 ++++++++++++------------
 math/w_scalbln.c                               |   40 ++++++++
 math/w_scalblnf.c                              |   36 +++++++
 math/w_scalblnl.c                              |   36 +++++++
 sysdeps/i386/fpu/s_scalbn.S                    |    1 -
 sysdeps/i386/fpu/s_scalbnf.S                   |    1 -
 sysdeps/i386/fpu/s_scalbnl.S                   |    1 -
 sysdeps/ia64/fpu/w_scalblnf.c                  |   20 ++++
 sysdeps/ieee754/dbl-64/s_scalbln.c             |    2 -
 sysdeps/ieee754/dbl-64/wordsize-64/s_scalbln.c |    2 -
 sysdeps/ieee754/flt-32/s_scalblnf.c            |    1 -
 sysdeps/ieee754/ldbl-128/s_scalblnl.c          |    1 -
 sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c       |    1 -
 sysdeps/ieee754/ldbl-128ibm/w_scalblnl.c       |   23 ++++
 sysdeps/ieee754/ldbl-64-128/s_scalblnl.c       |    5 -
 sysdeps/ieee754/ldbl-64-128/w_scalblnl.c       |   27 +++++
 sysdeps/ieee754/ldbl-96/s_scalblnl.c           |    1 -
 sysdeps/m68k/m680x0/fpu/s_scalbn.c             |    1 -
 sysdeps/sparc/sparc64/soft-fp/s_scalblnl.c     |    2 -
 23 files changed, 297 insertions(+), 97 deletions(-)
 create mode 100644 math/w_scalbln.c
 create mode 100644 math/w_scalblnf.c
 create mode 100644 math/w_scalblnl.c
 create mode 100644 sysdeps/ia64/fpu/w_scalblnf.c
 create mode 100644 sysdeps/ieee754/ldbl-128ibm/w_scalblnl.c
 create mode 100644 sysdeps/ieee754/ldbl-64-128/w_scalblnl.c
Comment 8 Sourceware Commits 2014-09-07 12:17:11 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The annotated tag, glibc-2.20 has been created
        at  9bcede1abfb0fa62d54b7cfce5c72d56e2f7b95c (tag)
   tagging  b8079dd0d360648e4e8de48656c5c38972621072 (commit)
  replaces  glibc-2.19
 tagged by  Allan McRae
        on  Sun Sep 7 18:17:29 2014 +1000

- Log -----------------------------------------------------------------
The GNU C Library
=================

The GNU C Library version 2.20 is now available.

The GNU C Library is used as *the* C library in the GNU systems
and is widely used on systems with the Linux kernel.

The GNU C Library is primarily designed to be a portable
and high performance C library.  It follows all relevant
standards including ISO C11 and POSIX.1-2008.  It is also
internationalized and has one of the most complete
internationalization interfaces known.

The GNU C Library webpage is at http://www.gnu.org/software/libc/

Packages for the 2.20 release may be downloaded from:
        http://ftpmirror.gnu.org/libc/
        http://ftp.gnu.org/gnu/libc/

The mirror list is at http://www.gnu.org/order/ftp.html

NEWS for version 2.20
====================

* The following bugs are resolved with this release:

  6804, 9894, 12994, 13347, 13651, 14308, 14770, 15119, 15132, 15347, 15514,
  15698, 15804, 15894, 15946, 16002, 16064, 16095, 16194, 16198, 16275,
  16284, 16287, 16315, 16348, 16349, 16354, 16357, 16362, 16447, 16516,
  16532, 16539, 16545, 16561, 16562, 16564, 16574, 16599, 16600, 16609,
  16610, 16611, 16613, 16619, 16623, 16629, 16632, 16634, 16639, 16642,
  16648, 16649, 16670, 16674, 16677, 16680, 16681, 16683, 16689, 16695,
  16701, 16706, 16707, 16712, 16713, 16714, 16724, 16731, 16739, 16740,
  16743, 16754, 16758, 16759, 16760, 16770, 16786, 16789, 16791, 16796,
  16799, 16800, 16815, 16823, 16824, 16831, 16838, 16839, 16849, 16854,
  16876, 16877, 16878, 16882, 16885, 16888, 16890, 16892, 16912, 16915,
  16916, 16917, 16918, 16922, 16927, 16928, 16932, 16943, 16958, 16965,
  16966, 16967, 16977, 16978, 16984, 16990, 16996, 17009, 17022, 17031,
  17042, 17048, 17050, 17058, 17061, 17062, 17069, 17075, 17078, 17079,
  17084, 17086, 17088, 17092, 17097, 17125, 17135, 17137, 17150, 17153,
  17187, 17213, 17259, 17261, 17262, 17263, 17319, 17325, 17354.

* Reverted change of ABI data structures for s390 and s390x:
  On s390 and s390x the size of struct ucontext and jmp_buf was increased in
  2.19. This change is reverted in 2.20. The introduced 2.19 symbol versions
  of getcontext, setjmp, _setjmp, __sigsetjmp, longjmp, _longjmp, siglongjmp
  are preserved pointing straight to the same implementation as the old ones.
  Given that, new callers will simply provide a too-big buffer to these
  functions. Any applications/libraries out there that embed jmp_buf or
  ucontext_t in an ABI-relevant data structure that have already been rebuilt
  against 2.19 headers will have to rebuilt again. This is necessary in any
  case to revert the breakage in their ABI caused by the glibc change.

* Support for file description locks is added to systems running the
  Linux kernel. The standard file locking interfaces are extended to
  operate on file descriptions, not file descriptors, via the use of
  F_OFD_GETLK, F_OFD_SETLK, and F_OFD_SETLKW. File description locks
  are associated with an open file instead of a process.

* Optimized strchr implementation for AArch64.  Contributed by ARM Ltd.

* The minimum Linux kernel version that this version of the GNU C Library
  can be used with is 2.6.32.

* Running the testsuite no longer terminates as soon as a test fails.
  Instead, a file tests.sum (xtests.sum from "make xcheck") is generated,
  with PASS or FAIL lines for individual tests.  A summary of the results is
  printed, including a list of failing lists, and "make check" exits with
  error status if there were any unexpected failures.  "make check
  stop-on-test-failure=y" may be used to keep the old behavior.

* The am33 port, which had not worked for several years, has been removed
  from ports.

* The _BSD_SOURCE and _SVID_SOURCE feature test macros are no longer
  supported; they now act the same as _DEFAULT_SOURCE (but generate a
  warning).  Except for cases where _BSD_SOURCE enabled BSD interfaces that
  conflicted with POSIX (support for which was removed in 2.19), the
  interfaces those macros enabled remain available when compiling with
  _GNU_SOURCE defined, with _DEFAULT_SOURCE defined, or without any feature
  test macros defined.

* Optimized strcmp implementation for ARMv7.  Contributed by ARM Ltd.

* Added support for TX lock elision of pthread mutexes on s390 and s390x.
  This may improve lock scaling of existing programs on TX capable systems.
  The lock elision code is only built with --enable-lock-elision=yes and
  then requires a GCC version supporting the TX builtins.  With lock elision
  default mutexes are elided via __builtin_tbegin, if the cpu supports
  transactions. By default lock elision is not enabled and the elision code
  is not built.

* CVE-2014-4043 The posix_spawn_file_actions_addopen implementation did not
  copy the path argument.  This allowed programs to cause posix_spawn to
  deference a dangling pointer, or use an unexpected pathname argument if
  the string was modified after the posix_spawn_file_actions_addopen
  invocation.

* All supported architectures now use the main glibc sysdeps directory
  instead of some being in a separate "ports" directory (which was
  distributed separately before glibc 2.17).

* The NPTL implementation of POSIX pthreads is no longer an "add-on".
  On configurations that support it (all Linux configurations), it's now
  used regardless of the --enable-add-ons switch to configure.  It is no
  longer possible to build such configurations without pthreads support.

* Locale names, including those obtained from environment variables (LANG
  and the LC_* variables), are more tightly checked for proper syntax.
  setlocale will now fail (with EINVAL) for locale names that are overly
  long, contain slashes without starting with a slash, or contain ".." path
  components. (CVE-2014-0475)  Previously, some valid locale names were
  silently replaced with the "C" locale when running in AT_SECURE mode
  (e.g., in a SUID program).  This is no longer necessary because of the
  additional checks.

* On x86-64, the dynamic linker's lazy-binding support is now compatible
  with application code using Intel MPX instructions.  (With all previous
  versions, the MPX register state could be clobbered when making calls
  into or out of a shared library.)  Note that while the new dynamic
  linker is compatible with all known x86 hardware whether or not it
  supports Intel MPX, some x86 instruction-set emulators might fail to
  handle the new instruction encodings.  This is known to affect Valgrind
  versions up through 3.9 (but will be fixed in the forthcoming 3.10
  release), and might affect other tools that do instruction emulation.

* Support for loadable gconv transliteration modules has been removed.
  The support for transliteration modules has been non-functional for
  over a decade, and the removal is prompted by security defects.  The
  normal gconv conversion modules are still supported.  Transliteration
  with //TRANSLIT is still possible, and the //IGNORE specifier
  continues to be  supported. (CVE-2014-5119)

* Decoding a crafted input sequence in the character sets IBM933, IBM935,
  IBM937, IBM939, IBM1364 could result in an out-of-bounds array read,
  resulting a denial-of-service security vulnerability in applications which
  use functions related to iconv. (CVE-2014-6040)

Contributors
============

This release was made possible by the contributions of many people.
The maintainers are grateful to everyone who has contributed
changes or bug reports.  These include:

Adam Conrad
Adhemerval Zanella
Alan Modra
Allan McRae
Andi Kleen
Andreas Krebbel
Andreas Schwab
Arjun Shankar
Aurelien Jarno
Bernard Ogden
Carlos O'Donell
Chris Metcalf
David Holsgrove
David S. Miller
David Svoboda
Dominik Vogt
Dylan Alex Simon
Eric Wong
Florian Weimer
Guo Yixuan
H.J. Lu
Ian Bolton
Igor Zamyatin
Jeff Layton
Jim Meyering
Joey Ye
Jose E. Marchesi
Joseph Anthony Pasquale Holsten
Joseph Myers
Julian Brown
Khem Raj
Konstantin Serebryany
Kyle McMartin
Ling Ma
Ludovic Courtès
Maciej W. Rozycki
Marcus Shawcroft
Mark Wielaard
Marko Myllynen
Meador Inge
Mike Frysinger
Ondřej Bílka
Paul Eggert
Paul Pluzhnikov
Peter TB Brett
Rajalakshmi Srinivasaraghavan
Rasmus Villemoes
Richard Earnshaw
Richard Henderson
Roland McGrath
Sami Kerola
Samuel Thibault
Sean Anderson
Serge Hallyn
Siddhesh Poyarekar
Sihai Yao
Stefan Liebler
Steve Ellcey
Tomas Dohnalek
Torvald Riegel
Venkataramanan Kumar
Vidya Ranganathan
Wilco
Wilco Dijkstra
Will Newton
Yang Yingliang
Yufeng Zhang
Yury Gribov
Yvan Roux
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAABAgAGBQJUDBTZAAoJEPmf/g/q6Zm99pwH/1dlaqMxZ1SB7Nzk1C95URs+
AOihIh+Q5EYgqD3GnYp/evfMaHzZN7TTncZLXmDq6Ui7UiafYddFL91x06q/NzWN
veCipwZC/RgCtQmEAkonVeREKauYrA4OGar86cU3HCIrpG2lGs/QXlhjvB/0HEay
3EJR90lARmZTjFX6nx78uiAzlpfPWhOiallr+Q6WTO4LSyIsf5obyaTNGNWAmWIj
uotYaWjHr+cLwmiYxgO+6JuSOv7HxutnNer82hCH+k/2ppXyIh5RjqRbvbZFscax
VNnfC5Hg/khzZdVXZXowAOkDvLagiQIwSHfTep80p5NeP+aJ2A+CK1ARYY0y8ts=
=Yk2q
-----END PGP SIGNATURE-----

Adam Conrad (2):
      Allow sys/auxv.h to be used from the testsuite on powerpc and sparc.
      Revert incorrect removal of the XDR currency from locale/iso-4217.def

Adhemerval Zanella (68):
      PowerPC: Update powerpc-fpu ULPs.
      PowerPC: Optimized isnan/isnanf for POWER8
      PowerPC: Optimized isinf/isinff for POWER8
      PowerPC: Optimized finite/finitef for POWER8
      PowerPC: llrint/llrintf POWER8 optimization
      PowerPC: llround/llroundf POWER8 optimization
      PowerPC: Update powerpc-fpu ULPs.
      PowerPC: Fix modf/modff optimization return sign
      PowerPC: strncat optimization for PPC64
      PowerPC: Fix bzero definition for static libc for PPC64
      PowerPC: Fix strspn for static build
      PowerPC: Fix bzero definition for static libc for PPC32
      Add truncl tests related to BZ#16414
      PowerPC: remove wrong ceill implementation for PowerPC64
      PowerPC: remove wrong nearbyintl implementation for PPC64
      PowerPC: remove wrong roundl implementation for PowerPC64
      Add stardard definition on conform processing
      PowerPC: optimized strcspn for PPC64/POWER7
      PowerPC: optimized strpbrk for POWER7
      PowerPC: Fix -Wundef warning for __PTHREAD_MUTEX_HAVE_ELISION.
      Update powerpc-fpu ULPs.
      PowerPC: Revert __PTHREAD_MUTEX_HAVE_ELISION change
      Fix localplt check for GNU_IFUNC
      PowerPC: Fix little endian enconding for mfvsrd
      PowerPC: Fix nearbyint/nearbyintf result for FE_DOWNWARD
      PowerPC: define _CALL_ELF if compiler does not
      PowerPC: Fix --disable-multi-arch builds
      Move __PTHREAD_SPINS definition to architecture specific header
      Define _STRING_ARCH_unaligned unconditionally
      PowerPC: Add fenv macros for long double
      PowerPC: Sync pthread_once with default implementation
      PowerPC: Suppress unnecessary FPSCR write
      Fix
      More fixes for unsafe compiler optimization
      PowerPC: ifunc improvement for internal calls
      Fix elf/tst-tls9-static build
      PowerPC: clean BSD Terminal Modes expectation in termios.h
      PowerPC: Fix multiarch hypotf PPC64 path
      PowerPC: Fix copysignf optimization macro
      Update powerpc-fpu ULPs.
      PowerPC: Fix memchr ifunc hidden symbol for PPC32
      PowerPC: Remove unneeded copysign[f] macros
      PowerPC: Remove 64 bits instructions in PPC32 code
      PowerPC: Consolidate NPTL/non versions of vfork
      PowerPC: Consolidate NPTL/non versions of clone
      PowerPC: Move powerpc64 timer_*.c out of nptl/
      PowerPC: Move NPTL ABI headers to sysdeps.
      PowerPC: Move remaining nptl/sysdeps/unix/sysv/linux/powerpc/ files.
      Update powerpc-fpu ULPs.
      PowerPC: Fix optimized strncat strlen call
      Fix ChangeLog indentation.
      Update powerpc-fpu ULPs.
      Fix ChangeLog indentation.
      PowerPC: Move powerpc code out of nptl/ subdirectory
      PowerPC: sync hwcap.h capabilities
      Update powerpc-fpu ULPs.
      Update powerpc-fpu ULPs.
      PowerPC: Guard CALL_ELF check for ppc64 only in link.h
      PowerPC: memmove default implementation cleanup
      PowerPC: optimized memmove for POWER7/PPC64
      PowerPC: optimized memmove for POWER7/PPC32
      PowerPC: Align power7 memcpy using VSX to quadword
      PowerPC: Add ifunc tests for memmove
      PowerPC: Fix compiler warnings
      PowerPC: Cleanup powerpc memmove
      PowerPC: Fix build due missing lll_robust_trylock
      PowerPC: Fix gprof entry point for LE
      PowerPC: Fix termios definitions

Alan Modra (7):
      Fix s_copysign stack temp for PowerPC64 ELFv2
      Fix reference to toc symbol.
      Correct prefetch hint in power7 memrchr.
      Correct IBM long double nextafterl.
      Correct IBM long double frexpl.
      Update fixed bug list
      Correct DT_PPC64_NUM

Allan McRae (27):
      Open development for 2.20
      Fix qsort argument order in collation example
      Update Esperanto translations
      Fix variable used in sed expression in timezone/Makefile
      Update Swedish translations
      Mention CVE-2014-4043 in NEWS
      Add missing changelog entry for commit ab7ac0f2
      Add fixed bug to NEWS
      Update Spanish translations
      Regenerate libc.po
      Update Spanish translation
      Update Dutch translation
      Update Sweedish translation
      Update Bulgarian translation
      Update German translation
      Update Czech translation
      Update Polish translation
      Update Russian translation
      Update French translation
      Update Ukrainian translation
      Update Vietnamese translation
      Update x86 ULPs
      Update Catalan translation
      Update Esperanto translation
      Update Korean translation
      Update contrib.texi
      Update version.h and include/features.h for 2.20 release

Andi Kleen (5):
      Fix dwarf2 unwinding through futex functions.
      Add a fast path for C rd/wrlock v2
      Add adaptive elision to rwlocks
      Remove x86 assembler rwlock code
      Add fallback file for elide.h

Andreas Krebbel (3):
      BZ #16447: Fix ldbl-128 expl implementation.
      NEWS: Add 16447 to fixed bugs list.
      NEWS: Add comment about changed ABI on s390 and s390x.

Andreas Schwab (45):
      Move m68k from ports to libc
      Whitespace fixes
      Fix memory leak in _nss_dns_gethostbyname4_r with big DNS answer
      Properly fix memory leak in _nss_dns_gethostbyname4_r with big DNS answer
      Add GLIBC_2.17 to librt in Version.def
      Fix race conditions in pldd that may leave the process stopped after detaching
      nscd: also invalidate netgroup cache on reload
      Account for alloca use when collecting interface addresses (bug 16002)
      Fix use of half-initialized result in getaddrinfo when using nscd (bug 16743)
      Setup LOCPATH for tst-ftell-active-handler and tst-ftell-partial-wide in libio
      Fix use of uninitialized variable
      ChangeLog cleanup
      Correctly handle %p in wprintf (BZ #16890)
      Fix implicit declaration
      Don't use catomic functions in mcount (BZ #16912)
      Fix parsing of getai result from nscd for IPv6-only request
      Fix unbound stack use in NIS NSS module
      Fix typo in assertion
      Fix macro warning on HAVE_PT_CHOWN
      Remove last use of USE___THREAD
      Fix searching localedef input on I18NPATH (BZ #16984)
      Remove second argument from TLS_INIT_TP macro
      Fix invalid file descriptor reuse while sending DNS query (BZ #15946)
      Install uz_UZ.UTF-8 locale (BZ #16095)
      ChangeLog fix
      m68k: avoid pointer to integer conversion warning
      m68k: Consolidate NPTL/non versions of vfork
      m68k: Consolidate NPTL/non versions of clone
      Update feature guard for strdup/strndup in <bits/string2.h>
      Pass $TIMEOUTFACTOR to tests also in cross testing
      Fix typo in preprocessor conditional
      m68k: update libm test ULPs
      Don't read past end of pattern in fnmatch (BZ #17062)
      Fix memory leak in regexp compiler (BZ #17069)
      Fix another memory leak in regexp compiler (BZ #17069)
      Don't ignore too long lines in nss_files (BZ #17079)
      Remove unused label
      m68k: Add compat symbols for scalbln*
      Update i386 libm test ULPs
      Fix missing newline in test output
      m68k: update libm test ULPs
      ChangeLog fix
      m68k: use generic lowlevellock.h
      Fix -Wundef warning for HAVE_IFUNC
      Fix missing <math_private.h> in ldbl-96 fma

Arjun Shankar (1):
      Correctly report nscd child process status (BZ #17092)

Aurelien Jarno (5):
      SPARC: add EFD_SEMAPHORE in <bits/eventfd.h> (BZ #16916)
      ptsname_r: don't leak uninitialized memory (BZ #16917)
      SPARC: add prlimit and prlimit64 in <bits/resource.h> (BZ #16943)
      fix nl_langinfo with static linking (BZ #16915)
      Fix strtold on 32-bit sparc (and probably others) (BZ #16965)

Bernard Ogden (3):
      hppa: Remove lowlevellock.c.
      MIPS - Remove mips lowlevellock.h.
      Check value of futex before updating in __lll_timedlock

Carlos O'Donell (27):
      BZ #16613: Support TLS in audit libraries.
      BZ #16632: Change [_BSD/_SVID]_SOURCE warning.
      Add a new "Inter-Process Communication" chapter.
      Use @Theglibc{} in manual/ipc.texi.
      Promote do_lookup_x:check_match to a full function.
      Add header and standard information to threads.texi.
      Revert 4248f0da6ff9e7dd63464cdecec2dec332dfc2f0.
      hppa: Regenerate ULPs.
      hppa: Regenerate ULPs again.
      hppa: Remove fma ulps from libm-test-ulps.
      hppa: Add _STACK_GROWS_* cases to pthread_attr_[sg]etstack.
      Fix ChangeLog formatting.
      manual/ipc.texi: Fix AC-safety notes.
      nscd: Make SELinux checks dynamic.
      Support _r_debug for static binaries.
      manual: Sort overview listing by manual order.
      hppa: Use r25 as second input to __longjmp.
      hppa: Use lll_futex_wake.
      hppa: Update lowlevellock.h.
      Relocate hppa from ports to libc.
      Remove ports README and update machine ChangeLogs.
      Final update to ports ChangeLog.
      Fix -Wundef warning for FEATURE_INDEX_1.
      Remove nested function mi_arena from malloc_info.
      hppa: Add ABI baselines.
      hppa: Remove GLIBC_2.3 from librt.abilist.
      NEWS: Typo fix: s/wil /will /g

Chris Metcalf (7):
      Move tilegx, tilepro, and linux-generic from ports to libc.
      tile: Fix cut-and-paste bug in commit fcccd5128.
      math: make test-fenv-preserve.c a no-op if FE_ALL_EXCEPT == 0.
      crypt: don't include ufc-crypt.h multiple times
      tile: move sysdeps/unix/sysv/linux/tile nptl files.
      tile: Consolidate NPTL/non versions of vfork
      [BZ #17354] tile: Fix up corner cases with signed relocations

David Holsgrove (2):
      [MicroBlaze]: Move MicroBlaze from ports to sysdeps.
      MicroBlaze: Add missing sysdep-cancel.h implementation

David S. Miller (17):
      Fix tst-sscanf and tst-swscanf on 64-bit.
      Regenerate sparc ULPs.
      Fix sigaction conform test failures on sparc.
      Fix some sparc conform test failures in siginfo.h
      Fix some sparc -Wundef build warnings.
      Correct sparc CPP guards for EMT_TAGOVF.
      Add round-mode context support to sparc.
      Fix v9/64-bit strcmp when string ends in multiple zero bytes.
      NEWS: Add 16885 to fixed bug list.
      Fix some termios.h conformtest failures on sparc.
      Fix excessive ULP for y1_upward (0x2p+0) in test-float and test-ifloat.
      Update Sparc ULPS.
      Fixup ChangeLog and add missing NEWS entry for previous commits.
      Consolidate sparc clone, fork, and vfork implementations.
      Update Sparc ULPs.
      Update sparc ULPS.
      Get rid of sparc specific NPTL internaltypes.h header.

David Svoboda (1):
      manual: clarify buffer behavior in getline [BZ #5666]

Dominik Vogt (1):
      S/390: Port of lock elision to System/z

Dylan Alex Simon (1):
      Update x86_64 libm-test-ulps on AMD family 21h model 1 (bug 16545).

Eric Wong (1):
      Avoid stat/fstat in statvfs/fstatvfs (BZ #15132)

Florian Weimer (12):
      misc/sys/select.h (__FD_MASK): Avoid signed integer overflow.
      Check for syscall error in the SETXID implementation in NPTL (bug 13347).
      Update NEWS for fixed bug 13347
      posix_spawn_file_actions_addopen needs to copy the path argument (BZ 17048)
      Fix tautological comparison in non-executed part of tst-setuid2 (BZ #17058)
      setlocale: Use the heap for the copy of the locale argument
      _nl_find_locale: Improve handling of crafted locale names [BZ #17137]
      manual: Update the locale documentation
      nptl: Fix abort in case of set*id failure [BZ #17135]
      __gconv_translit_find: Disable function [BZ #17187]
      Fix typo in CVE ID
      CVE-2014-6040: Crashes on invalid input in IBM gconv modules [BZ #17325]

Guo Yixuan (2):
      Fixed pthread_spin_lock on sparc32/64 (bug 16882)
      New test for pthread_spin_lock (bug 16882)

H.J. Lu (8):
      Check AVX-512 assembler support first
      Replace __int128 with __int128_t in bits/link.h
      Use 3 bytes for __pad1 in pthread_rwlock_t for x32
      Remove sysdeps/x86_64/multiarch/rtld-strlen.S
      Add ifunc tests for x86_64 memset_chk and memset
      Enable AVX2 optimized memset only if -mavx2 works
      Replace cpuid asm statement with __cpuid_count
      Mention fixes for BZs 16194 and 16275 in NEWS

Ian Bolton (4):
      [AArch64] Provide initial implementation of math_private.h.
      [AArch64] Define HAVE_RM_CTX and related hooks.
      Add fenv test support for AArch64.
      [AArch64] Suppress unnecessary FPSR and FPCR writes.

Igor Zamyatin (3):
      Save and restore AVX-512 zmm registers to x86-64 ld.so
      Save/restore bound registers in _dl_runtime_resolve
      Save/restore bound registers for _dl_runtime_profile

Jeff Layton (1):
      fcntl-linux.h: add new definitions and manual updates for open file description locks

Jim Meyering (1):
      regex: don't deref NULL upon heap allocation failure

Joey Ye (1):
      Fix ARM NAN fraction bits.

Jose E. Marchesi (1):
      Fix sparc memcpy data corruption when using niagara2 optimized routines.

Joseph Anthony Pasquale Holsten (1):
      Fix typo in comment in res_query.c

Joseph Myers (158):
      Remove am33 port.
      Move shared sysdeps files from alpha to arm.
      Move arm from ports to libc.
      Fix whitespace in ARM files to allow move.
      Remove mips dependency on alpha.
      Move shared umount.c from hppa to mips.
      Move mips from ports to libc.
      Fix whitespace in MIPS files to allow move.
      Merge MIPS dl-lookup.c into generic file.
      Regenerate x86_64 ulps.
      Remove _BSD_SOURCE and _SVID_SOURCE.
      soft-fp: support after-rounding tininess detection.
      Make ABI tests generate .out files.
      Stop io/ftwtest deleting its own output.
      Remove indirection in stdio-common tests dependencies.
      Remove reference to subdir_lint.out.
      Combine __USE_BSD and __USE_SVID into __USE_MISC.
      Update MIPS math-tests.h for GCC 4.9 using soft-fp.
      Clean up trivially redundant __USE_MISC conditionals.
      Split up rules for tests that compare output with baselines.
      Split up rules for tests using mtrace and something else.
      Fix gen-auto-libm-tests sticky bit setting for negative results.
      Move tests of fma from libm-test.inc to auto-libm-test-in.
      Move tests of clog10 from libm-test.inc to auto-libm-test-in.
      Update ARM HWCAP data.
      Fix __ASSUME_ACCEPT4 issues (bug 16609).
      Fix __ASSUME_RECVMMSG issues (bug 16610).
      Fix __ASSUME_SENDMMSG issues (bug 16611).
      Complete _BSD_SOURCE / _SVID_source followup cleanup.
      Generate .test-result files for tests with special rules.
      Consistently include Makeconfig after defining subdir.
      Support expected failures in .test-result files.
      Fix libm-test.inc:print_complex_max_error handling of some error cases.
      Don't include individual test ulps in libm-test-ulps.
      Automatically check sanity of ulps from libm tests.
      Adjust how gen-auto-libm-tests handles before-rounding/after-rounding cases.
      Don't define __ASSUME_UTIMES for linux-generic architectures.
      Prepare libm-test.inc structures for multi-rounding-mode testing.
      Remove INSTALL_INFO setting in manual/Makefile.
      conformtest: correct set of standards for which some headers are tested.
      conformtest: correct set of standards for which more headers are tested.
      Enumerate tests with special rules in tests-special variable.
      conformtest: clean up POSIX expectations for semaphore.h, signal.h, tar.h.
      conformtest: split up running of tests from makefile.
      Generate overall summary of test results.
      Make tests consistently use *.out output files.
      Count miscellaneous files built on host for testing as tests.
      Include all of <time.h> from <sched.h> for older standards (bug 16670).
      Fix POSIX namespace for <bits/siginfo.h> (bug 16674).
      Add libm-test.inc macro for all-rounding-modes testing.
      Fix nextafter overflow in non-default rounding modes (bug 16677).
      Fix MIPS libc_feresetround*_ctx to preserve exceptions.
      Fix __ASSUME_PSELECT for MicroBlaze (bug 16642).
      Regenerate INSTALL.
      Do not terminate default test runs on test failure.
      Add libm-test support for per-rounding-mode manually specified results.
      Test rint and nearbyint with same inputs, in all rounding modes.
      Exit with error status on check-abi failure.
      Test scalbn and scalbln in all rounding modes, add more tests of negative arguments.
      Fix __ASSUME_PREADV and __ASSUME_PWRITEV for Alpha and MicroBlaze (bug 16649).
      Use ALL_RM_TEST for more libm tests.
      Make libm-test support ALL_RM_TEST with AUTO_TESTS_*.
      Test most libm functions in all rounding modes.
      Fix log (1) in round-downward mode (bug 16731).
      Fix -Wundef warnings for _ABI* on MIPS.
      Fix dbl-64 exp overflow/underflow in non-default rounding modes (bug 16284).
      Fix implicit __isinf declarations in exp.
      Relax gen-auto-libm-tests may-underflow rules, test log1p in all rounding modes.
      Add empty GLIBC_2.2.5 version to elf/Versions.
      Make x86_64 fegetenv preserve exception mask (bug 16198).
      Fix x86/x86_64 expl/exp10l spurious underflows (bug 16348).
      Fix clog10 (-0 +/- 0i) (bug 16362).
      Fix scalb spurious "invalid" exceptions (bug 16770).
      Fix futimesat for older MicroBlaze kernels (bug 16648).
      Correct robust mutex / PI futex kernel assumptions (bug 9894).
      Set errno for atan2 underflow (bug 16349).
      Set errno for scalb errors (bug 6803, bug 6804).
      Fix clog / clog10 sign of zero result in round-downward mode (bug 16789).
      Fix catan, catanh, __ieee754_logf in round-downward mode (bug 16799, bug 16800).
      conformtest: clean up POSIX expectations for stdlib.h, string.h.
      Increase minimum Linux kernel version to 2.6.32.
      Include SSE state in i386 fenv_t (bug 16064).
      Clean up kernel version conditionals for pre-2.6.32 kernels.
      Clean up ARM old-ABI symbol versioning relics.
      Reduce kernel-features.h duplication.
      Fix erf underflow handling near 0 (bug 16516).
      Fix acosh (1) in round-downward mode (bug 16927).
      Fix cacos (+Inf + finite*i) in round-downward mode (bug 16928).
      Fix log1pl (LDBL_MAX) in FE_UPWARD mode (bug 16564).
      Use existing makefile variables for dependencies on glibc libraries.
      Fix ARM build with GCC trunk.
      Consistently use $(elf-objpfx).
      Don't mention linuxthreads in Depend files.
      Fix log10 (1) in round-downward mode (bug 16977).
      Define TSVTX in tar.h for older POSIX (bug 16978).
      Include LOCPATH in default test environment.
      Don't require test wrappers to preserve environment variables, use more consistent environment.
      Remove redundant C locale settings.
      conformtest: clean up POSIX expectations for termios.h, time.h.
      Remove special makefile rules / .sh files for some localedata tests.
      Fix log2 (1) in round-downward mode (bug 17042).
      conformtest: clean up POSIX expectations for sys/mman.h, sys/stat.h, sys/types.h.
      Add CFI to x86 ceil / floor / trunc (bug 16681).
      Use $(rtld-prefix) more consistently.
      Fix __ieee754_logl (-LDBL_MAX) in FE_DOWNWARD mode (bug 17022).
      Remove __ASSUME_ATFCTS conditionals in sysdeps/unix/sysv/linux/.
      Remove __ASSUME_ADJ_OFFSET_SS_READ.
      Remove __ASSUME_AT_RANDOM.
      Remove __ASSUME_F_GETOWN_EX.
      Remove __ASSUME_SOCK_CLOEXEC / SOCK_CLOEXEC conditionals in Linux-specific code.
      Include <kernel-features.h> explicitly where required.
      Remove ARM __ASSUME_SIGFRAME_V2.
      Update headers for Linux 3.15.
      Fix pow overflow in non-default rounding modes (bug 16315).
      Test cpow in all rounding modes.
      Set errno for y1 overflow (bug 17050).
      Fix cosh spurious underflows from expm1 (bug 16354), inaccurate results near 0 (bug 17061).
      Move architecture cases out of sysdeps/unix/sysv/linux/configure.ac.
      Fix ldbl-128 erfl spurious underflows (bug 16287).
      Fix x86/x86_64 expm1l spurious underflow exceptions (bug 16539).
      Remove __ASSUME_COMPLETE_READV_WRITEV.
      Fix exp10 spurious underflows (bug 16560).
      Remove __ASSUME_UTIMENSAT.
      Update README and NEWS for ports directory removal.
      Remove __ASSUME_XFS_RESTRICTED_CHOWN.
      Update timezone code from tzcode 2014e.
      Move base_machine and machine settings from configure.ac to sysdeps preconfigure fragments.
      Remove BROKEN_PPC_ASM_CR0 configure test.
      Remove stray includes of kernel-features.h.
      Move USE_REGPARMS define to sysdeps/i386/configure.ac.
      Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/.
      Remove configure tests for assembler CFI support.
      Remove powerpc special cases in configure.ac.
      Update miscellaneous files from upstream sources.
      Update scripts/list-sources.sh for ports repository merge.
      Fix MIPS64 *_nocancel gp setup.
      Fix yn overflow handling in non-default rounding modes (bug 16561, bug 16562).
      Remove relro configure test.
      Remove shlib-versions ABI names support.
      Fix ldbl-128 powl sign of result in overflow / underflow cases (bug 17097).
      Rename soft-fp extended.h, op-common.h variables to avoid risk of shadowing.
      Rename soft-fp op-[1248].h variables to avoid risk of shadowing.
      Fix ldbl-128 expm1l spurious underflow (bug 16539).
      Regenerate ARM libm-test-ulps.
      Regenerate powerpc-nofpu libm-test-ulps.
      Regenerate MIPS libm-test-ulps.
      MicroBlaze: Update kernel-features.h for syscalls added in 3.15
      Move architecture shlib-versions files to Linux-specific directories.
      Refactor handling of /lib64 etc. cases, move out of sysdeps/gnu/configure.ac.
      Split x86_64 out of main Linux kernel-features.h.
      Split i386 out of main Linux kernel-features.h.
      Split sparc out of main Linux kernel-features.h.
      Split powerpc out of main Linux kernel-features.h.
      Split sh out of main Linux kernel-features.h.
      Split s390 out of main Linux kernel-features.h.
      Fix fallback fesetenv and feupdateenv on FE_NOMASK_ENV (bug 17088).
      Fix powerpc-nofpu __fe_enabled_env and __fe_nonieee_env (bug 17261).
      Fix powerpc32 __get_clockfreq for non-power4 (bug 17263).

Julian Brown (1):
      ARM: Fix R_ARM_IRELATIVE RELA relocations.

Khem Raj (1):
      Define __GI_fegetenv for e500 libm

Konstantin Serebryany (2):
      Remove nested functions: crypt/md5-crypt.c
      Remove redundant nested function b64_from_24bit

Kyle McMartin (1):
      [AARCH64] correct alignment of TLS_TCB_ALIGN (BZ #16796)

Ling Ma (2):
      Add x86_64 memset optimized for AVX2
      Improve 64bit memcpy performance for Haswell CPU with AVX instruction

Ludovic Courtès (1):
      nscd: Remove unused typedef and variable.

Maciej W. Rozycki (8):
      ARM: soft-fp NaN representation correction
      [BZ #17075] ARM: Fix immediate calculation of R_ARM_TLS_DESC
      stdlib/tst-qsort2.c: Fix off-by-one argc interpretation error
      [BZ #16046] dl_iterate_phdr static executable test
      sysdeps/unix/sysv/linux/bits/socket.h: Correct formatting
      test-skeleton: Kill any child process's offspring
      stdlib/tst-strtod-overflow: Bump timeout up yet
      [BZ #17078] ARM: R_ARM_TLS_DESC prelinker support

Marcus Shawcroft (7):
      Relocate AArch64 from ports to libc.
      [AArch64] Optional trapping exceptions support.
      [AArch64] Regenerate libm-test-ulps.
      Revert "ARM: Improve fenv implementation"
      [AArch64] Regenerate libm-test-ulps
      Revert "Add bug 16918 to NEWS."
      Revert "aarch64: Add hp-timing.h"

Mark Wielaard (1):
      i386 TLS_INIT_TP might produce bogus asm changing stack pointer [BZ #17319]

Marko Myllynen (1):
      Replace __int128 with __int128_t

Meador Inge (1):
      get_nprocs: Only return explictly set cache values (BZ #16996)

Mike Frysinger (23):
      linux_fsinfo.h: sync with current linux/magic.h
      tzselect: stop requiring ksh
      linux: bits/in.h: sync with latest kernel headers
      linux: bits/in.h: sync with latest kernel headers
      tst-longjmp_chk: add comments and convert to test-skeleton
      tests: unify fortification handler logic
      tst-longjmp_chk3: new test for checking sigaltstack edge cases
      tst-backtrace4: expand output even on failures
      manual: setjmp: fix typos/grammar
      sem_open: allow RAMFS_MAGIC for mount points
      shm_open: sync with logic in sem_open
      ia64: relocate out of ports/ subdir
      tst-longjmp_chk2: add comments/sanity check
      manual: time: fix typo in IST example
      sotruss: drop ksh support and add basic POSIX shell support
      delete ksh checks
      stop supporting bash-1.x
      tst-setcontext: fix style
      add ChangeLog for previous commit
      ia64: define nocancel entry points in PSEUDO
      add ChangeLog for previous commit
      tst-gettext2: make setup more robust
      detect broken linker handling of __ehdr_start

Ondřej Bílka (20):
      Remove THREAD_STATS.
      Deduplicate setenv.
      Fix previous commit.
      Use glibc_likely instead __builtin_expect.
      Remove unused variable from stdlib/setenv.c
      Deduplicate resolv/nss_dns/dns-host.c
      Simplify calloc implementation.
      Fix two spaces after sentence.
      Make strtok benchmark competive.
      Add changelog.
      Fix recvmmsg comment.
      Fix types of stream hook functions in manual.
      Fix typo in nptl/sockperf.c
      Fix typo in nscd/selinux.c
      fix changelog.
      Remove duplicate code in elf/dl-deps.c.
      revert commit fdfd175d46ac6a810ebdeb2a2936e6d7d13995ab
      Remove mi_arena nested function.
      Fix typo in manual.
      Fix memory overrun in getifaddrs_internal. Fixes bug 15698.

Paul Eggert (2):
      Sync up mktime with gnulib
      misc/sys/cdefs.h: Add _Noreturn macro for pre-C11 compilers

Paul Pluzhnikov (8):
      2014-03-12  Paul Pluzhnikov  <ppluzhnikov@google.com>
      Add missing elf/tst-pie2.c -- should have been in
      Fix BZ #16634.
      Address post-commit patch comments.
      2014-03-26  Paul Pluzhnikov  <ppluzhnikov@google.com>
      2014-03-27  Paul Pluzhnikov  <ppluzhnikov@google.com>
      2014-04-11  Paul Pluzhnikov  <ppluzhnikov@google.com>
      Fix typo on ChangeLog.

Peter TB Brett (1):
      Use statvfs64() for pathconf(_PC_NAME_MAX).

Rajalakshmi Srinivasaraghavan (3):
      print length in strrchr benchtest
      PowerPC: strrchr optimization for POWER7/PPC64
      PowerPC: Fix nearbyintl failure for few inputs

Rasmus Villemoes (1):
      manual: Update prototypes for alphasort and friends

Richard Earnshaw (1):
      [AArch64] Add optimized strchr.

Richard Henderson (55):
      Relocate alpha from ports to libc
      alpha: Regenerate sysdeps/alpha/libm-test-ulps
      alpha: Fix __pointer_chk_guard definition for the testsuite
      alpha: Enable unwind tables for backtrace.c
      alpha: Remove alpha-linux pthread_once.c
      Merge remote-tracking branch 'origin/roland/nptl-alpha'
      alpha: Create __syscall_nocancel entry points
      alpha: Define ELF_MACHINE_NO_RELA
      alpha: Remove bits/siginfo.h (BZ 16966)
      alpha: fix sa_flags type (BZ 16967)
      aarch64: Merge rtld_errno offset with memory reference
      aarch64: Merge __local_multiple_threads offset with memory reference
      alpha: Remove nptl/fork.c
      alpha: Merge standard and nptl clone.S
      alpha: Consolidate NPTL/non versions of vfork
      alpha: Move remaining files out of sysdeps/unix/sysv/linux/alpha/nptl/
      Only support ifunc in nptl/pt-vfork.c
      Only provide non-default symbols in libpthread for vfork
      alpha: Do non-default symbols in pt-vfork.S
      aarch64: Fix DO_CALL block comment
      aarch64: Remove DOARGS/UNDOARGS macros
      aarch64: Tidy syscall error check
      arm,aarch64: Remove SINGLE_THREAD_P_PIC
      aarch64: Tabify sysdep-cancel.h
      aarch64: Share code in syscall-cancel.h
      aarch64: Pass regno parameter to SINGLE_THREAD_P
      aarch64: Improve syscall-cancel stack frame
      aarch64: Use tpidr_el0 rather than __read_tp in librt
      aarch64: Use tpidr_el0 rather than __errno_location in librt
      aarch64: Rely on syscalls preserving registers
      aarch64: Fix error return from __ioctl
      aarch64: Remove PSEUDO_RET
      aarch64: Consolidate NPTL/non versions of clone
      aarch64: Consolidate NPTL/non versions of vfork
      aarch64: Remove nptl/vfork.S
      alpha: Update libm-test-ulps
      alpha: Fix isnan
      powerpc: Remove dummy hp-timing.h
      Removing HP_TIMING_ZERO as unused
      Removing HP_TIMING_ACCUM as unused
      Remove HP_TIMING_DIFF_INIT and dl_hp_timing_overhead
      Unify hp-timing implementations
      aarch64: Add hp-timing.h
      Always provide HP_SMALL_TIMING_AVAIL
      Rely on HP_TIMING_AVAIL implies HP_SMALL_TIMING_AVAIL
      Changelog for last 8 patches
      alpha: Remove round and roundf implementations
      alpha: Fix lround implementations
      alpha: Implement math_opt_barrier and math_force_eval
      alpha: Remove nearbyint and nearbyintf implementations
      aarch64: Update libm-test-ulps
      Force eval for fma implementations
      alpha: Remove linux lowlevellock.h
      alpha: Remove linux lowlevellock.h
      alpha: Fix exception raising from soft-fp

Roland McGrath (150):
      Avoid comma operator warnings.
      Remove unused %include lines from Versions files.
      Remove obsolete SHLIB_COMPAT conditionalization in Versions files.
      Add missing } in Versions file.
      Fix fallout from Joseph's untested Makeconfig change.
      Retire the separate ChangeLog files in nptl/ and nptl_db/ subdirs.
      ARM: Fix up setjmp/longjmp changes sfi_* macro use.
      ChangeLog format fix.
      Use __ehdr_start, when available, for rtld to get its own headers.
      Fix two stray cases using #ifdef vs #if for TLS_TCB_AT_TP.
      Compile with -Wundef.
      Get rid of Versions.def source file
      Remove "Compiled on ..." crapola from version text.
      Work around binutils bugs in 2.23 and older
      Move bits/mman-linux.h out of sysdeps/unix/sysv/linux/.
      Add comments about non-Linux use of bits/mman-linux.h.
      Kludge fix for Versions.def regression
      Factor mmap/munmap of PT_LOAD segments out of _dl_map_object_from_fd et al.
      Add deprecation header text to remaining ports/ChangeLog* files.
      Move ports/ChangeLog* files to ChangeLog.old-ports*, remove ports/ directory.
      Deconditionalize use of LLL_LOCK_INITIALIZER in bits/libc-lock.h.
      Fix -Wundef warnings for _IO_JUMPS_OFFSET.
      Fix -Wundef issues in generated errlist.c.
      Move rules for Linux-specific pldd program to Linux-specific Makefile.
      Move ARM internal unwind.h header to the right sysdeps directory.
      Fix -Wundef for _UTSNAME_DOMAIN_LENGTH.
      Some configure-related decrufting.
      Silence a missing-noreturn warning for _Unwind_Resume.
      Make armv7 strcmp assembly compatible with ARM mode and SFI.
      Clean up __exit_thread.
      Consolidate NPTL vs non clone.S for ARM.
      Consolidate NPTL configury for ARM/Linux.
      Verbatim NPTL file moves for ARM/Linux.
      Move NPTL public ABI headers for ARM to sysdeps/arm/nptl/.
      ARM: Consolidate NPTL/non versions of vfork
      x86: Consolidate NPTL/non versions of vfork
      Move NPTL public ABI headers for x86 to sysdeps/x86/nptl/.
      x86: Consolidate NPTL/non versions of clone
      Move x86_64 timer_*.c out of nptl/
      Move x86_64 compat-timer.h out of nptl/
      x86_64: Remove useless pthread_spin_{init,unlock} wrapper files.
      Update s390 timer_*.c files for x86_64 file moves.
      Consolidate not-cancel.h files.
      x86: Consolidate NPTL fork.
      Move remaining nptl/sysdeps/unix/sysv/linux/x86_64/ files.
      i386: Remove useless pthread_spin_{init,unlock} wrapper files.
      Update alpha and ia64 timer_*.c files for x86_64 file moves.
      Fix powerpc fork after i386 reorganization.
      Move remaining nptl/sysdeps/unix/sysv/linux/i386/ files.
      Fix mips fork after i386 reorganization.
      Move remaining files out of nptl/sysdeps/unix/sysv/linux/x86/.
      x86: Move abilist files out of nptl/ subdirectories.
      Split arch-fork.h from fork.h
      Add stub arch-fork.h header.
      ARM: Convert fork.c to arch-fork.h
      Alpha: Convert fork.c to arch-fork.h
      Fix __waitpid_nocancel link error.
      AArch64: Convert fork.c to arch-fork.h
      SH: Convert fork.c to arch-fork.h
      IA64: Convert fork.c to arch-fork.h
      tile: Convert fork.c to arch-fork.h
      SH: Consolidate NPTL/non versions of clone
      m68k: Convert fork.c to arch-fork.h
      SH: Consolidate NPTL/non versions of vfork
      Move NPTL public ABI headers for SH to sysdeps/sh/nptl/.
      Start cleaning up TLS initial value for pthread_create.
      ARM: Define TLS_DEFINE_INIT_TP
      MIPS: Define TLS_DEFINE_INIT_TP
      HPPA: Define TLS_DEFINE_INIT_TP
      m68k: Define TLS_DEFINE_INIT_TP
      SH: Define TLS_DEFINE_INIT_TP
      AArch64: Define TLS_DEFINE_INIT_TP
      PowerPC: Define TLS_DEFINE_INIT_TP
      Alpha: Define TLS_DEFINE_INIT_TP
      S390: Define TLS_DEFINE_INIT_TP
      Tile: Define TLS_DEFINE_INIT_TP
      Move x86_64 code out of nptl/ subdirectory.
      Move SH code out of nptl/ subdirectory.
      Move i386 code out of nptl/ subdirectory.
      Consolidate NPTL sigprocmask.
      Get rid of nptl/sysdeps/pthread/ subdirectory
      Use list.h in posix-timer code.
      SPARC: Convert fork.c to arch-fork.h
      SPARC: Define TLS_DEFINE_INIT_TP
      Move SPARC code out of nptl/sysdeps/sparc/.
      Move SPARC public headers out of nptl/
      S390: Convert fork.c to arch-fork.h
      Move S390 code out of nptl/sysdeps/s390/.
      S390: Move NPTL public headers to sysdeps/s390/nptl/.
      Move remaining SPARC code out of nptl/.
      Missing new file from last commit.
      Move linux bits/ files out of nptl/.
      Clean up stack-coloring macros.
      Clean up HAVE_CONFIG_H and STDC_HEADERS.
      Remove unused file rtld-lowlevel.h.
      Move generic smp.h to nptl/
      SH: Consolidate nptl/ subdirectories under linux/.....
      m68k: Consolidate nptl/ subdirectories under linux/...
      MIPS: Move NPTL public headers to sysdeps/mips/nptl/.
      powerpc: Consolidate nptl/ subdirectories under linux/....
      Remove an unused variable in fstatvfs.
      Add missing #include in get-rounding-mode.h
      x86: Consolidate unnecessary nptl/ subdirectories.
      SPARC: Consolidate nptl/ subdirectories under linux/...
      SPARC: Consolidate unnecessary nptl/ subdirectories.
      MIPS: Consolidate NPTL/non versions of clone
      AArch64: Consolidate nptl/ subdirectories under linux/...
      S390: Consolidate NPTL/non versions of clone
      S390: Consolidate NPTL/non versions of vfork
      Move remaining S390 code out of nptl/.
      S390: Consolidate nptl/ subdirectories under linux/...
      Add missing #include in spawn_faction_addopen.c
      Add missing #include <fpu_control.h> to ARM fesetenv/feupdateenv.
      ARM: Move more aeabi routine magic out of Linux-specific directories
      MIPS: Consolidate NPTL/non versions of vfork
      MIPS: Consolidate nptl/ subdirectories under linux/...
      ARM: Split Linuxism out of sysdeps/arm/nptl/tls.h
      MicroBlaze: Convert fork.c to arch-fork.h
      MicroBlaze: Define TLS_DEFINE_INIT_TP
      MicroBlaze: Move NPTL public headers to sysdeps/microblaze/nptl/.
      MicroBlaze: Consolidate NPTL/non versions of vfork
      MicroBlaze: Consolidate nptl/ subdirectories under linux/...
      Add missing #include for MIN/MAX users.
      Add missing #include for MIN use in dl-sysdep.c.
      S390: Quash unused variable warning due to no-op THREAD_SET_POINTER_GUARD.
      Robustify Linux kernel headers configure checks
      Add missing #include in sysdeps/alpha/fpu/s_nearbyint.c
      Fix unwind.h configure check for bare environment.
      Fix ia64 build error in lll_futex_timed_wait_bitset
      Get rid of nptl/sysdeps/ entirely!
      NPTL is no longer an add-on!
      Remove old stub lowlevellock.h file.  It is not even useful as documentation.
      Get rid of lll_robust_trylock.
      Get rid of lll_robust_dead.
      ChangeLog fixup for last commit.
      Remove declarations of two nonexistent variables from nptl/pthreadP.h.
      Separate Linuxisms from lowlevellock.h, make a generic one
      Add generic/stub implementations of pthread_{kill,sigmask,sigqueue}.
      ARM: Clean up EABI-related configury
      Split nptl-signals.h out from pthreadP.h
      Use __builtin_trap for ABORT_INSTRUCTION.
      Add __safe_fatal and use it in __pthread_unwind forwarder fallback.
      ARM: Move PTR_MANGLE et al out of Linux-specific file.
      Remove sysdeps/unix/sysv/linux/arm/lowlevellock.h
      IA64: Consolidate NPTL/non versions of clone
      IA64: Consolidate NPTL/non versions of vfork
      IA64: Define TLS_DEFINE_INIT_TP
      IA64: Move NPTL public headers to sysdeps/ia64/nptl/.
      IA64: Consolidate nptl/ subdirectories under linux/...
      NEWS: Mention x86-64 ld.so use of Intel MPX instructions.

Sami Kerola (1):
      tzselect: use zonedir instead of current working directory

Samuel Thibault (5):
      hurd: Do not allow unmapping address 0
      hurd: Move dtv, dtv_t, tcbhead_t declaration to per-arch file.
      hurd: Add i386 fields to TLS structure
      Simplify atomicity of socket creation in bind.
      Fix hang on fork

Sean Anderson (1):
      malloc: fix comment typo

Serge Hallyn (1):
      misc/sys/xattr.h: guard against linux uapi header inclusion

Siddhesh Poyarekar (85):
      Minor formatting fix
      Fix sign of input to bsloww1 (BZ #16623)
      Fix ChangeLog formatting
      Fix missing ChangeLog
      nscd: Improved support for tracking startup failure in nscd service (BZ #16639)
      Separate ftell from fseek logic and avoid modifying FILE data (#16532)
      Use cached offset in ftell when reliable
      Fix up formatting
      Fix up formatting in tst-ftell-active-handler.c
      Mark nscd service as forking in systemd service file (BZ #16639)
      Provide correct buffer length to netgroup queries in nscd (BZ #16695)
      Get rid of __LT_SPINLOCK_INIT
      Fix up return codes for tests in tst-ftell-active-handler
      Fix offset caching for streams and use it for ftell (BZ #16680)
      Change offset in fdopen only if setting O_APPEND
      Fix -Wundef warnins for __FP_FAST_FMA*
      Implement benchmarking script in python
      ChangeLog formatting fix
      benchtests: Move bench.py to benchtests/scripts/
      Fix nscd lookup for innetgr when netgroup has wildcards (BZ #16758)
      Avoid overlapping addresses to stpcpy calls in nscd (BZ #16760)
      Return NULL for wildcard values in getnetgrent from nscd (BZ #16759)
      [benchtests] Use inputs file for modf
      Make bench.out in json format
      Detailed benchmark outputs for functions
      benchtests: Link against objects in build directory
      Include atomic.h in sem_wait.c and sem_trywait.c
      Use test-skeleton.c in tst-sem3 and tst-sem4
      Do not fail if one of the two responses to AF_UNSPEC fails (BZ #14308)
      Consolidate code to initialize nscd dataset header
      Initialize all of datahead structure in nscd (BZ #16791)
      Return EAI_AGAIN for AF_UNSPEC when herrno is TRY_AGAIN (BZ #16849)
      Fix formatting
      Fix date in ChangeLog
      Use NSS_STATUS_TRYAGAIN to indicate insufficient buffer (BZ #16878)
      benchtests: Add new directive for benchmark initialization hook
      Fix offset computation for append+ mode on switching from read (BZ #16724)
      Add mmap usage in malloc_info output
      Fix formatting in malloc_info
      Fix format specifier for n_mmaps
      Inline nested function check_list
      Validate bench.out against a JSON schema
      Remove unnecessary $(.)
      Fix ChangeLog and NEWS goof-up
      Print offending diff when check-abi fails
      Fix build warning in pthread_rwlock_*
      Fix namespace violation in pthreadtypes.h (BZ #17084)
      Add compat symbols for scalb* in i386
      Fix Wundef warning for SEPARATE_KEY
      Fix Wundef warning for ELF_MACHINE_NO_RELA
      Fix Wundef warning for WIDE_CHAR_VERSION
      Remove inline keyword from leapyear function
      Remove unnecessary include in memmove_chk
      Correctly attribute the mktime.c change to Paul Eggert
      Fix Wundef warning for MEMCPY_OK_FOR_FWD_MEMMOVE
      Remove MULTI_PTRS_ARE_ALIASES in dns-hosts.c
      Add comment to gethnamaddr.c to warn that the file is unmaintained
      Fix typo in macro name
      Fix typo and formatting in loadmsgcat.c
      Fix -Wundef warning on PAGE_COPY_THRESHOLD
      Don't use __glibc_unlikely in shared code
      Fix Wundef warning for __STDC_VERSION__
      Sync up loadmsgcat.c with gettext
      Restore subdir conditional for tst-timer dependency.
      Add comment for MEMCPY_OK_FOR_FWD_MEMMOVE
      Fix Wundef warning with SHOJI_IS_RIGHT
      Fix Wundef warning for ELF_MACHINE_NO_REL on i386
      Check value at resplen2 if it is not NULL
      Fix Wundef warning for __cplusplus
      Fix -Wmaybe-uninitialized warning in xdr.c
      Add comment about SIZE initialization in xdr.c
      Fix crash when system has no ipv6 address [BZ #17125]
      Fix -Wundef warning for HAVE_OBSTACK
      Fix -Wundef warning for HAVE_SYS_PARAM_H
      Fix Wundef warning for HAVE_STRFTIME
      Fix -Wundef warning for HAVE_LOCALTIME_R
      Sync up error.c with gnulib
      Fix -Wundef warnings in fnmatch.c
      Check if DEBUG is defined in regex_internal.c
      Fix -Wundef warnings in regex_internal.h
      Disable x87 inline functions for x86_64 and SSE [BZ #17262]
      Fix comment error that Jakub pointed out but I forgot to fix
      Remove unnecessary uses of NOT_IN_libc
      Remove redundant CPPFLAGS for some programs
      Remove NOT_IN_libc definition for pthread_atfork

Sihai Yao (1):
      Detect if AVX2 is usable

Stefan Liebler (24):
      S/390: Regenerate ULPs.
      S390: Fix -Wundef warning for __PTHREAD_MUTEX_HAVE_ELISION.
      Use += before-compile instead of a :=.
      S390: Correct type of sa_flags in struct sigaction for POSIX conformance
      S390: Define SIZE_MAX as unsigned long (BZ #16712).
      S390: Fix namespace violation in struct stat (BZ #16714).
      NEWS: Add 16712, 16713, 16714 to fixed bug list.
      S/390: Unify 31 and 64 bit configure.ac
      [BZ #16824] Fix failing y1 due to too large ulps in downward/upward rounding mode.
      [BZ #14770] S/390: Require Binutils >= 2.24 for target S/390.
      S/390: Regenerate ULPs
      [BZ #16823] Fix log1pl returning wrong infinity sign
      Mention BZ16823 in NEWS
      Fix typo in tst-mutex5 ifndef -> ifdef
      Disable lock elision for PTHREAD_MUTEX_NORMAL.
      S/390: Regenerate ULPs.
      posix_spawn_faction_addopen: Add missing string.h include directive
      Fix pthread.h in installed-headers list.
      Generate en_GB.UTF-8 during testing
      [BZ #6803] Set errno for scalbln, scalbn
      S/390: Regenerate ULPs
      S/390: Revert the jmp_buf/ucontext_t ABI change.
      S390: Fix remaining ONE_DIRECTION warning messages
      NEWS: Explain the s390 jmp_buf / ucontext_t ABI change reversal.

Steve Ellcey (7):
      Add macros and inline functions to mips math_private.h file.
      2014-04-29  Steve Ellcey  <sellcey@mips.com>
      2014-05-01  Steve Ellcey  <sellcey@mips.com>
      2014-05-01  Steve Ellcey  <sellcey@mips.com>
      2014-05-01  Steve Ellcey  <sellcey@mips.com>
      2014-05-07  Steve Ellcey  <sellcey@mips.com>
      Add 16922 to list of bugs fixed.

Tomas Dohnalek (1):
      Generate .test-result files for ordinary tests.

Torvald Riegel (2):
      benchtests: Add pthread_once common-case test.
      Fixed and unified pthread_once.

Venkataramanan Kumar (1):
      aarch64: Add setjmp and longjmp SystemTap probes

Vidya Ranganathan (4):
      PowerPC: strspn optimization for PPC64/POWER7
      PowerPC: strncpy/stpncpy optimization for PPC64/POWER7
      PowerPC: Optimized strcmp for PPC64/POWER7
      PowerPC: strcat optimization for PPC64/POWER7

Wilco (18):
      Add fenv test support for targets which don't have FP traps.
      ARM: Improve fenv implementation
      ARM: Improve fenv implementation
      [AArch64] Rewrite feupdateenv (BZ 17009).
      [AArch64] Remove ISB after FPCR write.
      [AArch64] Cleanup declarations in math_private.h.
      [AArch64] Switch from FE_TOWARDZERO to _FPU_FPCR_RM_MASK
      Add FE_NOMASK_ENV return value test.
      Use libc calls defined by fenv_private.h to implement several fenv functions
      Speed up the ARM fenv implementation by avoiding unnecessary FPSCR
      Rewrite feupdateenv
      Add bug 16918 to NEWS.
      Cleanup fenv implementation
      Remove an unused include.
      Add _FPU_MASK_RM and use it instead of FE_TOWARDZERO.
      Optimize fesetenv
      Add bug 16918 to NEWS.
      Fix performance issue in misaligned strcpy.

Wilco Dijkstra (3):
      [ARM] Add support for fenv_private on ARM.
      Add generic HAVE_RM_CTX implementation
      This patch adds new function libc_feholdsetround_noex_aarch64_ctx, enabling

Will Newton (49):
      malloc/mtrace.c: Cosmetic cleanup.
      include/stap-probe.h: Add comment about SystemTap argument format
      manual/probes.texi: Add documentation of setjmp/longjmp probes
      manual/probes.texi: Use "triggered" instead of "hit"
      ARM: Add SystemTap probes to longjmp and setjmp.
      manual/setjmp.texi: Improve clarity of Sys V context doc
      Fix __PTHREAD_MUTEX_HAVE_ELISION -Wundef warning
      Fix HP_SMALL_TIMING_AVAIL -Wundef warnings
      Fix _IO_JUMPS_OFFSET -Wundef warnings
      Fix __STRICT_ANSI__ -Wundef warnings
      Fix HAVE_RM_CTX -Wundef warnings
      Revert "Fix HAVE_RM_CTX -Wundef warnings"
      Revert "Fix _IO_JUMPS_OFFSET -Wundef warnings"
      Revert "Fix HP_SMALL_TIMING_AVAIL -Wundef warnings"
      Revert "Fix __PTHREAD_MUTEX_HAVE_ELISION -Wundef warning"
      aarch64: Remove inaccurate comment from sysdep.h
      benchtests/bench-strtod.c: Increase timeout value
      benchtests: Add benchtests for ffs and ffsll
      benchtests: Build ffs and ffsl benchtests with -fno-builtin
      elf/dl-lookup.c: Remove obsolete comment about nested function
      string: Cosmetic cleanup of string functions
      malloc: Fix MALLOC_DEBUG -Wundef warning
      benchtests: Improve readability of JSON output
      aarch64: Re-implement setcontext without rt_sigreturn syscall
      stdlib/tst-setcontext.c: Check for clobbering of signal stack
      manual/setjmp.texi: Clarify setcontext and signal handlers text
      ARM: Remove lowlevellock.c
      NEWS: Add 15119 to fixed bug list
      ARM: Add optimized ARMv7 strcmp implementation
      ARM: Allow auto-detection of linker relro feature
      malloc: Add mallopt test.
      stdlib/gmp-impl.h: Silence -Wundef warning for USE_STACK_ALLOC
      AArch64: Fix handling of nocancel syscall failures
      ARM: Fix handling of concurrent TLS descriptor resolution
      malloc/malloc.c: Avoid calling sbrk unnecessarily with zero
      test-skeleton.c: Use stdout for error messages
      elf/dl-lookup.c: Move STB_GNU_UNIQUE handling to a function
      elf/dl-lookup.c: Remove unnecessary static variable
      elf/dl-lookup.c: Use __glibc_likely and __glibc_unlikely
      sysdeps/posix/tempname.c: Merge from gnulib
      ARM: Add support for AT_HWCAP2 in _dl_procinfo
      malloc/obstack: Merge from gnulib
      ARM: Define ELF_MACHINE_NO_REL
      string/memchr.c: Merge from gnulib
      Fix -Wundef warnings for SHARED
      iconv/loop.c: Fix -Wundef warning with !_STRING_ARCH_unaligned
      ARM: Fix compiler warnings from atomic.h
      AArch64: Remove lowlevellock.h
      Add BZ #16892 to NEWS

Yang Yingliang (1):
      Fix lll_unlock twice in pthread_cond_broadcast

Yufeng Zhang (1):
      [AArch64] Use GCC builtins to count leading/tailing zeros.

Yury Gribov (1):
      Update ARM ulps for VFPv4 (bug 16600).

Yvan Roux (1):
      AArch64: Remove asm/ptrace.h inclusion in sys/user.h and sys/procfs.h

-----------------------------------------------------------------------
Comment 9 Sourceware Commits 2015-09-16 21:12:33 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  da2f4f2dd5c07e1949f81a5ee23f880e891e3a82 (commit)
      from  bb95a72318e747ce8854e161cc590e67ac17f4f9 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=da2f4f2dd5c07e1949f81a5ee23f880e891e3a82

commit da2f4f2dd5c07e1949f81a5ee23f880e891e3a82
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Wed Sep 16 21:11:00 2015 +0000

    Make scalbn set errno (bug 6803).
    
    As noted in bug 6803, scalbn fails to set errno on overflow and
    underflow.  This patch fixes this by making scalbn an alias of ldexp,
    which has exactly the same semantics (for floating-point types with
    radix 2) and already has wrappers that deal with setting errno,
    instead of an alias of the internal __scalbn (which ldexp calls).
    
    Notes:
    
    * Where compat symbols were defined for scalbn functions, I didn't
      change what they point to (to keep the patch minimal), so such
      compat symbols continue to go directly to the non-errno-setting
      functions.
    
    * Mike, I didn't do anything with the IA64 versions of these
      functions, where I think both the ldexp and scalbn functions already
      deal with setting errno.  As a cleanup (not needed to fix this bug)
      however you might want to make those functions into aliases for
      IA64; there is no need for them to be separate function
      implementations at all.
    
    * This concludes the fix for bug 6803 since the scalb and scalbln
      cases of that bug were fixed some time ago.
    
    Tested for x86_64, x86, mips64 and powerpc.
    
    	[BZ #6803]
    	* math/s_ldexp.c (scalbn): Define as weak alias of __ldexp.
    	[NO_LONG_DOUBLE] (scalbnl): Define as weak alias of __ldexp.
    	* math/s_ldexpf.c (scalbnf): Define as weak alias of __ldexpf.
    	* math/s_ldexpl.c (scalbnl): Define as weak alias of __ldexpl.
    	* sysdeps/i386/fpu/s_scalbn.S (scalbn): Remove alias.
    	* sysdeps/i386/fpu/s_scalbnf.S (scalbnf): Likewise.
    	* sysdeps/i386/fpu/s_scalbnl.S (scalbnl): Likewise.
    	* sysdeps/ieee754/dbl-64/s_scalbn.c (scalbn): Likewise.
    	[NO_LONG_DOUBLE] (scalbnl): Likewise.
    	* sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c (scalbn):
    	Likewise.
    	[NO_LONG_DOUBLE] (scalbnl): Likewise.
    	* sysdeps/ieee754/flt-32/s_scalbnf.c (scalbnf): Likewise.
    	* sysdeps/ieee754/ldbl-128/s_scalbnl.c (scalbnl): Likewise.
    	* sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c (scalbnl): Remove
    	long_double_symbol calls.
    	* sysdeps/ieee754/ldbl-64-128/s_scalbnl.c (scalbnl): Likewise.
    	* sysdeps/ieee754/ldbl-opt/s_ldexpl.c (__ldexpl_2): Define as
    	strong alias of __ldexpl.
    	(scalbnl): Define using long_double_symbol.
    	* sysdeps/m68k/m680x0/fpu/s_scalbn.c (__CONCATX(scalbn,suffix)):
    	Remove alias.
    	* sysdeps/sparc/sparc64/soft-fp/s_scalbnl.c (scalbnl): Likewise.
    	* sysdeps/x86_64/fpu/s_scalbnl.S (scalbnl): Likewise.
    	* math/libm-test.inc (scalbn_test_data): Add errno expectations.
    	(scalbln_test_data): Add more errno expectations.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                     |   30 +++++
 NEWS                                          |   14 ++--
 math/libm-test.inc                            |  144 ++++++++++++------------
 math/s_ldexp.c                                |    2 +
 math/s_ldexpf.c                               |    1 +
 math/s_ldexpl.c                               |    1 +
 sysdeps/i386/fpu/s_scalbn.S                   |    1 -
 sysdeps/i386/fpu/s_scalbnf.S                  |    1 -
 sysdeps/i386/fpu/s_scalbnl.S                  |    1 -
 sysdeps/ieee754/dbl-64/s_scalbn.c             |    2 -
 sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c |    2 -
 sysdeps/ieee754/flt-32/s_scalbnf.c            |    1 -
 sysdeps/ieee754/ldbl-128/s_scalbnl.c          |    1 -
 sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c       |    5 -
 sysdeps/ieee754/ldbl-64-128/s_scalbnl.c       |    5 -
 sysdeps/ieee754/ldbl-opt/s_ldexpl.c           |    3 +
 sysdeps/m68k/m680x0/fpu/s_scalbn.c            |    1 -
 sysdeps/sparc/sparc64/soft-fp/s_scalbnl.c     |    2 -
 sysdeps/x86_64/fpu/s_scalbnl.S                |    1 -
 19 files changed, 116 insertions(+), 102 deletions(-)
Comment 10 Joseph Myers 2015-09-16 21:13:12 UTC
Fixed for 2.23.
Comment 11 Sourceware Commits 2015-11-05 17:02:45 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  8fed86556b7e162d2926f0ba6a573ed193ff882f (commit)
      from  3bfee8beb8caa939020d942dfa405a3d98975749 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=8fed86556b7e162d2926f0ba6a573ed193ff882f

commit 8fed86556b7e162d2926f0ba6a573ed193ff882f
Author: Joseph Myers <joseph@codesourcery.com>
Date:   Thu Nov 5 17:00:31 2015 +0000

    Don't redirect ldexp to scalbn in bits/math-finite.h (bug 19209).
    
    bits/math-finite.h maps ldexp functions to corresponding scalbn
    functions.  This is (a) a namespace bug for C90, which has ldexp but
    not scalbn, and (b) in any case useless, since the ldexp and scalbn
    functions have identical semantics (for floating-point types with
    radix 2), and since the fix for bug 6803 are actually aliases
    (presumably the mapping was based around the old bug of scalbn not
    setting errno).  This patch removes the bogus redirections.
    
    Tested for x86_64 and x86.
    
    	[BZ #19209]
    	* math/bits/math-finite.h (ldexp): Remove declaration.
    	(ldexpf): Likewise.
    	(ldexpl): Likewise.

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog               |    5 +++++
 NEWS                    |    2 +-
 math/bits/math-finite.h |    9 ---------
 3 files changed, 6 insertions(+), 10 deletions(-)
Comment 12 Sourceware Commits 2016-02-18 18:11:40 UTC
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The annotated tag, glibc-2.23 has been created
        at  10ed3a0ffbb43ce0b0739da4addc747733be5e63 (tag)
   tagging  ab30899d880f9741a409cbc0d7a28399bdac21bf (commit)
  replaces  glibc-2.22
 tagged by  Adhemerval Zanella
        on  Thu Feb 18 16:04:58 2016 -0200

- Log -----------------------------------------------------------------
The GNU C Library
=================

The GNU C Library version 2.23 is now available.

The GNU C Library is used as *the* C library in the GNU system and
in GNU/Linux systems, as well as many other systems that use Linux
as the kernel.

The GNU C Library is primarily designed to be a portable
and high performance C library.  It follows all relevant
standards including ISO C11 and POSIX.1-2008.  It is also
internationalized and has one of the most complete
internationalization interfaces known.

The GNU C Library webpage is at http://www.gnu.org/software/libc/

Packages for the 2.23 release may be downloaded from:
        http://ftpmirror.gnu.org/libc/
        http://ftp.gnu.org/gnu/libc/

The mirror list is at http://www.gnu.org/order/ftp.html

NEWS for version 2.23
=====================

* Unicode 8.0.0 Support: Character encoding, character type info, and
  transliteration tables are all updated to Unicode 8.0.0, using new
  and/or improved generator scripts contributed by Mike FABIAN (Red Hat).
  These updates cause user visible changes, such as the fixes for bugs
  89, 16061, and 18568.

* sched_setaffinity, pthread_setaffinity_np no longer attempt to guess the
  kernel-internal CPU set size.  This means that requests that change the
  CPU affinity which failed before (for example, an all-ones CPU mask) will
  now succeed.  Applications that need to determine the effective CPU
  affinities need to call sched_getaffinity or pthread_getaffinity_np after
  setting it because the kernel can adjust it (and the previous size check
  would not detect this in the majority of cases).

* The fts.h header can now be used with -D_FILE_OFFSET_BITS=64.  With LFS
  the following new symbols are used: fts64_children, fts64_close,
  fts64_open, fts64_read and fts64_set.

* getaddrinfo now detects certain invalid responses on an internal netlink
  socket.  If such responses are received, an affected process will
  terminate with an error message of "Unexpected error <number> on netlink
  descriptor <number>" or "Unexpected netlink response of size <number> on
  descriptor <number>".  The most likely cause for these errors is a
  multi-threaded application which erroneously closes and reuses the netlink
  file descriptor while it is used by getaddrinfo.

* A defect in the malloc implementation, present since glibc 2.15 (2012) or
  glibc 2.10 via --enable-experimental-malloc (2009), could result in the
  unnecessary serialization of memory allocation requests across threads.
  The defect is now corrected.  Users should see a substantial increase in
  the concurent throughput of allocation requests for applications which
  trigger this bug.  Affected applications typically create create and
  destroy threads frequently.  (Bug 19048 was reported and analyzed by
  Ericsson.)

* There is now a --disable-timezone-tools configure option for disabling the
  building and installing of the timezone related utilities (zic, zdump, and
  tzselect).  This is useful for people who build the timezone data and code
  independent of the GNU C Library.

* The obsolete header <regexp.h> has been removed.  Programs that require
  this header must be updated to use <regex.h> instead.

* The obsolete functions bdflush, create_module, get_kernel_syms,
  query_module and uselib are no longer available to newly linked binaries;
  the header <sys/kdaemon.h> has been removed.  These functions and header
  were specific to systems using the Linux kernel and could not usefully be
  used with the GNU C Library on systems with version 2.6 or later of the
  Linux kernel.

* Optimized string, wcsmbs and memory functions for IBM z13.
  Implemented by Stefan Liebler.

* Newly linked programs that define a variable called signgam will no longer
  have it set by the lgamma, lgammaf and lgammal functions.  Programs that
  require signgam to be set by those functions must ensure that they use the
  variable provided by the GNU C Library and declared in <math.h>, without
  defining their own copy.

* The minimum GCC version that can be used to build this version of the GNU
  C Library is GCC 4.7.  Older GCC versions, and non-GNU compilers, can
  still be used to compile programs using the GNU C Library.

Security related changes:

* An out-of-bounds value in a broken-out struct tm argument to strftime no
  longer causes a crash.  Reported by Adam Nielsen.  (CVE-2015-8776)

* The LD_POINTER_GUARD environment variable can no longer be used to disable
  the pointer guard feature.  It is always enabled.  Previously,
  LD_POINTER_GUARD could be used to disable security hardening in binaries
  running in privileged AT_SECURE mode.  Reported by Hector Marco-Gisbert.
  (CVE-2015-8777)

* An integer overflow in hcreate and hcreate_r could lead to an
  out-of-bounds memory access.  Reported by Szabolcs Nagy.  (CVE-2015-8778)

* The catopen function no longer has unbounded stack usage.  Reported by
  Max.  (CVE-2015-8779)

* The nan, nanf and nanl functions no longer have unbounded stack usage
  depending on the length of the string passed as an argument to the
  functions.  Reported by Joseph Myers.  (CVE-2014-9761)

* A stack-based buffer overflow was found in libresolv when invoked from
  libnss_dns, allowing specially crafted DNS responses to seize control
  of execution flow in the DNS client.  The buffer overflow occurs in
  the functions send_dg (send datagram) and send_vc (send TCP) for the
  NSS module libnss_dns.so.2 when calling getaddrinfo with AF_UNSPEC
  family.  The use of AF_UNSPEC triggers the low-level resolver code to
  send out two parallel queries for A and AAAA.  A mismanagement of the
  buffers used for those queries could result in the response of a query
  writing beyond the alloca allocated buffer created by
  _nss_dns_gethostbyname4_r.  Buffer management is simplified to remove
  the overflow.  Thanks to the Google Security Team and Red Hat for
  reporting the security impact of this issue, and Robert Holiday of
  Ciena for reporting the related bug 18665. (CVE-2015-7547)

The following bugs are resolved with this release:

  [89] localedata: Locales nb_NO and nn_NO should transliterate æøå
  [887] math: Math library function "logb" and "nextafter" inconsistent
  [2542] math: Incorrect return from float gamma (-0X1.FA471547C2FE5P+1)
  [2543] math: Incorrect return from float gamma (-0X1.9260DCP+1)
  [2558] math: Incorrect return from double gamma (-0X1.FA471547C2FE5P+1)
  [2898] libc: [improve]  warning: the use  of `mktemp' is dangerous, better
    use `mkstemp'
  [4404] localedata: German translation of "Alarm clock" is misleading
  [6799] math: nextafter() and nexttoward() doen't set errno on
    overflow/underflow errors
  [6803] math: scalb(), scalbln(), scalbn() do not set errno on
    overflow/underflow
  [10432] nis: _nss_nis_setnetgrent assertion failure
  [11460] libc: fts has no LFS support
  [12926] network: getaddrinfo()/make_request() may spin forever
  [13065] nptl: Race condition in pthread barriers
  [13690] nptl: pthread_mutex_unlock potentially cause invalid access
  [14341] dynamic-link: Dynamic linker crash when DT_JMPREL and DT_REL{,A}
    are not contiguous
  [14551] math: [ldbl-128ibm] strtold overflow handling for IBM long double
  [14912] libc: Rename non-installed bits/*.h headers
  [15002] libc: Avoid undefined behavior in posix_fallocate overflow check
  [15367] math: Let gcc use __builtin_isinf
  [15384] math: One constant fewer in ieee754/dbl-64/wordsize-64/s_finite.c
  [15421] math: lgamma wrongly sets signgam for ISO C
  [15470] math: [arm] On ARM llrintl() and llroundl() do not raise
    FE_INVALID with argument out of range
  [15491] math: [i386/x86_64] x86 nearbyint implementations wrongly clear
    all exceptions
  [15786] dynamic-link: ifunc resolver functions can smash function
    arguments
  [15918] math: Unnecessary check for equality in hypotf()
  [16061] localedata: Review / update transliteration data
  [16068] math: [i386/x86_64] x86 and x86_64 fesetenv exclude state they
    should include
  [16141] time: strptime %z offset restriction
  [16171] math: drem should be alias of remainder
  [16296] math: fegetround is pure?
  [16347] math: [ldbl-128ibm] ldbl-128/e_lgammal_r.c may not be suitable.
  [16364] libc: sleep may leave SIGCHLD blocked on sync cancellation on
    GNU/Linux
  [16399] math: [mips] lrint / llrint / lround / llround missing exceptions
  [16415] math: Clean up ldbl-128 / ldbl-128ibm expm1l for large positive
    arguments
  [16422] math: [powerpc] math-float, math-double failing llrint tests with
    "Exception "Inexact" set" on ppc32
  [16495] localedata: nl_NL: date_fmt: shuffle year/month around
  [16517] math: Missing underflow exception from tanf/tan/tanl
  [16519] math: Missing underflow exception from sinhf
  [16520] math: Missing underflow exception from tanhf
  [16521] math: Missing underflow exception from exp2
  [16620] math: [ldbl-128ibm] exp10l spurious overflows / bad directed
    rounding results
  [16734] stdio: fopen calls mmap to allocate its buffer
  [16961] math: nan function incorrect handling of bad sequences
  [16962] math: nan function unbounded stack allocation (CVE-2014-9761)
  [16973] localedata: Fix lang_lib/lang_term as per ISO 639-2
  [16985] locale: localedef: confusing error message when opening output
    fails
  [17118] math: ctanh(INFINITY + 2 * I) returns incorrect value
  [17197] locale: Redundant shift character in iconv conversion output at
    block boundary
  [17243] libc: trunk/posix/execl.c:53: va_args problem ?
  [17244] libc: trunk/sysdeps/unix/sysv/linux/semctl.c:116: va_args muxup ?
  [17250] dynamic-link: static linking breaks nss loading
    (getaddrinfo/getpwnam/etc...)
  [17404] libc: atomic_exchange_rel lacking a barrier on MIPS16, GCC before
    4.7?
  [17441] math: isnan() should use __builtin_isnan() in GCC
  [17514] nptl: Assert failure unlocking ERRORCHECK mutex after timedlock
    (related to lock elision)
  [17787] manual: Exponent on page 324 of the PDF ends prematurely
  [17886] time: strptime should be able to parse "Z" as a timezone with %z
  [17887] time: strptime should be able to parse "+01:00" style timezones
  [17905] libc: catopen() Multiple unbounded stack allocations
    (CVE-2015-8779)
  [18084] libc: backtrace (..., 0) dumps core on x86
  [18086] libc: nice() sets errno to 0 on success
  [18240] libc: hcreate, hcreate_r should fail with ENOMEM if element count
    is too large (CVE-2015-8778)
  [18251] dynamic-link: SONAME missing when audit modules provides path
  [18265] libc: add attributes for wchar string and memory functions
  [18370] math: csqrt missing underflows
  [18421] libc: [hppa] read-only segment has dynamic relocations
  [18472] libc: Obsolete syscall wrappers should be compat symbols
  [18480] libc: hppa glibc miscompilation in sched_setaffinity()
  [18491] localedata: Update tr_TR LC_CTYPE as part of Unicode updates
  [18525] localedata: Remove locale timezone information
  [18560] libc: [powerpc] spurious bits/ipc.h definitions
  [18568] localedata: Update locale data to Unicode 8.0
  [18589] locale: sort-test.sh fails at random
  [18595] math: ctan, ctanh missing underflows
  [18604] libc: assert macro-expands its argument
  [18610] math: S390: fetestexcept() reports any exception if DXC-code
    contains a vector instruction exception.
  [18611] math: j1, jn missing errno setting on underflow
  [18618] localedata: sync Chechen locale definitions with other *_RU
    locales
  [18647] math: powf(-0x1.000002p0, 0x1p30) returns 0 instead of +inf
  [18661] libc: Some x86-64 assembly codes don't align stack to 16 bytes
  [18665] network: In send_dg, the recvfrom function is NOT always using the
    buffer size of a newly created buffer (CVE-2015-7547)
  [18674] libc: [i386] trunk/sysdeps/i386/tst-auditmod3b.c:84: possible
    missing break ?
  [18675] libc: fpathconf(_PC_NAME_MAX) fails against large filesystems for
    32bit processes
  [18681] libc: regexp.h is obsolete and buggy, and should be desupported
  [18699] math: tilegx cproj() for various complex infinities does not yield
    infinity
  [18724] libc: Harden put*ent functions against data injection
  [18743] nptl: PowerPC: findutils testcase fails with --enable-lock-elision
  [18755] build: build errors with -DNDEBUG
  [18757] stdio: fmemopen fails to set errno on failure
  [18778] dynamic-link: ld.so crashes if failed dlopen causes libpthread to
    be forced unloaded
  [18781] libc: openat64 lacks O_LARGEFILE
  [18787] libc: [hppa] sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6:
    error: can’t find a register in class ‘R1_REGS’ while reloading ‘asm’
  [18789] math: [ldbl-128ibm] sinhl inaccurate near 0
  [18790] math: [ldbl-128ibm] tanhl inaccurate
  [18795] libc: stpncpy fortification misses buffer lengths that are
    statically too large
  [18796] build: build fails for --disable-mathvec
  [18803] math: hypot missing underflows
  [18820] stdio: fmemopen may leak memory on failure
  [18823] math: csqrt spurious underflows
  [18824] math: fma spurious underflows
  [18825] math: pow missing underflows
  [18857] math: [ldbl-128ibm] nearbyintl wrongly uses signaling comparisons
  [18868] nptl: pthread_barrier_init typo has in-theory-undefined behavior
  [18870] build: sem_open.c fails to compile with missing symbol
    FUTEX_SHARED
  [18872] stdio: Fix memory leak in printf_positional
  [18873] libc: posix_fallocate overflow check ineffective
  [18875] math: Excess precision leads incorrect libm
  [18877] libc: arm: mmap offset regression
  [18887] libc: memory corruption when using getmntent on blank lines
  [18918] localedata: hu_HU: change time to HH:MM:SS format
  [18921] libc: Regression: extraneous stat() and fstat() performed by
    opendir()
  [18928] dynamic-link: LD_POINTER_GUARD is not ignored for privileged
    binaries (CVE-2015-8777)
  [18951] math: tgamma missing underflows
  [18952] math: [ldbl-128/ldbl-128ibm] lgammal spurious "invalid", incorrect
    signgam
  [18953] localedata: lt_LT: change currency symbol to the euro
  [18956] math: powf inaccuracy
  [18961] math: [i386] exp missing underflows
  [18966] math: [i386] exp10 missing underflows
  [18967] math: math.h XSI POSIX namespace (gamma, isnan, scalb)
  [18969] build: multiple string test failures due to missing locale
    dependencies
  [18970] libc: Reference of pthread_setcancelstate in libc.a
  [18977] math: float / long double Bessel functions not in XSI POSIX
  [18980] math: i386 libm functions return with excess range and precision
  [18981] math: i386 scalb*, ldexp return with excess range and precision
  [18982] stdio: va_list and vprintf
  [18985] time: Passing out of range data to strftime() causes a segfault
    (CVE-2015-8776)
  [19003] math: [x86_64] fma4 version of pow inappropriate contraction
  [19007] libc: FAIL: elf/check-localplt with -z now and binutils 2.26
  [19012] locale: iconv_open leaks memory on error path
  [19016] math: clog, clog10 inaccuracy
  [19018] nptl: Mangle function pointers in tls_dtor_list
  [19032] math: [i386] acosh (-qNaN) spurious "invalid" exception
  [19046] math: ldbl-128 / ldbl-128ibm lgamma bad overflow handling
  [19048] malloc: malloc: arena free list can become cyclic, increasing
    contention
  [19049] math: [powerpc] erfc incorrect zero sign
  [19050] math: [powerpc] log* incorrect zero sign
  [19058] math: [x86_64] Link fail with -fopenmp and -flto
  [19059] math: nexttoward overflow incorrect in non-default rounding modes
  [19071] math: ldbl-96 lroundl incorrect just below powers of 2
  [19074] network: Data race in _res_hconf_reorder_addrs
  [19076] math: [ldbl-128ibm] log1pl (-1) wrong sign of infinity
  [19077] math: [ldbl-128ibm] logl (1) incorrect sign of zero result
  [19078] math: [ldbl-128ibm] expl overflow incorrect in non-default
    rounding modes
  [19079] math: dbl-64/wordsize-64 lround based on llround incorrect for
    ILP32
  [19085] math: ldbl-128 lrintl, lroundl missing exceptions for 32-bit long
  [19086] manual: posix_fallocate64 documented argument order is wrong.
  [19088] math: lround, llround missing exceptions close to overflow
    threshold
  [19094] math: lrint, llrint missing exceptions close to overflow threshold
  [19095] math: dbl-64 lrint incorrect for 64-bit long
  [19122] dynamic-link: Unnecessary PLT relocations in librtld.os
  [19124] dynamic-link: ld.so failed to build with older assmebler
  [19125] math: [powerpc32] llroundf, llround incorrect exceptions
  [19129] dynamic-link: [arm] Concurrent lazy TLSDESC resolution can crash
  [19134] math: [powerpc32] lround, lroundf spurious exceptions
  [19137] libc: i386/epoll_pwait.S doesn't support cancellation
  [19143] nptl: Remove CPU set size checking from sched_setaffinity,
    pthread_setaffinity_np
  [19156] math: [ldbl-128] j0l spurious underflows
  [19164] nptl: tst-getcpu fails with many possible CPUs
  [19168] math: math/test-ildoubl and math/test-ldouble failure
  [19174] nptl: PowerPC: TLE enabled pthread mutex performs poorly.
  [19178] dynamic-link: ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA confuses
    prelink
  [19181] math: [i386/x86_64] fesetenv (FE_DFL_ENV), fesetenv
    (FE_NOMASK_ENV) do not clear SSE exceptions
  [19182] malloc: malloc deadlock between ptmalloc_lock_all and
    _int_new_arena/reused_arena
  [19189] math: [ldbl-128] log1pl (-qNaN) spurious "invalid" exception
  [19201] math: dbl-64 remainder incorrect sign of zero result
  [19205] math: bits/math-finite.h conditions do not match math.h and
    bits/mathcalls.h
  [19209] math: bits/math-finite.h wrongly maps ldexp to scalbn
  [19211] math: lgamma functions do not set signgam for -ffinite-math-only
    for C99-based standards
  [19212] libc: features.h not -Wundef clean
  [19213] math: [i386/x86_64] log* (1) incorrect zero sign for -ffinite-
    math-only
  [19214] libc: Family and model identification for AMD CPU's are incorrect.
  [19219] libc: GLIBC build fails for ia64 with missing __nearbyintl
  [19228] math: [powerpc] nearbyint wrongly clears "inexact", leaves traps
    disabled
  [19235] math: [powerpc64] lround, lroundf, llround, llroundf spurious
    "inexact" exceptions
  [19238] math: [powerpc] round, roundf spurious "inexact" for integer
    arguments
  [19242] libc: strtol incorrect in Turkish locales
  [19243] malloc: reused_arena can pick an arena on the free list, leading
    to an assertion failure and reference count corruption
  [19253] time: tzset() ineffective when temporary TZ did not include DST
    rules
  [19266] math: strtod ("NAN(I)") incorrect in Turkish locales
  [19270] math: [hppa] Shared libm missing __isnanl
  [19285] libc: [hppa] sysdeps/unix/sysv/linux/hppa/bits/mman.h: missing
    MAP_HUGETLB and MAP_STACK defines
  [19313] nptl: Wrong __cpu_mask for x32
  [19347] libc: grantpt: try to force a specific gid even without pt_chown
  [19349] math: [ldbl-128ibm] tanhl inaccurate for small arguments
  [19350] math: [ldbl-128ibm] sinhl spurious overflows
  [19351] math: [ldbl-128ibm] logl inaccurate near 1
  [19363] time: x32: times() return value wrongly truncates/sign extends
    from 32bit
  [19367] dynamic-link: Improve branch prediction on Silvermont
  [19369] network: Default domain name not reset by res_ninit when "search"
    / "domain" entry is removed from resolv.conf
  [19375] math: powerpc: incorrect results for POWER7 logb with negative
    subnormals
  [19385] localedata: bg_BG: time separator should be colon, not comma
  [19408] libc: linux personality syscall wrapper may erroneously return an
    error on 32-bit architectures
  [19415] libc: dladdr returns wrong names on hppa
  [19432] libc: iconv rejects redundant escape sequences in IBM900, IBM903,
    IBM905, IBM907, and IBM909
  [19439] math: Unix98 isinf and isnan functions conflict with C++11
  [19443] build: build failures with -DDEBUG
  [19451] build: Make check fails on test-double-vlen2
  [19462] libc: Glibc failed to build with -Os
  [19465] math: Wrong code with -Os
  [19466] time: time/tst-mktime2.c is compiled into an infinite loop with
    -Os
  [19467] string: Fast_Unaligned_Load needs to be enabled for Excavator core
    CPU's.
  [19475] libc: Glibc 2.22 doesn't build on sparc [PATCH]
  [19486] math: S390: Math tests fail with "Exception Inexact set".
  [19529] libc: [ARM]: FAIL: stdlib/tst-makecontext
  [19550] libc: [mips] mmap negative offset handling inconsistent with other
    architectures
  [19590] math: Fail to build shared objects that use libmvec.so functions.

Contributors
============

This release was made possible by the contributions of many people.
The maintainers are grateful to everyone who has contributed
changes or bug reports.  These include:

Adhemerval Zanella
Alan Modra
Amit Pawar
Andreas Schwab
Andrew Bennett
Andrew Senkevich
Andrew Stubbs
Anton Blanchard
Arjun Shankar
Arslanbek Astemirov
Aurelien Jarno
Brett Neumeier
Carlos Eduardo Seo
Carlos O'Donell
Chris Metcalf
Chung-Lin Tang
Damyan Ivanov
Daniel Marjamäki
David Kastrup
David Lamparter
David S. Miller
Dmitry V. Levin
Egmont Koblinger
Evert
Flavio Cruz
Florian Weimer
Gabriel F. T. Gomes
Geoffrey Thomas
Gleb Fotengauer-Malinovskiy
Gunnar Hjalmarsson
H.J. Lu
Helge Deller
James Perkins
John David Anglin
Joseph Myers
Justus Winter
Khem Raj
Ludovic Courtès
Maciej W. Rozycki
Manolis Ragkousis
Marcin Kościelnicki
Mark Wielaard
Marko Myllynen
Martin Sebor
Maxim Ostapenko
Mike FABIAN
Mike Frysinger
Namhyung Kim
Ondrej Bilka
Ondřej Bílka
Paul E. Murphy
Paul Eggert
Paul Murphy
Paul Pluzhnikov
Petar Jovanovic
Phil Blundell
Rajalakshmi Srinivasaraghavan
Rasmus Villemoes
Richard Henderson
Rob Wu
Roland McGrath
Samuel Thibault
Siddhesh Poyarekar
Stan Shebs
Stefan Liebler
Steve Ellcey
Szabolcs Nagy
Thomas Schwinge
Torvald Riegel
Tulio Magno Quites Machado Filho
Vincent Bernat
Wilco Dijkstra
Zack Weinberg
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABCAAGBQJWxgfKAAoJEPpQRMoru+a1Hj0P/0urXX1af98BQBApibOYj0E9
j1hQT0+WFrCSY45kjZY8uHwhbW0IkR5zztnUVMJ0dFM67tnIiKArxF6hS6qSef/c
7q1xeVdiEj4RpiZYeiYB2OKEXr09FAMC91Htn9pFQXeiePkcIDSXZ4WNsOSbJwAI
8eWh4/Q5MZMEreFIKJxI3LJQQAzBjXtpT7WNp0yawMDajX3mqAc011Xqq0aNL8a3
Uh5Y7dw7LfyvNHdEOaXnOX9CPdflKK86vHLBEWIksMN8Igd+2fAs9nIGw0gPJ+25
gLxnss4jvb2svS0hnsneFsR1E+Ro3f81DBEf9I96kH+uhsquoUts34HvBIZPsqNZ
emdWLxwjUKv27cNeK86H2RvRMUKf10UayIOaYBB8cUMfq/FRvqSH6GwTMBtKUeEC
Pgs/wclmyg1ZFHPdHppNYAF8p4HCkkwNduTA6xUpOjL72Tn7yh4nwK3hX9nu9osU
yh1F7UqAnm/yJAeGcQZSa9PMg2fuGWc1YycCkYDAMDl2qTNXG5xMlut5HySxDysE
SPCmi+JzgP8JCOb4NZ+31vNUR60t+FXACmTCqFp9bs6xoUZnY9RMNAEBStFXWrev
w+8WlHC8dYjSJnjcHyGyx0CSqLfCodT0gW1zg8+EDv7EXnAwvWLGKdcKvl2tpkwg
J46W6DhHwprOjfQQ0dyn
=Zx43
-----END PGP SIGNATURE-----

Adhemerval Zanella (18):
      arm: Assembly implementation cleanup
      powerpc: Fix strstr/power7 build
      powerpc: Fix strnlen/power7 build
      powerpc: Use default strcpy optimization for POWER7
      powerpc: Fix PPC64/POWER7 conform tests
      Fix wordsize-32 mmap offset for negative value (BZ#18877)
      Mark lseek/llseek as non-cancellable
      nptl: Add NPTL cases for cancellation failures cases
      Cleanup sync_file_range implementation
      Fix nearbyintl linkage for ia64 (bug 19219)
      Remove signal handling for nanosleep (bug 16364)
      nptl: Fix racy pipe closing in tst-cancel{20,21}
      Fix POWER7 logb results for negative subnormals (bug 19375)
      Fix SYSCALL_CANCEL for empty argumetns
      powerpc: Regenerate libm-test-ulps
      Fix isinf/isnan declaration conflict with C++11
      Update NEWS with fixed bugs for 2.23 release
      Update version.h and include/features.h for 2.23 release

Alan Modra (1):
      hppa: start.S: rework references to fix PIE TEXTRELs [BZ #18421]

Amit Pawar (1):
      Set index_Fast_Unaligned_Load for Excavator family CPUs

Andreas Schwab (17):
      Properly terminate FDE in makecontext for m68k (bug 18635)
      Remove unused variables from timezone/Makefile
      Readd O_LARGEFILE flag for openat64 (bug 18781)
      Remove unused definition of __openat(64)_nocancel
      Add version set GLIBC_2.19 for linux/powerpc
      Remove __ASSUME_IPC64
      Terminate FDE before return trampoline in makecontext for powerpc (bug 18635)
      Add missing va_end calls (bug 17243)
      Remove extra va_start/va_end calls (bug 17244)
      Restore sparc64 implementation of semctl
      Add dependencies on needed locales in each subdir tests (bug 18969)
      Add bug reference
      Always use INTERNAL_SYSCALL_ERRNO with INTERNAL_SYSCALL
      Don't emit invalid extra shift character at block boundary by iconv (bug 17197)
      Force rereading TZDEFRULES after it was used to set DST rules only (bug #19253)
      Don't do lock elision on an error checking mutex (bug 17514)
      Remove unused variables

Andrew Bennett (1):
      MIPS: Only use .set mips* assembler directives when necessary

Andrew Senkevich (10):
      [BZ #18796]
      Mention BZ #18796 fix in NEWS.
      Better workaround for aliases of *_finite symbols in vector math library.
      Corrected path to installed libmvec_nonshared.a
      Utilize x86_64 vector math functions w/o -fopenmp.
      Added memset optimized with AVX512 for KNL hardware.
      Added memcpy/memmove family optimized with AVX512 for KNL hardware.
      Fixed typos in __memcpy_chk.
      Fixed build with assembler w/o AVX-512 support.
      Use PIC relocation in ALIAS_IMPL

Andrew Stubbs (1):
      longlong: add SH FDPIC support

Anton Blanchard (1):
      Eliminate redundant sign extensions in pow()

Arjun Shankar (1):
      Modify several tests to use test-skeleton.c

Arslanbek Astemirov (1):
      locales/ce_RU: sync with other *_RU locales

Aurelien Jarno (6):
      Fix grantpt basename namespace bug
      mips: fix testsuite build for O32 FPXX ABI on pre-R2 CPU
      grantpt: trust the kernel about pty group and permission mode
      Cleanup ARM ioperm implementation
      i386: move ULPs to i686/multiarch and regenerate new ones for i386
      Cleanup ARM ioperm implementation (step 2)

Brett Neumeier (1):
      Fix non-v9 32-bit sparc build.

Carlos Eduardo Seo (11):
      powerpc: Add missing hwcap strings.
      powerpc: make memchr use memchr-power7.
      powerpc: Fix memchr for powerpc32.
      powerpc: Sync hwcap.h with kernel
      powerpc: Fix compiler warning in some syscalls.
      Add AT_PLATFORM to _dl_aux_init ()
      powerpc: Provide __tls_get_addr () in static libc
      powerpc: Add hwcap/hwcap2/platform data to TCB.
      powerpc: Add basic support for POWER9 sans hwcap.
      powerpc: Export __parse_hwcap_and_convert_at_platform to libc.a.
      powerpc: Add hwcap2 bits for POWER9.

Carlos O'Donell (22):
      Open development for 2.23.
      Prevent check-local-headers.sh hang.
      Use ALIGN_DOWN in systrim.
      Use ALIGN_* macros in _dl_map_object_from_fd.
      Fix error messages in elf/tst-dlmopen1.c.
      Files open O_WRONLY not supported in fallocate emulation.
      Fix manual argument order for posix_fallocate64 (Bug 19086).
      malloc: Consistently apply trim_threshold to all heaps (Bug 17195)
      Add BZ#19086 to NEWS.
      strcoll: Remove incorrect STRDIFF-based optimization (Bug 18589).
      strcoll: Add bug-strcoll2 to testsuite (Bug 18589).
      Fix typo in bug-strcoll2 (Bug 18589)
      include/stap-probe.h: Fix formatting.
      Rename localedir to complocaledir (bug 14259).
      Comment on IBM930, IBM933, IBM935, IBM937, IBM939.
      Regenerate locale/C-translit.h.
      Update transliteration support to Unicode 7.0.0.
      Document best practice for disconnected NSS modules.
      Use $(PYTHON) to run benchtests python files.
      Ensure isinff, isinfl, isnanf, and isnanl are defined (Bug 19439)
      Update INSTALL with latest versions tested to work.
      CVE-2015-7547: getaddrinfo() stack-based buffer overflow (Bug 18665).

Chris Metcalf (7):
      tile: avoid preprocessor redefinition warnings
      tile: regenerate libm-test-ulps
      Update NEWS to mention drive-by fix for bug 18699.
      tile: define __NO_LONG_DOUBLE_MATH
      misc/tst-tsearch.c: bump up TIMEOUT to 10 seconds.
      math: add LDBL_CLASSIFY_COMPAT support
      Silence some false positive warnings for gcc 4.7

Chung-Lin Tang (1):
      Maintainence patch for nios2: update ULPS file and localplt.data changes.

Damyan Ivanov (1):
      localedata: bg_BG: use colon as time separator [BZ #19385]

Daniel Marjamäki (1):
      Updated __nonnull annotations for wcscat, wcsncat, wcscmp and wcsncmp [BZ #18265]

David Kastrup (1):
      Don't macro-expand failed assertion expression [BZ #18604]

David Lamparter (1):
      arm: setjmp/longjmp: fix PIC vs SHARED thinkos

David S. Miller (5):
      Update sparc ULPS.
      Fix missing __sqrtl_finite symbol in libm on sparc 32-bit.
      Adjust sparc 32-bit __sqrtl_finite version tag.
      Define __sqrtl_finite on sparc 32-bit with correct symbol version.
      Update localplt.data for 32-bit sparc.

Dmitry V. Levin (2):
      Fix getaddrinfo bug number in ChangeLog and NEWS files
      Fix linux personality syscall wrapper

Egmont Koblinger (1):
      hu_HU: change time separator to colon [BZ #18918]

Evert (1):
      localedata: nl_NL: date_fmt: rewrite to match standards [BZ #16495]

Flavio Cruz (1):
      Fix O_DIRECTORY lookup on trivial translators

Florian Weimer (42):
      nptl: Document crash due to incorrect use of locks
      Amend ChangeLog to reflect deletion of elf/tst-znodelete-zlib.cc
      Add test case for bug 18287
      Test in commit e07aabba73ea62e7dfa0512507c92efb851fbdbe is for bug 17079
      Fix inconsistent passwd compensation in nss/bug17079.c
      Harden putpwent, putgrent, putspent, putspent against injection [BZ #18724]
      Harden tls_dtor_list with pointer mangling [BZ #19018]
      nss_nis: Do not call malloc_usable_size [BZ #10432]
      Add a test case for C++11 thread_local support
      iconvdata: Add missing const to lookup table definitions
      Fix double-checked locking in _res_hconf_reorder_addrs [BZ #19074]
      Always enable pointer guard [BZ #18928]
      vfscanf: Use struct scratch_buffer instead of extend_alloca
      The va_list pointer is unspecified after a call to vfprintf [BZ #18982]
      Assume that SOCK_CLOEXEC is available and works
      vfprintf: Rewrite printf_positional to use struct scratch_buffer
      malloc: Rewrite with explicit TLS access using __thread
      sunrpc: Rewrite with explicit TLS access using __thread
      Use the CXX compiler only if it can create dynamic and static programs
      x86_64: Regenerate ulps [BZ #19168]
      malloc: Prevent arena free_list from turning cyclic [BZ #19048]
      _dl_fini: Rewrite to use VLA instead of extend_alloca
      Add bug 18604 to NEWS
      Remove a spurious attribution
      Add bug 18604 to the correct section
      Simplify the abilist format
      Terminate process on invalid netlink response from kernel [BZ #12926]
      ld.so: Add original DSO name if overridden by audit module [BZ #18251]
      Work around conflicting declarations of math functions
      Replace MUTEX_INITIALIZER with _LIBC_LOCK_INITIALIZER in generic code
      Implement "make update-all-abi"
      Remove CPU set size checking from affinity functions [BZ #19143]
      tst-res_hconf_reorder: Set RESOLV_REORDER environment variable
      Revert "tst-res_hconf_reorder: Set RESOLV_REORDER environment variable"
      Fix aliasing violation in tst-rec-dlopen
      malloc: Fix attached thread reference count handling [BZ #19243]
      malloc: Fix list_lock/arena lock deadlock [BZ #19182]
      malloc: Update comment for list_lock
      malloc: Test various special cases related to allocation failures
      Improve check against integer wraparound in hcreate_r [BZ #18240]
      hsearch_r: Apply VM size limit in test case
      NEWS: List additional fixed security bugs

Gabriel F. T. Gomes (3):
      PowerPC: Extend Program Priority Register support
      PowerPC: Fix operand prefixes
      PowerPC: Add comments to optimized strncpy

Geoffrey Thomas (1):
      pt_chown: Clear any signal mask inherited from the parent process.

Gleb Fotengauer-Malinovskiy (2):
      Mention mkdtemp as another secure alternative to mktemp
      malloc: remove redundant getenv call

Gunnar Hjalmarsson (1):
      lt_LT: change currency symbol to the euro [BZ #18953]

H.J. Lu (95):
      Also check dead->data[category] != NULL
      Compile {memcpy,strcmp}-sse2-unaligned.S only for libc
      Align stack to 16 bytes when calling __setcontext
      Align stack to 16 bytes when calling __gettimeofday
      Align stack to 16 bytes when calling __errno_location
      Add a missing break in tst-auditmod3b.c
      Add _dl_x86_cpu_features to rtld_global
      Update x86_64 multiarch functions for <cpu-features.h>
      Update i686 multiarch functions for <cpu-features.h>
      Update libmvec multiarch functions for <cpu-features.h>
      Update x86 elision-conf.c for <cpu-features.h>
      Don't include <cpuid.h> in elision-conf.h
      Check if cpuid is available in init_cpu_features
      Define HAS_CPUID/HAS_I586/HAS_I686 from -march=
      Also check __i586__/__i686__ for HAS_I586/HAS_I686
      Use x86-64 cacheinfo.c and sysconf.c for x86
      Call __setcontext with HIDDEN_JUMPTARGET
      Mark __xstatXX_conv as hidden
      Add BZ #14341 to NEWS
      Remove x86 init-arch.c
      Move x86_64 init-arch.h to sysdeps/x86/init-arch.h
      Remove the unused IFUNC files
      Add missing ChangeLog entry for the last commit
      Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN
      Fix a typo in linux lxstat.c
      Revert "Fix a typo in linux lxstat.c"
      Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN"
      Save and restore vector registers in x86-64 ld.so
      Replace %xmm8 with %xmm0
      Remove x86-64 rtld-xxx.c and rtld-xxx.S
      Replace %xmm[8-12] with %xmm[0-4]
      Don't run tst-getpid2 with LD_BIND_NOW=1
      Use SSE2 optimized strcmp in x86-64 ld.so
      Don't disable SSE in x86-64 ld.so
      Replace MEMPCPY_P/PIC with USE_AS_MEMPCPY/SHARED
      Replace BZERO_P/PIC with USE_AS_BZERO/SHARED
      Remove sysdeps/i386/i486/Versions
      Move i486/bits/atomic.h to bits/atomic.h
      Move i486/htonl.S to htonl.S
      Move i486/string-inlines.c to string-inlines.c
      Move i486/pthread_spin_trylock.S to pthread_spin_trylock.S
      Move i486/strcat.S to strcat.S
      Move i486/strlen.S to strlen.S
      Remove i486 subdirectory
      Add i386 memset and memcpy assembly functions
      Detect and select i586/i686 implementation at run-time
      Mention 15786 in NEWS
      Use __pthread_setcancelstate in libc.a
      Use __libc_ptf_call in _longjmp_unwind
      Remove ignored symbols from nptl/Versions
      Move sysdeps/unix/sysv/linux/i386/i486/*.? to i386
      Update lrint/lrintf/lrintl for x32
      Support x86-64 assmebler without AVX512
      Add INLINE_SYSCALL_ERROR_RETURN_VALUE
      Use INLINE_SYSCALL_ERROR_RETURN_VALUE
      Use INTERNAL_SYSCALL and INLINE_SYSCALL_ERROR_RETURN_VALUE
      Support PLT and GOT references in local PIC check
      Avoid PLT when calling __sched_getaffinity_new
      i386: Remove syscall assembly codes with 6 arguments
      Optimize i386 syscall inlining for GCC 5
      Remove i386/epoll_pwait.S
      Add comments for GCC 5 requirement
      Mark x86 _dl_unmap/_dl_make_tlsdesc_dynamic hidden
      Mark _wordcopy_XXX functions hidden
      Mark internal _dl_XXX functions hidden
      Mark internal _itoa functions hidden
      Mark _dl_catch_error hidden
      Mark internal dirent functions hidden
      Mark internal fcntl functions hidden
      Mark ld.so internel __profile_frequency hidden
      Mark internal setjmp functions hidden
      Mark ld.so internel sigaction functions hidden
      Mark ld.so internel stdlib functions hidden
      Mark ld.so internel string functions hidden
      Mark ld.so internel __uname hidden
      Mark ld.so internel __fxstatat64 hidden
      Apply -fomit-frame-pointer only to .o/.os files
      Disable GCC 5 optimization when PROF is defined
      Build i386 __libc_do_syscall when PROF is defined
      Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits for prelink
      Add a test for prelink output
      Run tst-prelink test for GLOB_DAT reloc
      Update family and model detection for AMD CPUs
      Add __CPU_MASK_TYPE for __cpu_mask
      Enable Silvermont optimizations for Knights Landing
      Add Prefer_MAP_32BIT_EXEC to map executable pages with MAP_32BIT
      Add missing ChangeLog entries
      Add REGISTERS_CLOBBERED_BY_SYSCALL for x86-64
      Provide x32 times
      Mark ld.so internal mmap functions hidden in ld.so
      Mark internal unistd functions hidden in ld.so
      Update copyright dates committed in 2016
      Use TIME_T_MAX and TIME_T_MIN in tst-mktime2.c
      Call math_opt_barrier inside if
      Add _STRING_INLINE_unaligned and string_private.h

Helge Deller (1):
      hppa: Add MAP_HUGETLB and MAP_STACK defines [BZ #19285]

James Perkins (2):
      strptime %z: fix rounding, extend range to +/-9959 [BZ #16141]
      time/tst-strptime2.c: test full input range +/- 0-9999

John David Anglin (5):
      hppa: Fix reload error with atomic code [BZ #18787]
      hppa: Fix miscompilation of sched_setaffinity() [BZ #18480]
      hppa: Define __NO_LONG_DOUBLE_MATH so headers are consistent with libm build [BZ #19270]
      hppa: fix pthread spinlock
      hppa: fix dladdr [BZ #19415]

Joseph Myers (212):
      Fix powf (close to -1, large) (bug 18647).
      Fix sinh missing underflows (bug 16519).
      Fix tan missing underflows (bug 16517).
      Resort bug numbers in NEWS into ascending order.
      Fix ldbl-128ibm sinhl inaccuracy near 0 (bug 18789).
      Fix ldbl-128ibm tanhl inaccuracy (bug 18790).
      Add more tests of various libm functions.
      Fix tanh missing underflows (bug 16520).
      Add more random libm-test inputs.
      Fix fma spurious underflows (bug 18824).
      Fix csqrt spurious underflows (bug 18823).
      Fix MIPS -Wundef warnings for __mips_isa_rev.
      Fix -Wundef warnings in login/tst-utmp.c.
      Fix -Wundef warnings in elf/tst-execstack.c.
      Fix csqrt missing underflows (bug 18370).
      Fix uninitialized variable use in ldbl-128ibm nearbyintl.
      Don't use -Wno-uninitialized in math/.
      Don't use -Wno-error=undef.
      Don't use -Wno-strict-prototypes in timezone/.
      Note bug 10882 as having been fixed in 2.16.
      Note bug 14941 as having been fixed in 2.18.
      Add more TCP_* values to netinet/tcp.h.
      Add netinet/in.h values from Linux 4.2.
      Don't include <bits/stdio-lock.h> from installed <libio.h>.
      Don't install bits/libc-lock.h or bits/stdio-lock.h.
      Rename bits/libc-tsd.h to libc-tsd.h (bug 14912).
      Rename bits/m68k-vdso.h to m68k-vdso.h (bug 14912).
      Rename bits/stdio-lock.h to stdio-lock.h (bug 14912).
      Rename bits/linkmap.h to linkmap.h (bug 14912).
      Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912).
      Fix lgamma (negative) inaccuracy (bug 2542, bug 2543, bug 2558).
      Add more randomly-generated libm tests.
      Fix ldbl-128/ldbl-128ibm lgamma spurious "invalid", incorrect signgam (bug 18952).
      Update libm-test-ulps for MIPS.
      Move bits/atomic.h to atomic-machine.h (bug 14912).
      Add more random libm test inputs (mainly for ldbl-128).
      Fix exp2 missing underflows (bug 16521).
      Fix i386 exp missing underflows (bug 18961).
      Fix i386 exp10 missing underflows (bug 18966).
      Simplify hypotf infinity handling (bug 15918).
      Fix ctan, ctanh missing underflows (bug 18595).
      Mark fegetround pure (bug 16296).
      Fix ldbl-128ibm nearbyintl use of signaling comparisons on NaNs (bug 18857).
      Fix math.h, tgmath.h XSI POSIX namespace (gamma, isnan, scalb) (bug 18967).
      Clean up ldbl-128 / ldbl-128ibm expm1l dead code (bug 16415).
      Update de.po from Translation Project (bug 4404).
      Make scalbn set errno (bug 6803).
      Don't declare float / long double Bessel functions for XSI POSIX (bug 18977).
      Fix tgamma missing underflows (bug 18951).
      Reduce number of constants in __finite* (bug 15384).
      Fix sign of zero part from ctan / ctanh when argument infinite (bug 17118).
      Test for weak undefined symbols in linknamespace.pl.
      Avoid excess range overflowing results from cosh, sinh, lgamma (bug 18980).
      Avoid excess range in results from i386 scalb functions (bug 18981).
      Avoid excess range in results from i386 exp, hypot, pow functions (bug 18980).
      Revert timezone/Makefile change.
      Use math_narrow_eval more consistently.
      Refactor code forcing underflow exceptions.
      Don't use volatile in exp2f.
      Fix x86_64 fma4 pow inappropriate contraction (bug 19003).
      Refactor i386 libm code forcing underflow exceptions.
      Use LOAD_PIC_REG in i386 atanh.
      Refactor x86_64 libm code forcing underflow exceptions.
      Fix hypot missing underflows (bug 18803).
      Use soft-fp fma for MicroBlaze (bug 13304).
      Use soft-fp fma for no-FPU ColdFire (bug 13304).
      Fix pow missing underflows (bug 18825).
      Fix powf inaccuracy (bug 18956).
      Fix clog, clog10 inaccuracy (bug 19016).
      Refine errno / "inexact" expectations in libm-test.inc.
      Improve test coverage of real libm functions [a-e]*.
      Fix i386 acosh (-qNaN) spurious "invalid" exception.
      Fix ldbl-128ibm exp10l spurious overflows (bug 16620).
      Use type-specific precision when printing results in libm-test.inc.
      Fix ldbl-128 / ldbl-128ibm lgamma overflow handling (bug 16347, bug 19046).
      Fix i386 build after put*ent hardening changes.
      Fix nexttoward overflow in non-default rounding modes (bug 19059).
      Work around powerpc32 integer 0 converting to -0 (bug 887, bug 19049, bug 19050).
      Don't list bug 887 as fixed for glibc 2.16.
      Fix ldbl-96 lroundl just below powers of 2 (bug 19071).
      Fix ldbl-128ibm log1pl (-1) sign of infinity (bug 19076).
      Fix ldbl-128ibm logl (1) sign of zero result (bug 19077).
      Add more scalb test expectations for "inexact" exception.
      Fix ldbl-128ibm expl overflow in non-default rounding modes (bug 19078).
      Remove scripts/rpm2dynsym.sh.
      Remove configure tests for SSE4 support.
      Use same test inputs for lrint and llrint.
      Add more tests of lrint, llrint, lround, llround.
      Don't use dbl-64/wordsize-64 lround based on llround for ILP32 (bug 19079).
      Use dbl-64/wordsize-64 for MIPS64.
      Fix ldbl-128 lrintl, lroundl missing exceptions for 32-bit long (bug 19085).
      Fix lround, llround missing exceptions close to overflow threshold (bug 19088).
      Remove configure tests for AVX support.
      Correct "inexact" expectations in lround, llround tests.
      Fix lrint, llrint missing exceptions close to overflow threshold (bug 19094).
      Fix dbl-64 lrint for 64-bit long (bug 19095).
      Remove configure tests for FMA4 support.
      Remove configure tests for -mno-vzeroupper support.
      Fix lrint, llrint, lround, llround missing exceptions for MIPS (bug 16399).
      Fix llrint, llround missing exceptions for ARM (bug 15470).
      Regenerate ARM libm-test-ulps.
      Regenerate MIPS libm-test-ulps.
      Fix powerpc32 llrint, llrintf bad exceptions (bug 16422).
      Move powerpc llround implementations to powerpc32 directory.
      Fix powerpc32 llround, llroundf exceptions (bug 19125).
      Fix powerpc32 lround, lroundf spurious exceptions (bug 19134).
      Remove stddef.h configure test.
      Remove -static-libgcc configure test.
      Remove .previous, .popsection configure tests.
      Remove assembler -mtune=i686 configure test.
      Do not leave files behind in /tmp from testing.
      Remove -fexceptions configure test.
      Remove sizeof (long double) configure test.
      Remove -Bgroup configure test.
      Remove NPTL configure errors based on top-level configure tests.
      Fix i386 build for lll_unlock_elision change.
      Convert 703 function definitions to prototype style.
      Add more tests for ceil, floor, round, trunc.
      Add more libm tests (fabs, fdim, fma, fmax, fmin, fmod).
      Convert 231 sysdeps function definitions to prototype style.
      Remove .weak, .weakext configure tests.
      Remove -fgnu89-inline configure test.
      Convert 69 more function definitions to prototype style (line wrap cases).
      Do not use -Wno-strict-prototypes.
      Remove gnu_unique_object configure test.
      Convert 24 more function definitions to prototype style (array parameters).
      Convert 29 more function definitions to prototype style (multiple parameters in one K&R parameter declaration).
      Convert 113 more function definitions to prototype style (files with assertions).
      Convert miscellaneous function definitions to prototype style.
      Add more libm tests (fmod, fpclassify, frexp, hypot, ilogb, j0, j1, jn, log, log10, log2).
      Convert a few more function definitions to prototype style.
      Use -Wold-style-definition.
      Fix ldbl-128 j0l spurious underflows (bug 19156).
      Make io/ftwtest-sh remove temporary files on early exit.
      Move io/tst-fcntl temporary file creation to do_prepare.
      Fix i386 / x86_64 nearbyint exception clearing (bug 15491).
      Fix j1, jn missing errno setting on underflow (bug 18611).
      Add more libm tests (ilogb, is*, j0, j1, jn, lgamma, log*).
      Remove libm-test.inc special-casing of errors up to 0.5 ulp.
      Remove configure test for assembler .text directive.
      Remove support for removing glibc 2.0 headers.
      Remove configure test for needing -P for .S files.
      Remove TLS configure tests.
      Require GCC 4.7 or later to build glibc.
      Use -std=c11 for C11 conform/ tests.
      Remove pre-GCC-4.7 conform/ test XFAILs.
      Remove sysdeps/nptl/configure.ac.
      Use -std=gnu11 instead of -std=gnu99.
      Add -std=gnu11 and -std=c11 NPTL initializers tests.
      Remove GCC version conditionals on -Wmaybe-uninitialized pragmas.
      Remove MIPS16 atomics using __sync_* (bug 17404).
      Remove configure test for ARM TLS descriptors support.
      Remove -mavx2 configure tests.
      Use C11 *_DECIMAL_DIG macros in libm-test.inc.
      Fix i386/x86_64 fesetenv SSE exception clearing (bug 19181).
      Use C11 *_TRUE_MIN macros where applicable.
      Use C11 CMPLX* macros in libm tests.
      Handle more state in i386/x86_64 fesetenv (bug 16068).
      Use max_align_t from <stddef.h>.
      Remove configure tests for visibility support.
      Remove cpuid.h configure tests.
      Make drem an alias of remainder (bug 16171).
      Do not test sign of zero result from infinite argument to Bessel functions.
      Fix ldbl-128 log1pl (-qNaN) spurious "invalid" exception (bug 19189).
      Remove init_array / fini_array configure test.
      Make nextafter, nexttoward set errno (bug 6799).
      Fix dbl-64 remainder sign of zero result (bug 19201).
      Add more libm tests (modf, nearbyint, nextafter, nexttoward, pow, remainder, remquo, rint).
      Remove --no-whole-archive configure test.
      Add more libm tests (scalb*, signbit, sin, sincos, sinh, sqrt, tan, tanh, tgamma, y0, y1, yn, significand).
      Refactor libm-test inline tests disabling.
      Remove miscellaneous GCC >= 4.7 version conditionals.
      Make bits/math-finite.h conditions match other headers (bug 19205).
      Don't redirect ldexp to scalbn in bits/math-finite.h (bug 19209).
      Fix features.h for -Wundef (bug 19212).
      Fix finite-math-only lgamma functions signgam setting (bug 19211).
      Fix i386/x86_64 log* (1) zero sign for -ffinite-math-only (bug 19213).
      Add script to list fixed bugs for the NEWS file.
      Run libm-test tests for finite-math-only functions.
      Remove configure tests for some linker -z options.
      Fix typo in signgam test messages.
      Add more tests of pow.
      Fix powerpc nearbyint wrongly clearing "inexact" and leaving traps disabled (bug 19228).
      Fix powerpc64 lround, lroundf, llround, llroundf spurious "inexact" exceptions (bug 19235).
      Fix powerpc round, roundf spurious "inexact" (bug 19238).
      Fix ldbl-128ibm strtold overflow handling (bug 14551).
      Fix lgamma setting signgam for ISO C (bug 15421).
      Fix math_private.h multiple include guards.
      Fix strtol in Turkish locales (bug 19242).
      Update <netpacket/packet.h> for Linux 4.3.
      Update <sys/ptrace.h> for Linux 4.3.
      Fix strtod ("NAN(I)") in Turkish locales (bug 19266).
      Refactor strtod parsing of NaN payloads.
      Use hex float constants in sysdeps/ieee754/dbl-64/e_sqrt.c.
      Fix nan functions handling of payload strings (bug 16961, bug 16962).
      Use direct socket syscalls for new kernels on i386, m68k, microblaze, sh.
      Fix ldbl-128ibm tanhl inaccuracy for small arguments (bug 19349).
      Fix ldbl-128ibm sinhl spurious overflows (bug 19350).
      Fix ldbl-128ibm logl inaccuracy near 1 (bug 19351).
      Automate LC_CTYPE generation for tr_TR, update to Unicode 8.0.0 (bug 18491).
      Make obsolete syscall wrappers into compat symbols (bug 18472).
      Update copyright dates with scripts/update-copyrights.
      Update copyright dates not handled by scripts/update-copyrights.
      Update miscellaneous files from upstream sources.
      Add new header definitions from Linux 4.4 (plus older ptrace definitions).
      Regenerate ARM libm-test-ulps.
      Regenerate powerpc-nofpu libm-test-ulps.
      Regenerate MIPS libm-test-ulps.
      Fix ulps regeneration for *-finite tests.
      Update localplt.data for powerpc-nofpu.
      Fix __finitel libm compat symbol version.
      Fix MIPS mmap negative offset handling for consistency (bug 19550).

Justus Winter (1):
      Cache the host port like we cache the task port

Khem Raj (1):
      argp: Use fwrite_unlocked instead of __fxprintf when !_LIBC

Ludovic Courtès (2):
      Gracefully handle incompatible locale data
      Use shell's builtin pwd.

Maciej W. Rozycki (3):
      [BZ #17250] Fix static dlopen default library search path
      MIPS: Wire FCSR.ABS2008 to FCSR.NAN2008
      MIPS: Set the required Linux kernel version to 4.5.0 for 2008 NaN

Manolis Ragkousis (1):
      Check sysheaders when looking for Mach and Hurd headers

Marcin Kościelnicki (1):
      Add __private_ss to s390 struct tcbhead.

Mark Wielaard (3):
      Add LFS support for fts functions (bug 11460)
      elf/elf.h: Add new 386 and X86_64 relocations from binutils.
      Revert "elf/elf.h: Add new 386 and X86_64 relocations from binutils."

Marko Myllynen (4):
      localedata: remove timezone information [BZ #18525]
      Fix lang_lib/lang_term as per ISO 639-2 [BZ #16973]
      Make shebang interpreter directives consistent
      Make shebang interpreter directives consistent

Martin Sebor (4):
      Let 'make check subdirs=string' succeed even when it's invoked
      Fix build errors with -DNDEBUG.
      Fix build failures with -DDEBUG.
      Have iconv accept redundant escape sequences in IBM900, IBM903, IBM905,

Maxim Ostapenko (1):
      Clear DF_1_NODELETE flag only for failed to load library.

Mike FABIAN (3):
      Generic updates to transliterations.
      Update da, nb, nn, and sv locales (Bug 89)
      Update to Unicode 8.0.0.

Mike Frysinger (44):
      nptl: fix set-but-unused warning w/_STACK_GROWS_UP
      mmap64: fix undef warnings
      test-skeleton: add usage information
      fix missing ctype.h include
      hppa: _dl_symbol_address: add missing hidden def
      microblaze: include unix/sysdep.h
      hppa: put custom madvise defines behind __USE_MISC
      fix non-portable `echo -n` usage
      gawk: fix gensub usage
      stpncpy: fix bug number [BZ #18795]
      hppa: assume TLS everywhere
      hppa: drop __ASSUME_LWS_CAS define
      hppa: shm.h: add SHM_EXEC
      hppa: sigaction.h: update define export based on __USE_XOPEN2K8
      hppa: epoll.h: move to common sys/epoll.h
      hppa: eventfd.h: move to common sys/eventfd.h
      hppa: inotify.h: move to common sys/inotify.h
      hppa: signalfd.h: move to common sys/signalfd.h
      hppa: timerfd.h: move to common sys/timerfd.h
      NEWS: note fixed bug
      relocate localedata ChangeLog entries
      manual: skip build when perl is unavailable
      mips: siginfo.h: add SIGSYS details [BZ #18863]
      de.po: fix SIGALRM typo [BZ #4404]
      getmntent: fix memory corruption w/blank lines [BZ #18887]
      NEWS: add #18887
      localedef: improve error message [BZ #16985]
      alpha: drop __ASSUME_FDATASYNC
      timezone: fix parallel check failures
      timezone: add a configure flag to disable program install
      timezone: document new --disable-timezone-tools option
      timezone: polish grammar a bit in documentation
      use -fstack-protector-strong when available
      pylintrc: disable reports
      ia64: fpu: fix gammaf typo [BZ #15421]
      list-fixed-bugs: use argparse for the commandline
      localedata: nl_NL@euro: copy measurement from nl_NL [BZ #19198]
      ia64: fpu: fix gamma definition handling [BZ #15421]
      xstat: only check to see if __ASSUME_ST_INO_64_BIT is defined
      longlong: fix sh -Wundef builds
      sparc: mman.h: fix bad comment insertion
      configure: make the unsupported error message less hostile
      localedata: convert all files to utf-8
      Revert "ChangeLogs: convert to utf-8"

Namhyung Kim (1):
      manual/argp.texi (Specifying Argp Parsers): Fix typo.

Ondrej Bilka (1):
      powerpc: Fix stpcpy performance for power8

Ondřej Bílka (4):
      Fix exponents in manual.
      Fix strcpy_chk and stpcpy_chk performance.
      Handle overflow in __hcreate_r
      add bug 18240 to news.

Paul E. Murphy (6):
      powerpc: Fix tabort usage in syscalls
      powerpc: Revert to default atomic ops in elision code
      Fix race in tst-mqueue5
      powerpc: Fix macro usage of htm builtins
      Fix nptl/tst-setuid3.c
      Cleanup ppc bits/ipc.h

Paul Eggert (8):
      Port the 0x7efe...feff pattern to GCC 6.
      Fix broken overflow check in posix_fallocate [BZ 18873]
      Consistency about byte vs character in string.texi
      Fix typo in strncat, wcsncat manual entries
      Split large string section; add truncation advice
      Update timezone code from tzcode 2015g.
      Fix doc quoting problems with Texinfo 5
      ChangeLogs: convert to utf-8

Paul Murphy (6):
      nptl: Add adapt_count parameter to lll_unlock_elision
      powerpc: Optimize lock elision for pthread_mutex_t
      powerpc: Fix usage of elision transient failure adapt param
      Shuffle includes in ldbl-128ibm/mpn2ldl.c
      powerpc: More elision improvements
      powerpc: Spinlock optimization and cleanup

Paul Pluzhnikov (19):
      Add #include <unistd.h> to libio/oldfileops.c for write.
      Fix BZ #17905
      Fix trailing space.
      In preparation for fixing BZ#16734, fix failure in misc/tst-error1-mem
      Fix BZ #18086 -- nice resets errno to 0.
      Fix BZ #16734 -- fopen calls mmap to allocate its buffer
      Fix BZ #18820 -- fmemopen may leak memory on failure.
      Regenerated sysdeps/x86_64/fpu/libm-test-ulps with AVX2.
      Fix BZ #18084 -- backtrace (..., 0) dumps core on x86.
      Filter out NULL entries.
      Fix BZ #18757.
      To fix BZ #18675, use __fstatvfs64 in __fpathconf.
      Fix BZ #18872 -- memory leak in printf_positional.
      Fix BZ #18985 -- out of range data to strftime() causes a segfault
      sysdeps/x86_64/fpu/libm-test-ulps: Regenerated on Haswell.
      Fix BZ #19012 -- iconv_open leaks memory on error path.
      stdio-common/tst-printf-bz18872.sh: Use attribute optimize instead of
      [BZ #19451]
      2016-01-20  Paul Pluzhnikov  <ppluzhnikov@google.com>

Petar Jovanovic (1):
      Fix dynamic linker issue with bind-now

Phil Blundell (1):
      ChangeLog: Fix incorrect email address

Rajalakshmi Srinivasaraghavan (3):
      powerpc: Handle worstcase behavior in strstr() for POWER7
      Call direct system calls for socket operations
      powerpc: Regenerate libm-test-ulps

Rasmus Villemoes (1):
      linux/getsysstats.c: use sysinfo() instead of parsing /proc/meminfo

Richard Henderson (2):
      longlong.h: Disable alpha umul_ppmm for old g++
      Update Alpha libm-test-ulps

Rob Wu (1):
      resolv: Reset defdname before use in __res_vinit [BZ #19369]

Roland McGrath (12):
      NaCl: Call __nacl_main in preference to main.
      Meaningless ChangeLog cleanup to trigger buildbot.
      Mark elf/tst-protected1[ab] as XFAIL.
      BZ#18921: Fix opendir inverted o_directory_works test.
      BZ#18921: Mark fixed in NEWS.
      NaCl: Do not install <sys/mtio.h>.
      Use HOST_NAME_MAX for MAXHOSTNAMELEN in <sys/param.h>.
      BZ#18872: Don't conditionalize build rules for test program.
      Fix some stub prototypes missing ... after K&R conversion
      NaCl: Use open_resource API for shared objects
      NaCl: Use allocate_code_data after dyncode_create
      NaCl: Fix unused variable errors in lowlevellock-futex.h macros.

Samuel Thibault (20):
      Fix gcrt0.o compilation
      Fix sysdeps/i386/fpu/s_scalbn.S build
      Fix rules generating headers in hurd/ and mach/
      Fix parallel build of before-compile targets.
      Fix typo
      Fix typo
      Really fix sysdeps/i386/fpu/s_scalbn.S build
      Fix vm_page_size visibility
      Add missing __mach_host_self_ symbol in Versions
      Add task_notify to mach_interface_list
      Make _hurd_raise_signal return errors
      Make _hurd_raise_signal directly return the error
      Remove unusued variable
      Fix RPC breakage when longjumping from signal handler
      Fix hurd build with hidden support
      Revert not defining NO_HIDDEN on hurd
      Do not add relro attribute to __libc_stack_end
      hurd: Initialize __libc_stack_end for hidden support
      hurd: Make mmap64 use vm_offset_t for overflow check
      Harmonize generic stdio-lock support with nptl

Siddhesh Poyarekar (12):
      Remove incorrect register mov in floorf/nearbyint on x86_64
      Drop unused first argument from arena_get2
      Don't use the main arena in retry path if it is corrupt
      benchtests: Mark output variables as used
      Remove redundant else clauses in s_sin.c
      Include s_sin.c in s_sincos.c
      benchtests: Add inputs from sin and cos to sincos
      benchtests: ffs and ffsll are string functions, not math
      Fix up ChangeLog
      Consolidate range reduction in sincos for x > 281474976710656
      Consolidate sin and cos code for 105414350 <|x|< 281474976710656
      Consolidate sincos computation for 2.426265 < |x| < 105414350

Stan Shebs (1):
      Disable uninitialized warning with GCC 4.8

Stefan Liebler (37):
      S390: Fix handling of DXC-byte in FPC-register.
      S390: Refactor ifunc implementations and enable ifunc-test-framework.
      S390: Add hwcaps value for vector facility.
      S390: Add new s390 platform.
      S390: configure check for vector instruction support in assembler.
      S390: Ifunc resolver macro for vector instructions.
      S390: Optimize strlen and wcslen.
      S390: Optimize strnlen and wcsnlen.
      S390: Optimize strcpy and wcscpy.
      S390: Optimize stpcpy and wcpcpy.
      S390: Optimize strncpy and wcsncpy.
      S390: Optimize stpncpy and wcpncpy.
      S390: Optimize strcat and wcscat.
      S390: Optimize strncat wcsncat.
      S390: Optimize strcmp and wcscmp.
      S390: Optimize strncmp and wcsncmp.
      S390: Optimize strchr and wcschr.
      S390: Optimize strchrnul and wcschrnul.
      S390: Optimize strrchr and wcsrchr.
      S390: Optimize strspn and wcsspn.
      S390: Optimize strpbrk and wcspbrk.
      S390: Optimize strcspn and wcscspn.
      S390: Optimize memchr, rawmemchr and wmemchr.
      S390: Optimize memccpy.
      S390: Optimize wmemset.
      S390: Optimize wmemcmp.
      S390: Optimize memrchr.
      S390: Optimize string, wcsmbs and memory functions.
      S390: Fix build error with gcc6 in utf8_utf16-z9.c.
      Adjust _Unwind_Word in unwind.h to version in libgcc.
      S390: Call direct system calls for socket operations.
      S390: Clean setjmp, longjmp, getcontext symbols.
      S390: Use __asm__ instead of asm.
      S/390: Do not raise inexact exception in lrint/lround. [BZ #19486]
      S390: Regenerate ULPs
      S390: Fix build error in iconvdata/bug-iconv11.c.
      S390: Fix build failure in test string/tst-endian.c with gcc 6.

Steve Ellcey (9):
      Fix undefined warning messages in GCC 6.
      Add unused attribute to declaration for mips16 builds.
      Add missing ChangeLog entry.
      Update timezone/Makefile to use -Wno-unused-variable
      Make performance improvement to MIPS memcpy for small copies.
      Fix indentation.
      Fix indentation.
      Fix indentation.
      Fix MIPS64 memcpy regression.

Szabolcs Nagy (4):
      Regenerate aarch64 libm-test-ulps
      [BZ #19129][ARM] Fix _dl_tlsdesc_resolve_hold to save r0
      [AArch64] Regenerate libm-test-ulps
      [ARM] add missing -funwind-tables to test case (bug 19529)

Thomas Schwinge (1):
      hurd: install correct number of send rights on fork

Torvald Riegel (5):
      Remove unused variable in math/atest-exp2.c.
      Do not violate mutex destruction requirements.
      New pthread_barrier algorithm to fulfill barrier destruction requirements.
      Fix pthread_barrier_init typo.
      nptl: Add first-line description for barrier tests.

Tulio Magno Quites Machado Filho (3):
      PowerPC: Fix a race condition when eliding a lock
      tst-backtrace4: fix a warning message
      powerpc: Enforce compiler barriers on hardware transactions

Vincent Bernat (2):
      time: in strptime(), make %z accept Z as a time zone [BZ #17886]
      time: in strptime(), make %z accept [+-]HH:MM tz [BZ #17887]

Wilco Dijkstra (17):
      Improve fesetenv performance by avoiding unnecessary FPSR/FPCR reads/writes.
      Improve feenableexcept performance - avoid an unnecessary FPCR read in case
      This patch improves strncpy performance by using strnlen/memcpy rather than a byte loop. Performance
      Improve memccpy performance by using memchr/memcpy/mempcpy rather than
      Improve performance of mempcpy by inlining and using memcpy. Enable
      Improve stpncpy performance by using __strnlen/memcpy/memset rather than a
      2015-08-24  Wilco Dijkstra  <wdijkstr@arm.com>
      2015-08-24  Wilco Dijkstra  <wdijkstr@arm.com>
      Add a new benchmark for isinf/isnan/isnormal/isfinite/fpclassify. The test uses 2 arrays with 1024 doubles, one with 99% finite FP numbers (10% zeroes, 10% negative) and 1% inf/NaN, the other with 50% inf, and 50% Nan.
      Add inlining of the C99 math functions isinf/isnan/signbit/isfinite/isnormal/fpclassify using GCC
      Use the GCC builtin functions for the non-inlined signbit implementations.
      Fix several build failures with GCC6 due to unused static variables.
      Since we now inline isinf, isnan and isfinite in math.h, replace uses of __isinf_ns(l/f)
      Cleanup a few cases where isinf is used to get the signbit to improve the readability and maintainability and allow inlining.
      Undo build error fixes to timezone/private.h, change makefile instead to
      Remove __signbit* from localplt.data as they are no longer called from within GLIBC.
      Enable _STRING_ARCH_unaligned on AArch64.

Zack Weinberg (4):
      Correct comments about the history of <regexp.h>
      stpncpy: fix size checking [BZ #18975]
      Desupport regexp.h (bug 18681)
      regexp.h: update Versions to match file usage [BZ #18681]

-----------------------------------------------------------------------
Comment 13 Michael Kerrisk 2020-05-23 10:44:27 UTC
Fix documented for man-pages-5.07

commit ab5c28f9423931435a1cf41a0b058459b2bce998 (HEAD -> master)
Author: Michael Kerrisk <mtk.manpages@gmail.com>
Date:   Sat May 23 12:20:59 2020 +0200

    scalb.3: These functions now correctly set errno for the EDOM and ERANGE cas
es
    
    Modify DESCRIPTION appropriately and add BUGS section.
    The fix was in glibc 2.20.
    
    See https://www.sourceware.org/bugzilla/show_bug.cgi?id=6803
    and https://www.sourceware.org/bugzilla/show_bug.cgi?id=6804
    
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>

diff --git a/man3/scalb.3 b/man3/scalb.3
index 2db0bd9ad..c685b68eb 100644
--- a/man3/scalb.3
+++ b/man3/scalb.3
@@ -150,34 +150,28 @@ The following errors can occur:
 Domain error: \fIx\fP is 0, and \fIexp\fP is positive infinity, \
 or \fIx\fP is positive infinity and \fIexp\fP is negative infinity \
 and the other argument is not a NaN
-.\" .I errno
-.\" is set to
-.\" .BR EDOM .
+.I errno
+is set to
+.BR EDOM .
 An invalid floating-point exception
 .RB ( FE_INVALID )
 is raised.
 .TP
 Range error, overflow
-.\" .I errno
-.\" is set to
-.\" .BR ERANGE .
+.I errno
+is set to
+.BR ERANGE .
 An overflow floating-point exception
 .RB ( FE_OVERFLOW )
 is raised.
 .TP
 Range error, underflow
-.\" .I errno
-.\" is set to
-.\" .BR ERANGE .
+.I errno
+is set to
+.BR ERANGE .
 An underflow floating-point exception
 .RB ( FE_UNDERFLOW )
 is raised.
-.PP
-These functions do not set
-.IR errno .
-.\" FIXME . Is it intentional that these functions do not set errno?
-.\" Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
-.\" Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6804
 .SH ATTRIBUTES
 For an explanation of the terms used in this section, see
 .BR attributes (7).
@@ -215,6 +209,13 @@ are unstandardized;
 is nevertheless present on several other systems
 .\" Looking at header files: scalbf() is present on the
 .\" BSDs, Tru64, HP-UX 11, Irix 6.5; scalbl() is on HP-UX 11 and Tru64.
+.SH BUGS
+Before glibc 2.20,
+.\" http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
+.\" http://sources.redhat.com/bugzilla/show_bug.cgi?id=6804
+these functions did not set
+.I errno
+for domain and range errors.
 .SH SEE ALSO
 .BR ldexp (3),
 .BR scalbln (3)
Comment 14 Michael Kerrisk 2020-05-26 09:20:23 UTC
Added a similar patch for scalbln(3) manual page.

commit 5b08d967e889c7bc403387755d7e74afb265aa9b (HEAD -> master)
Author: Michael Kerrisk <mtk.manpages@gmail.com>
Date:   Tue May 26 11:19:03 2020 +0200

    scalbln.3: These functions now correctly set errno for the ERANGE case
    
    Modify DESCRIPTION appropriately and add BUGS section.
    The fix was in glibc 2.20.
    
    See https://www.sourceware.org/bugzilla/show_bug.cgi?id=6803
    
    Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>

diff --git a/man3/scalbln.3 b/man3/scalbln.3
index 6c926dae5..7bf8d422b 100644
--- a/man3/scalbln.3
+++ b/man3/scalbln.3
@@ -139,17 +139,12 @@ An overflow floating-point exception
 is raised.
 .TP
 Range error, underflow
-.\" .I errno
-.\" is set to
-.\" .BR ERANGE .
+.I errno
+is set to
+.BR ERANGE .
 An underflow floating-point exception
 .RB ( FE_UNDERFLOW )
 is raised.
-.PP
-These functions do not set
-.IR errno .
-.\" FIXME . Is it intentional that these functions do not set errno?
-.\" Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
 .SH VERSIONS
 These functions first appeared in glibc in version 2.1.
 .SH ATTRIBUTES
@@ -188,6 +183,12 @@ equals 2 (which is usual), then
 .BR scalbn ()
 is equivalent to
 .BR ldexp (3).
+.SH BUGS
+Before glibc 2.20,
+.\" http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
+these functions did not set
+.I errno
+for range errors.
 .SH SEE ALSO
 .BR ldexp (3),
 .BR scalb (3)