glibc:hjl/pr18696

Last commit made on 2015-07-20
Get this branch:
git clone -b hjl/pr18696 https://git.launchpad.net/glibc

Branch merges

Branch information

Name:
hjl/pr18696
Repository:
lp:glibc

Recent commits

341681a... by "H.J. Lu" <email address hidden>

Add si_addr_bnd to _sigfault in x86 struct siginfo

X86 struct siginfo in kernel 3.19 has been changed by

commit ee1b58d36aa1b5a79eaba11f5c3633c88231da83
Author: Qiaowei Ren <email address hidden>
Date: Fri Nov 14 07:18:19 2014 -0800

    mpx: Extend siginfo structure to include bound violation information

    This patch adds new fields about bound violation into siginfo
    structure. si_lower and si_upper are respectively lower bound
    and upper bound when bound violation is caused.

This patch updates x86 struct siginfo to enable GDB with MPX support.

 [BZ #18696]
 * sysdeps/unix/sysv/linux/x86/bits/siginfo.h (_sigfault): Add
 si_addr_bnd.
 (si_lower): New.
 (si_upper): Likewise.

d87630e... by DaveM

Regenerate SPARC ULPs.

 * sysdeps/sparc/fpu/libm-test-ulps: Regenerated.

787813b... by Adhemerval Zanella <email address hidden>

libio: Fix fmemopen 'w' mode with provided buffer

If 'w' mode is used with a provided buffer the fmemopen will try to find
the first null byte to set as maximum internal stream size. It should be
done only for append mode ('a').

Kudos for Stefan Liebler for finding this error on s390-32.

 * libio/fmemopen.c (__fmemopen): Fix 'w' openmode with provided
 buffer.
 * stdio-common/tst-fmemopen2.c (do_test_with_buffer): Fix typo and
 fail output information.

b42f8ca... by Rajalakshmi Srinivasargahvan

powerpc: strstr optimization

This patch optimizes strstr function for power >= 7 systems. Performance
gain is obtained using aligned memory access and usage of cmpb
instruction for quicker comparison. The average improvement of this
optimization is ~40%. Tested on ppc64 and ppc64le.

2015-07-16 Rajalakshmi Srinivasaraghavan <email address hidden>

 * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strstr().
 * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Likewise.
 * sysdeps/powerpc/powerpc64/power7/strstr.S: New File.
 * sysdeps/powerpc/powerpc64/multiarch/strstr-power7.S: New File.
 * sysdeps/powerpc/powerpc64/multiarch/strstr-ppc64.c: New File.
 * sysdeps/powerpc/powerpc64/multiarch/strstr.c: New File.

6b96d6d... by Mike Frysinger

hppa/ia64: _dl_unmap: make it hidden

This symbol is only used by DL_UNMAP which in turn is only used by
_dl_close_worker in dl-close.c, and _dl_close_worker itself is marked
hidden as it is only used by the ldso. That means _dl_unmap should
be marked hidden. Without this, the elf/check-localplt test fails.

2a6ad81... by Mike Frysinger

hppa/ia64: _dl_symbol_address: add PLT bypass for rtld

This symbol is defined in the ldso, and is used both there and libc.so.
There is no hidden symbol for it though which leads to relocations in
the ldso and the elf/check-localplt test failing. Add a hidden def for
rtld to fix all of that.

This function/file is only used by hppa & ia64, so no testing is needed
for other arches.

e591758... by Siddhesh Poyarekar <email address hidden>

Add comment to clarify how the test can fail

9ceb5f6... by Siddhesh Poyarekar <email address hidden>

Whitespace fixup in cxa_thread_atexit_impl.c

b632bdd... by Siddhesh Poyarekar <email address hidden>

Set NODELETE flag when opening already open objects with RTLD_NODELETE

The DF_1_NODELETE flag is set too late when opening a DSO, due to
which, if a DSO is already open, subsequently opening it with
RTLD_NODELETE fails to set the DF_1_NODELETE flag. This patch fixes
this by setting the flag immediately after bumping the opencount.

Verified on x86_64.

 [BZ #18676]
 * elf/tst-nodelete-opened.c: New test case.
 * elf/tst-nodelete-opened-lib.c: New test case module.
 * elf/Makefile (tests, modules-names): Use them.
 * elf/dl-open.c (dl_open_worker): Set DF_1_NODELETE flag
 early.

c59f721... by DaveM

Fix sparc build.

 * sysdeps/sparc/nptl/pthread_barrier_init.c: Include
 futex-intenal.h
 * sysdeps/sparc/sparc32/sparcv9/Makefile (nscd): Add cpu_relax.
 * sysdeps/sparc/sparc64/Makefile: Likewise.
 * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h (atomic_spin_nop):
 Remove space from macro define.
 * sysdeps/sparc/sparc64/bits/atomic.h (atomic_spin_nop): Likewise.