platform/upstream/glibc.git
11 years agoAdd localedef --big-endian and --little-endian options.
Joseph Myers [Tue, 24 Sep 2013 22:07:47 +0000 (22:07 +0000)]
Add localedef --big-endian and --little-endian options.

11 years agoUpdate to canonical freemanuals.texi file.
Roland McGrath [Tue, 24 Sep 2013 21:06:56 +0000 (14:06 -0700)]
Update to canonical freemanuals.texi file.

11 years ago[AArch64] Support __mcount profiling.
Marcus Shawcroft [Tue, 24 Sep 2013 12:03:02 +0000 (13:03 +0100)]
[AArch64] Support __mcount profiling.

11 years ago[AArch64] Adding sigcontextinfo.h
Marcus Shawcroft [Tue, 24 Sep 2013 11:59:06 +0000 (12:59 +0100)]
[AArch64] Adding sigcontextinfo.h

11 years agoports/sysdeps/arm/nptl/tls.h: Remove TLS_INIT_TP_EXPENSIVE.
Will Newton [Mon, 23 Sep 2013 19:35:08 +0000 (20:35 +0100)]
ports/sysdeps/arm/nptl/tls.h: Remove TLS_INIT_TP_EXPENSIVE.

This define was removed from the rest of the tree eight years ago.

ports/ChangeLog.arm:

2013-09-24  Will Newton  <will.newton@linaro.org>

* ports/sysdeps/arm/nptl/tls.h (TLS_INIT_TP_EXPENSIVE): Remove
macro.

11 years agosysdeps/mach/hurd/i386/tls.h: Remove TLS_INIT_TP_EXPENSIVE.
Will Newton [Mon, 23 Sep 2013 19:29:38 +0000 (20:29 +0100)]
sysdeps/mach/hurd/i386/tls.h: Remove TLS_INIT_TP_EXPENSIVE.

This define was removed from the rest of the tree eight years ago.

ChangeLog:

2013-09-24  Will Newton  <will.newton@linaro.org>

* sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): Remove
macro.

11 years agoNew locale for cmn_TW
Wei-Lun Chao [Tue, 24 Sep 2013 02:36:14 +0000 (22:36 -0400)]
New locale for cmn_TW

11 years agoNew locale for hak_TW
Wei-Lun Chao [Tue, 24 Sep 2013 00:24:27 +0000 (20:24 -0400)]
New locale for hak_TW

11 years agoMake locale archive hash function architecture-independent.
Joseph Myers [Mon, 23 Sep 2013 23:03:34 +0000 (23:03 +0000)]
Make locale archive hash function architecture-independent.

11 years agoNew locale for lzh_TW
Wei-Lun Chao [Mon, 23 Sep 2013 22:51:59 +0000 (18:51 -0400)]
New locale for lzh_TW

11 years agoNew locale for nan_TW
Wei-Lun Chao [Mon, 23 Sep 2013 22:20:16 +0000 (18:20 -0400)]
New locale for nan_TW

11 years agomanual: Fix a typo in `POSIX Threads' section
Maciej W. Rozycki [Mon, 23 Sep 2013 20:13:47 +0000 (21:13 +0100)]
manual: Fix a typo in `POSIX Threads' section

11 years ago2013-09-23 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Mon, 23 Sep 2013 16:58:30 +0000 (09:58 -0700)]
2013-09-23  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/math_private.h (libc_feholdexcept_mips): New function.
(libc_feholdexcept): New macro.
(libc_feholdexceptf): New macro.
(libc_feholdexceptl): New macro.
(libc_fesetround_mips): New function.
(libc_fesetround): New macro.
(libc_fesetroundf): New macro.
(libc_fesetroundl): New macro.
(libc_feholdexcept_setround_mips): New function.
(libc_feholdexcept_setround): New macro.
(libc_feholdexcept_setroundf): New macro.
(libc_feholdexcept_setroundl): New macro.
(libc_fesetenv_mips): New function.
(libc_fesetenv): New macro.
(libc_fesetenvf): New macro.
(libc_fesetenvl): New macro.
(libc_feupdateenv_mips): New function.
(libc_feupdateenv): New macro.
(libc_feupdateenvf): New macro.
(libc_feupdateenvl): New macro.

11 years agoMIPS: bits/atomic.h: Fix comment typo
Maciej W. Rozycki [Mon, 23 Sep 2013 16:39:14 +0000 (17:39 +0100)]
MIPS: bits/atomic.h: Fix comment typo

11 years ago2013-09-23 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Mon, 23 Sep 2013 16:39:32 +0000 (09:39 -0700)]
2013-09-23  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/fpu/fegetround.c (fegetround): Use _FPU_RC_MASK.
* sysdeps/mips/fpu/fesetround.c (fesetround): Use _FPU_RC_MASK.

11 years ago2013-09-19 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Mon, 23 Sep 2013 16:34:15 +0000 (09:34 -0700)]
2013-09-19  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/fpu_control.h (_FPU_RC_MASK): New.

11 years ago2013-09-23 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Mon, 23 Sep 2013 16:29:58 +0000 (09:29 -0700)]
2013-09-23  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/fpu_control.h (comments): Add capitalization and
periods to match GNU standard.

11 years agoCheck for integer overflow in cache size computation in strcoll
Siddhesh Poyarekar [Mon, 23 Sep 2013 05:54:30 +0000 (11:24 +0530)]
Check for integer overflow in cache size computation in strcoll

strcoll is implemented using a cache for indices and weights of
collation sequences in the strings so that subsequent passes do not
have to search through collation data again.  For very large string
inputs, the cache size computation could overflow.  In such a case,
use the fallback function that does not cache indices and weights of
collation sequences.

Fixes CVE-2012-4412.

11 years agoFall back to non-cached sequence traversal and comparison on malloc fail
Siddhesh Poyarekar [Mon, 23 Sep 2013 05:50:02 +0000 (11:20 +0530)]
Fall back to non-cached sequence traversal and comparison on malloc fail

strcoll currently falls back to alloca if malloc fails, resulting in a
possible stack overflow.  This patch implements sequence traversal and
comparison without caching indices and rules.

Fixes CVE-2012-4424.

11 years agoBZ #15754: Fix test case for ARM.
Carlos O'Donell [Mon, 23 Sep 2013 05:44:38 +0000 (01:44 -0400)]
BZ #15754: Fix test case for ARM.

Statically built binaries use __pointer_chk_guard_local,
while dynamically built binaries use __pointer_chk_guard.
Provide the right definition depending on the test case
we are building.

11 years agoBZ #15754: CVE-2013-4788
Carlos O'Donell [Mon, 23 Sep 2013 04:52:09 +0000 (00:52 -0400)]
BZ #15754: CVE-2013-4788

The pointer guard used for pointer mangling was not initialized for
static applications resulting in the security feature being disabled.
The pointer guard is now correctly initialized to a random value for
static applications. Existing static applications need to be
recompiled to take advantage of the fix.

The test tst-ptrguard1-static and tst-ptrguard1 add regression
coverage to ensure the pointer guards are sufficiently random
and initialized to a default value.

11 years agoAdjust language-code fields of LC_ADDRESS.
Chris Leonard [Sun, 22 Sep 2013 23:18:05 +0000 (19:18 -0400)]
Adjust language-code fields of LC_ADDRESS.

11 years agoNew locale for ak_GH.
Chris Leonard [Sun, 22 Sep 2013 02:28:06 +0000 (22:28 -0400)]
New locale for ak_GH.

11 years agocorrect bug list in NEWS
Chris Leonard [Sun, 22 Sep 2013 01:15:22 +0000 (21:15 -0400)]
correct bug list in NEWS

11 years ago[BZ #15859] Fix memory leak in _dl_map_object_deps
Vinitha Vijayan [Sat, 21 Sep 2013 15:51:58 +0000 (17:51 +0200)]
[BZ #15859] Fix memory leak in _dl_map_object_deps

11 years agoMake __ffs hidden
Andreas Schwab [Fri, 20 Sep 2013 19:24:53 +0000 (21:24 +0200)]
Make __ffs hidden

11 years agoRemove trailing space.
Steve Ellcey [Fri, 20 Sep 2013 17:31:05 +0000 (10:31 -0700)]
Remove trailing space.

11 years ago2013-09-20 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Fri, 20 Sep 2013 17:29:51 +0000 (10:29 -0700)]
2013-09-20  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/memset.S: Change prefetching and add loop unrolling.
* sysdeps/mips/mips64/memset.S: Remove.

11 years ago2013-09-20 Steve Ellcey <sellcey@mips.com>
Steve Ellcey [Fri, 20 Sep 2013 17:29:25 +0000 (10:29 -0700)]
2013-09-20  Steve Ellcey  <sellcey@mips.com>

* sysdeps/mips/memset.S: Change prefetching and add loop unrolling.
* sysdeps/mips/mips64/memset.S: Remove.

11 years agoMention malloc probes in the NEWS file.
Alexandre Oliva [Fri, 20 Sep 2013 14:30:04 +0000 (11:30 -0300)]
Mention malloc probes in the NEWS file.

for ChangeLog

* NEWS: Mention malloc probes.

11 years agoAdd malloc probes for sbrk and heap resizing.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:56 +0000 (11:10 -0300)]
Add malloc probes for sbrk and heap resizing.

for ChangeLog

* malloc/arena.c (new_heap): New memory_heap_new probe.
(grow_heap): New memory_heap_more probe.
(shrink_heap): New memory_heap_less probe.
(heap_trim): New memory_heap_free probe.
* malloc/malloc.c (sysmalloc): New memory_sbrk_more probe.
(systrim): New memory_sbrk_less probe.
* manual/probes.texi: Document them.

11 years agoAdd catch-all alloc retry probe.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:56 +0000 (11:10 -0300)]
Add catch-all alloc retry probe.

for ChangeLog

* malloc/arena.c (arena_get_retry): Add memory_arena_retry probe.
* manual/probes.texi: Document it.

11 years agoAdd probes for malloc retries.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:55 +0000 (11:10 -0300)]
Add probes for malloc retries.

for ChangeLog

* malloc/malloc.c (__libc_malloc): Add memory_malloc_retry probe.
(__libc_realloc): Add memory_realloc_retry probe.
(__libc_memalign): Add memory_memalign_retry probe.
(__libc_valloc): Add memory_valloc_retry probe.
(__libc_pvalloc): Add memory_pvalloc_retry probe.
(__libc_calloc): Add memory_calloc_retry probe.
* manual/probes.texi: Document them.

11 years agoAdd probes for malloc arena changes.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:55 +0000 (11:10 -0300)]
Add probes for malloc arena changes.

for ChangeLog

* malloc/arena.c (get_free_list): Add probe
memory_arena_reuse_free_list.
(reused_arena) [PER_THREAD]: Add probes memory_arena_reuse_wait
and memory_arena_reuse.
(arena_get2) [!PER_THREAD]: Likewise.
* malloc/malloc.c (__libc_realloc) [!PER_THREAD]: Add probe
memory_arena_reuse_realloc.
* manual/probes.texi: Document them.

11 years agoAdd probes for all changes to malloc options.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:55 +0000 (11:10 -0300)]
Add probes for all changes to malloc options.

for ChangeLog

* malloc/malloc.c (__libc_free): Add
memory_mallopt_free_dyn_thresholds probe.
(__libc_mallopt): Add multiple memory_mallopt probes.
* manual/probes.texi: Document them.

11 years agoAdd first set of memory probes.
Alexandre Oliva [Fri, 20 Sep 2013 14:10:54 +0000 (11:10 -0300)]
Add first set of memory probes.

for ChangeLog

* malloc/malloc.c: Include stap-probe.h.
(__libc_mallopt): Add memory_mallopt probe.
* malloc/arena.c (_int_new_arena): Add memory_arena_new probe.
* manual/probes.texi: New.
* manual/Makefile (chapters): Add probes.
* manual/threads.texi: Set next node.

11 years agoCopy-edit NEWS and fixup ChangeLog entries.
Carlos O'Donell [Fri, 20 Sep 2013 05:25:09 +0000 (01:25 -0400)]
Copy-edit NEWS and fixup ChangeLog entries.

11 years agoUpdate Changelog and NEWS
Chris Leonard [Fri, 20 Sep 2013 04:32:58 +0000 (00:32 -0400)]
Update Changelog and NEWS

11 years agoUpdate iso-639.def
Chris Leonard [Fri, 20 Sep 2013 00:34:03 +0000 (20:34 -0400)]
Update iso-639.def

11 years agoConsolidate common code into macros
Siddhesh Poyarekar [Thu, 19 Sep 2013 15:04:45 +0000 (20:34 +0530)]
Consolidate common code into macros

Consolidated common Taylor series polynomials into macros in s_sin.c
to make it a bit cleaner.

11 years agoFix buffer overrun in strtod_l
Liubov Dmitrieva [Thu, 19 Sep 2013 12:51:13 +0000 (16:51 +0400)]
Fix buffer overrun in strtod_l

11 years agoAdd benchmark inputs for sincos
Siddhesh Poyarekar [Thu, 19 Sep 2013 11:25:27 +0000 (16:55 +0530)]
Add benchmark inputs for sincos

11 years agoNew test cases for sin and cos for multiple precision fallback
Siddhesh Poyarekar [Thu, 19 Sep 2013 11:24:23 +0000 (16:54 +0530)]
New test cases for sin and cos for multiple precision fallback

11 years agoConsolidate sin/cos table lookup code
Siddhesh Poyarekar [Thu, 19 Sep 2013 11:21:01 +0000 (16:51 +0530)]
Consolidate sin/cos table lookup code

11 years agoConsolidate sin/cos computation for large inputs
Siddhesh Poyarekar [Thu, 19 Sep 2013 11:15:27 +0000 (16:45 +0530)]
Consolidate sin/cos computation for large inputs

11 years agoRemove redundant goto lines
Siddhesh Poyarekar [Thu, 19 Sep 2013 11:13:53 +0000 (16:43 +0530)]
Remove redundant goto lines

11 years agoAdd BZ #15640 to resolved bug list in NEWS.
Maxim Kuvyrkov [Thu, 19 Sep 2013 07:55:50 +0000 (19:55 +1200)]
Add BZ #15640 to resolved bug list in NEWS.

11 years agoImprove atomic locking for ARM.
Maxim Kuvyrkov [Thu, 19 Sep 2013 06:50:17 +0000 (18:50 +1200)]
Improve atomic locking for ARM.

[BZ #15640]
* sysdeps/arm/bits/atomic.h (atomic_exchange_acq, atomic_exchange_rel)
(atomic_compare_and_exchange_bool_acq)
(atomic_compare_and_exchange_val_acq)
(atomic_compare_and_exchange_bool_rel)
(atomic_compare_and_exchange_val_rel): Use __atomic_exchange_n and
__atomic_compare_exchange_n builtins when GCC supports them.

11 years agoMIPS: IEEE 754-2008 NaN encoding support
Maciej W. Rozycki [Wed, 18 Sep 2013 20:04:27 +0000 (21:04 +0100)]
MIPS: IEEE 754-2008 NaN encoding support

It has been a long practice for software using IEEE 754 floating-point
arithmetic run on MIPS processors to use an encoding of Not-a-Number
(NaN) data different to one used by software run on other processors.
And as of IEEE 754-2008 revision [1] this encoding does not follow one
recommended in the standard, as specified in section 6.2.1, where it
is stated that quiet NaNs should have the first bit (d1) of their
significand set to 1 while signalling NaNs should have that bit set to
0, but MIPS software interprets the two bits in the opposite manner.

As from revision 3.50 [2][3] the MIPS Architecture provides for
processors that support the IEEE 754-2008 preferred NaN encoding format.
As the two formats (further referred to as "legacy NaN" and "2008 NaN")
are incompatible to each other, tools have to provide support for the
two formats to help people avoid using incompatible binary modules.

The change is comprised of two functional groups of features, both of
which are required for correct support.

1. Dynamic linker support.

   To enforce the NaN encoding requirement in dynamic linking a new ELF
   file header flag has been defined.  This flag is set for 2008-NaN
   shared modules and executables and clear for legacy-NaN ones.  The
   dynamic linker silently ignores any incompatible modules it
   encounters in dependency processing.

   To avoid unnecessary processing of incompatible modules in the
   presence of a shared module cache, a set of new cache flags has been
   defined to mark 2008-NaN modules for the three ABIs supported.
   Changes to sysdeps/unix/sysv/linux/mips/readelflib.c have been made
   following an earlier code quality suggestion made here:

   http://sourceware.org/ml/libc-ports/2009-03/msg00036.html

   and are therefore a little bit more extensive than the minimum
   required.

   Finally a new name has been defined for the dynamic linker so that
   2008-NaN and legacy-NaN binaries can coexist on a single system that
   supports dual-mode operation and that a legacy dynamic linker that
   does not support verifying the 2008-NaN ELF file header flag is not
   chosen to interpret a 2008-NaN binary by accident.

2. Floating environment support.

   IEEE 754-2008 features are controlled in the Floating-Point Control
   and Status (FCSR) register and updates are needed to floating
   environment support so that the 2008-NaN flag is set correctly and
   the kernel default, inferred from the 2008-NaN ELF file header flag
   at the time an executable is loaded, respected.

As the NaN encoding format is a property of GCC code generation that is
both a user-selected GCC configuration default and can be overridden
with GCC options, code that needs to know what NaN encoding standard it
has been configured for checks for the __mips_nan2008 macro that is
defined internally by GCC whenever the 2008-NaN mode has been selected.
This mode is determined at the glibc configuration time and therefore a
few consistency checks have been added to catch cases where compilation
flags have been overridden by the user.

The 2008 NaN set of features relies on kernel support as the in-kernel
floating-point emulator needs to be aware of the NaN encoding used even
on hard-float processors and configure the FPU context according to the
value of the 2008 NaN ELF file header flag of the executable being
started.  As at this time work on kernel support is still in progress
and the relevant changes have not made their way yet to linux.org master
repository.

Therefore the minimum version supported has been artificially set to
10.0.0 so that 2008-NaN code is not accidentally run on a Linux kernel
that does not suppport it.  It is anticipated that the version is
adjusted later on to the actual initial linux.org kernel version to
support this feature.  Legacy NaN encoding support is unaffected, older
kernel versions remain supported.

[1] "IEEE Standard for Floating-Point Arithmetic", IEEE Computer
    Society, IEEE Std 754-2008, 29 August 2008

[2] "MIPS Architecture For Programmers, Volume I-A: Introduction to the
    MIPS32 Architecture", MIPS Technologies, Inc., Document Number:
    MD00082, Revision 3.50, September 20, 2012

[3] "MIPS Architecture For Programmers, Volume I-A: Introduction to the
    MIPS64 Architecture", MIPS Technologies, Inc., Document Number:
    MD00083, Revision 3.50, September 20, 2012

11 years agoe500 port: fpu_control.h.
Joseph Myers [Wed, 18 Sep 2013 14:47:49 +0000 (14:47 +0000)]
e500 port: fpu_control.h.

11 years agoe500 port: setjmp/longjmp.
Joseph Myers [Wed, 18 Sep 2013 14:46:57 +0000 (14:46 +0000)]
e500 port: setjmp/longjmp.

11 years agoDon't force -msoft-float for powerpc --without-fp.
Joseph Myers [Wed, 18 Sep 2013 14:44:34 +0000 (14:44 +0000)]
Don't force -msoft-float for powerpc --without-fp.

11 years agoFormat sincos32.c
Siddhesh Poyarekar [Wed, 18 Sep 2013 07:31:34 +0000 (13:01 +0530)]
Format sincos32.c

11 years agoFix powerpc fpu_control.h namespace and parenthesis issues (bug 15966).
Joseph Myers [Tue, 17 Sep 2013 21:28:19 +0000 (21:28 +0000)]
Fix powerpc fpu_control.h namespace and parenthesis issues (bug 15966).

11 years agoARM: Improve armv7 memcpy performance.
Will Newton [Wed, 7 Aug 2013 13:15:52 +0000 (14:15 +0100)]
ARM: Improve armv7 memcpy performance.

Only enter the aligned copy loop with buffers that can be 8-byte
aligned. This improves performance slightly on Cortex-A9 and
Cortex-A15 cores for large copies with buffers that are 4-byte
aligned but not 8-byte aligned.

ports/ChangeLog.arm:

2013-09-16  Will Newton  <will.newton@linaro.org>

* sysdeps/arm/armv7/multiarch/memcpy_impl.S: Tighten check
on entry to aligned copy loop to improve performance.

11 years agoAdjust language-code fields of LC_ADDRESS.
Chris Leonard [Mon, 16 Sep 2013 00:02:32 +0000 (20:02 -0400)]
Adjust language-code fields of LC_ADDRESS.

11 years agoAdd country_car field to LC_ADDRESS.
Chris Leonard [Sun, 15 Sep 2013 19:06:27 +0000 (15:06 -0400)]
Add country_car field to LC_ADDRESS.

11 years agoFix some types in localedef.
Richard Sandiford [Fri, 13 Sep 2013 23:31:10 +0000 (23:31 +0000)]
Fix some types in localedef.

11 years agoAdd CVE-2013-4332 to NEWS.
Will Newton [Fri, 13 Sep 2013 08:26:02 +0000 (09:26 +0100)]
Add CVE-2013-4332 to NEWS.

11 years agosunrpc/rpc/types.h: fix OS X and FreeBSD build problems
Jia Liu [Fri, 6 Sep 2013 16:01:08 +0000 (00:01 +0800)]
sunrpc/rpc/types.h: fix OS X and FreeBSD build problems

When I build arm-linux-gcc on OS X, I find glibc will get a build error
in sunrpc/rpc/types.h, so I add __APPLE_CC__ to make OS X build OK.
For FreeBSD, Add __FreeBSD__ to make it build OK, too.

URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00155.html
URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00217.html
URL: http://sourceware.org/ml/libc-alpha/2013-09/msg00240.html
Signed-off-by: Jia Liu <proljc@gmail.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
11 years agoFaster strchr implementation.
Ondřej Bílka [Wed, 11 Sep 2013 15:07:38 +0000 (17:07 +0200)]
Faster strchr implementation.

11 years agobenchtests: Rename argument to TIMING_INIT macro.
Will Newton [Wed, 11 Sep 2013 12:07:33 +0000 (13:07 +0100)]
benchtests: Rename argument to TIMING_INIT macro.

The TIMING_INIT macro currently sets the number of loop iterations
to 1000, which limits usefulness. Make the argument a clock
resolution value and multiply by 1000 in bench-skeleton.c instead
to allow easier reuse.

ChangeLog:

2013-09-11  Will Newton  <will.newton@linaro.org>

* benchtests/bench-timing.h (TIMING_INIT): Rename ITERS
parameter to RES. Remove hardcoded 1000 value.
* benchtests/bench-skeleton.c (main): Pass RES parameter
to TIMING_INIT and multiply result by 1000.

11 years agoMention closing 15855, 15856 and 15857 in NEWS.
Will Newton [Wed, 11 Sep 2013 14:12:41 +0000 (15:12 +0100)]
Mention closing 15855, 15856 and 15857 in NEWS.

11 years agoUpdate powerpc-fpu ULPs.
Adhemerval Zanella [Wed, 11 Sep 2013 12:38:57 +0000 (07:38 -0500)]
Update powerpc-fpu ULPs.

11 years agoAdd O_TMPFILE to <fcntl.h>
Andreas Schwab [Wed, 11 Sep 2013 09:15:45 +0000 (11:15 +0200)]
Add O_TMPFILE to <fcntl.h>

11 years agomalloc: Check for integer overflow in memalign.
Will Newton [Fri, 16 Aug 2013 11:54:29 +0000 (12:54 +0100)]
malloc: Check for integer overflow in memalign.

A large bytes parameter to memalign could cause an integer overflow
and corrupt allocator internals. Check the overflow does not occur
before continuing with the allocation.

ChangeLog:

2013-09-11  Will Newton  <will.newton@linaro.org>

[BZ #15857]
* malloc/malloc.c (__libc_memalign): Check the value of bytes
does not overflow.

11 years agomalloc: Check for integer overflow in valloc.
Will Newton [Fri, 16 Aug 2013 10:59:37 +0000 (11:59 +0100)]
malloc: Check for integer overflow in valloc.

A large bytes parameter to valloc could cause an integer overflow
and corrupt allocator internals. Check the overflow does not occur
before continuing with the allocation.

ChangeLog:

2013-09-11  Will Newton  <will.newton@linaro.org>

[BZ #15856]
* malloc/malloc.c (__libc_valloc): Check the value of bytes
does not overflow.

11 years agomalloc: Check for integer overflow in pvalloc.
Will Newton [Mon, 12 Aug 2013 14:08:02 +0000 (15:08 +0100)]
malloc: Check for integer overflow in pvalloc.

A large bytes parameter to pvalloc could cause an integer overflow
and corrupt allocator internals. Check the overflow does not occur
before continuing with the allocation.

ChangeLog:

2013-09-11  Will Newton  <will.newton@linaro.org>

[BZ #15855]
* malloc/malloc.c (__libc_pvalloc): Check the value of bytes
does not overflow.

11 years agoRemove DO_NOT_USE_THIS conditionals.
Ondřej Bílka [Tue, 10 Sep 2013 17:14:51 +0000 (19:14 +0200)]
Remove DO_NOT_USE_THIS conditionals.

11 years agoClarify documentation cross-reference
Allan McRae [Tue, 10 Sep 2013 04:12:10 +0000 (14:12 +1000)]
Clarify documentation cross-reference

The end of the "Parsing of Floats" subsection currently reads:

   The GNU C Library also provides '_l' versions of these functions,
which take an additional argument, the locale to use in conversion.
*Note Parsing of Integers::.

Split the final note as it is unrelated to the above comment and
reference it with "See also" instead.

11 years agoUpdate pt_chown sections of the manual
Allan McRae [Tue, 10 Sep 2013 04:09:27 +0000 (14:09 +1000)]
Update pt_chown sections of the manual

The pt-chown binary is discussed in the "Running make install" section
without clarification of the needed configure option.  Clarify this
and simplfy the discription which is already covered in the "Configuring
and compiling" section.

11 years agoFix static-binary lazy FPU context allocation
Maciej W. Rozycki [Mon, 9 Sep 2013 21:36:57 +0000 (22:36 +0100)]
Fix static-binary lazy FPU context allocation

Long ago static startup did not parse the auxiliary vector and therefore
could not get at any `AT_FPUCW' tag to check whether upon FPU context
allocation the kernel would use a FPU control word setting different to
that provided by the `__fpu_control' variable.  Static startup therefore
always initialized the FPU control word, forcing immediate FPU context
allocation even for binaries that otherwise never used the FPU.

As from GIT commit f8f900ecb9096ec47f5b7bb7626e29223c69061a static
startup supports parsing the auxiliary vector, so now it can avoid
explicit initialization of the FPU control word, just as can dynamic
startup, in the usual case where the setting written to the FPU control
word would be the same as the kernel uses.  This defers FPU context
allocation until the binary itself actually pokes at the FPU.

Note that the `AT_FPUCW' tag is usually absent from the auxiliary vector
in which case _FPU_DEFAULT is assumed to be the kernel default.

11 years agoFix typo in strcoll example
Allan McRae [Mon, 9 Sep 2013 12:54:07 +0000 (22:54 +1000)]
Fix typo in strcoll example

11 years agoFix memory leak in stdlib/isomac.c
Allan McRae [Mon, 9 Sep 2013 12:52:58 +0000 (22:52 +1000)]
Fix memory leak in stdlib/isomac.c

11 years agoFix memory leaks in libio on allocation failure
Allan McRae [Mon, 9 Sep 2013 12:50:41 +0000 (22:50 +1000)]
Fix memory leaks in libio on allocation failure

11 years agoFix nesting of ifdefs in netgroupcache.c
Allan McRae [Mon, 9 Sep 2013 10:23:35 +0000 (20:23 +1000)]
Fix nesting of ifdefs in netgroupcache.c

Fixes unclosed '{' if HAVE_SENDFILE is defined (BZ #15895).

11 years agomalloc: Add realloc test.
Will Newton [Wed, 7 Aug 2013 18:56:21 +0000 (19:56 +0100)]
malloc: Add realloc test.

The current tests don't test the functionality of realloc in detail.
Add a new test for realloc that exercises some of the corner cases
that are not otherwise tested.

ChangeLog:

2013-09-09  Will Newton  <will.newton@linaro.org>

* malloc/Makefile: Add tst-realloc to tests.
* malloc/tst-realloc.c: New file.

11 years agoUpdate to latest versions of GPL-2.0 and LGPL-2.1
Allan McRae [Mon, 9 Sep 2013 02:51:29 +0000 (12:51 +1000)]
Update to latest versions of GPL-2.0 and LGPL-2.1

Pull copies of these files directly from the GNU website:
  http://www.gnu.org/licenses/gpl-2.0.txt
  http://www.gnu.org/licenses/lgpl-2.1.txt

Fixes the address of the Free Software Foundation (BZ #15844). Also
includes some minor formatting changes and corrects references to
the GNU "Library" General Public License.

11 years agoMention --disable-versioning removal in NEWS.
Joseph Myers [Sat, 7 Sep 2013 15:58:42 +0000 (15:58 +0000)]
Mention --disable-versioning removal in NEWS.

11 years agoUpdate Chinese (traditional) translations.
David S. Miller [Fri, 6 Sep 2013 19:25:54 +0000 (15:25 -0400)]
Update Chinese (traditional) translations.

* po/zh_TW.po: Update Chinese (traditional) translation from
translation project.

11 years agoMake localedef output generation use more logical interfaces.
Richard Sandiford [Fri, 6 Sep 2013 17:20:45 +0000 (17:20 +0000)]
Make localedef output generation use more logical interfaces.

11 years agoFix trailing whitespace
Chris Leonard [Fri, 6 Sep 2013 15:55:30 +0000 (11:55 -0400)]
Fix trailing whitespace

11 years agoChangeLog entry for Deduplicate country_car.
Chris Leonard [Fri, 6 Sep 2013 15:47:05 +0000 (11:47 -0400)]
ChangeLog entry for Deduplicate country_car.

11 years ago Deduplicate country_car.
Chris Leonard [Fri, 6 Sep 2013 15:31:02 +0000 (11:31 -0400)]
 Deduplicate country_car.

11 years agobenchtests: Add memrchr benchmark
Adhemerval Zanella [Thu, 29 Aug 2013 18:38:51 +0000 (15:38 -0300)]
benchtests: Add memrchr benchmark

11 years agobenchtests/Makefile: Run benchmark for memcpy.
Will Newton [Wed, 4 Sep 2013 08:11:58 +0000 (09:11 +0100)]
benchtests/Makefile: Run benchmark for memcpy.

The benchmark for memcpy got disabled accidentally. Re-enable it.

ChangeLog:

2013-09-06   Will Newton  <will.newton@linaro.org>

* benchtests/Makefile (string-bench): Add memcpy.

11 years agoCoordinate IPv6 definitions for Linux and glibc
Carlos O'Donell [Fri, 6 Sep 2013 05:02:30 +0000 (01:02 -0400)]
Coordinate IPv6 definitions for Linux and glibc

This change synchronizes the glibc headers with the Linux kernel
headers and arranges to coordinate the definition of structures
already defined the Linux kernel UAPI headers.

It is now safe to include glibc's netinet/in.h or Linux's linux/in6.h
in any order in a userspace application and you will get the same
ABI. The ABI is guaranteed by UAPI and glibc.

11 years agoPowerPC: fix POWER7 memrchr for some large inputs
Adhemerval Zanella [Thu, 5 Sep 2013 14:32:56 +0000 (09:32 -0500)]
PowerPC: fix POWER7 memrchr for some large inputs

11 years agoAdd memrchr testcase
Adhemerval Zanella [Thu, 29 Aug 2013 18:28:00 +0000 (15:28 -0300)]
Add memrchr testcase

11 years agotst-fanotify: skip when we get back EPERM
Mike Frysinger [Thu, 5 Sep 2013 07:02:46 +0000 (03:02 -0400)]
tst-fanotify: skip when we get back EPERM

Since fanotify_init requires CAP_SYS_ADMIN in order to work (which usually
means running as root), we need to handle that error case too.

Reported-by: Andreas Jaeger <aj@suse.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
11 years agoDefine MMAP2_PAGE_SHIFT to -1 for m68k.
Joseph Myers [Wed, 4 Sep 2013 20:50:20 +0000 (20:50 +0000)]
Define MMAP2_PAGE_SHIFT to -1 for m68k.

11 years agoconformtest: Fix namespace testing.
Joseph Myers [Wed, 4 Sep 2013 20:47:21 +0000 (20:47 +0000)]
conformtest: Fix namespace testing.

11 years agoUpdate iso-1427.def and related occurrences.
Chris Leonard [Wed, 4 Sep 2013 15:45:05 +0000 (11:45 -0400)]
Update iso-1427.def and related occurrences.

11 years agoUpdate iso-1427.def and related occurrences.
Chris Leonard [Wed, 4 Sep 2013 15:42:53 +0000 (11:42 -0400)]
Update iso-1427.def and related occurrences.

11 years agoRemove --disable-versioning.
Joseph Myers [Wed, 4 Sep 2013 15:25:42 +0000 (15:25 +0000)]
Remove --disable-versioning.

11 years agobenchtests: Switch string benchmarks to use bench-timing.h.
Will Newton [Mon, 2 Sep 2013 13:13:50 +0000 (14:13 +0100)]
benchtests: Switch string benchmarks to use bench-timing.h.

Switch the string benchmarks to using bench-timing.h instead
of hp-timing.h directly. This allows the string benchmarks to
be run usefully on architectures such as ARM that do not have
support for hp-timing.h.

In order to do this the tests have been changed from timing each
individual call and picking the lowest execution time recorded to
timing a number of calls and taking the mean execution time.

ChangeLog:

2013-09-04   Will Newton  <will.newton@linaro.org>

* benchtests/bench-timing.h (TIMING_PRINT_MEAN): New macro.
* benchtests/bench-string.h: Include bench-timing.h instead
of including hp-timing.h directly. (INNER_LOOP_ITERS): New
define. (HP_TIMING_BEST): Delete macro. (test_init): Remove
call to HP_TIMING_DIFF_INIT.
* benchtests/bench-memccpy.c: Use bench-timing.h macros
instead of hp-timing.h macros.
* benchtests/bench-memchr.c: Likewise.
* benchtests/bench-memcmp.c: Likewise.
* benchtests/bench-memcpy.c: Likewise.
* benchtests/bench-memmem.c: Likewise.
* benchtests/bench-memmove.c: Likewise.
* benchtests/bench-memset.c: Likewise.
* benchtests/bench-rawmemchr.c: Likewise.
* benchtests/bench-strcasecmp.c: Likewise.
* benchtests/bench-strcasestr.c: Likewise.
* benchtests/bench-strcat.c: Likewise.
* benchtests/bench-strchr.c: Likewise.
* benchtests/bench-strcmp.c: Likewise.
* benchtests/bench-strcpy.c: Likewise.
* benchtests/bench-strcpy_chk.c: Likewise.
* benchtests/bench-strlen.c: Likewise.
* benchtests/bench-strncasecmp.c: Likewise.
* benchtests/bench-strncat.c: Likewise.
* benchtests/bench-strncmp.c: Likewise.
* benchtests/bench-strncpy.c: Likewise.
* benchtests/bench-strnlen.c: Likewise.
* benchtests/bench-strpbrk.c: Likewise.
* benchtests/bench-strrchr.c: Likewise.
* benchtests/bench-strspn.c: Likewise.
* benchtests/bench-strstr.c: Likewise.

11 years agobenchtests/Makefile: Use LDLIBS instead of LDFLAGS.
Will Newton [Mon, 2 Sep 2013 13:00:45 +0000 (14:00 +0100)]
benchtests/Makefile: Use LDLIBS instead of LDFLAGS.

LDFLAGS puts the library too early in the command line if --as-needed
is being used. Use LDLIBS instead.

ChangeLog:

2013-09-04  Will Newton  <will.newton@linaro.org>

* benchtests/Makefile: Use LDLIBS instead of LDFLAGS.

11 years agoAdd country_car field to LC_ADDRESS
cjl [Wed, 4 Sep 2013 14:26:16 +0000 (10:26 -0400)]
Add country_car field to LC_ADDRESS

11 years agoAdd country_car field to LC_ADDRESS
cjl [Wed, 4 Sep 2013 14:23:58 +0000 (10:23 -0400)]
Add country_car field to LC_ADDRESS

11 years agoAdd country_car field to LC_ADDRESS
cjl [Wed, 4 Sep 2013 13:20:48 +0000 (09:20 -0400)]
Add country_car field to LC_ADDRESS