[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commits] r14560 - in /fsf/trunk/libc: ./ elf/ nptl/ sysdeps/i386/i686/multiarch/
- To: commits@xxxxxxxxxx
- Subject: [commits] r14560 - in /fsf/trunk/libc: ./ elf/ nptl/ sysdeps/i386/i686/multiarch/
- From: eglibc@xxxxxxxxxx
- Date: Fri, 15 Jul 2011 07:02:11 -0000
Author: eglibc
Date: Fri Jul 15 00:02:09 2011
New Revision: 14560
Log:
Import glibc-mainline for 2011-07-15
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/Makefile
fsf/trunk/libc/configure
fsf/trunk/libc/configure.in
fsf/trunk/libc/elf/Makefile
fsf/trunk/libc/nptl/ChangeLog
fsf/trunk/libc/nptl/allocatestack.c
fsf/trunk/libc/sysdeps/i386/i686/multiarch/strstr-c.c
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Fri Jul 15 00:02:09 2011
@@ -1,3 +1,16 @@
+2011-07-14 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * Makefile ($(common-objpfx)linkobj/libc.so): Use $(shlib-lds) instead
+ of $(common-objpfx)shlib.lds.
+ * elf/Makefile ($(objpfx)sotruss-lib.so): Likewise.
+
+ * sysdeps/i386/i686/multiarch/strstr-c.c (libc_hidden_builtin_def):
+ Conditionalize redefinition on [SHARED && DO_VERSIONING && !NO_HIDDEN].
+
+ * configure.in (-z relro check): Adjust test code to add a large
+ writable data section after it.
+ * configure: Regenerated.
+
2011-07-11 Roland McGrath <roland@xxxxxxxxxxxxx>
* configure.in (-z relro check): Fix test code to make the variable
Modified: fsf/trunk/libc/Makefile
==============================================================================
--- fsf/trunk/libc/Makefile (original)
+++ fsf/trunk/libc/Makefile Fri Jul 15 00:02:09 2011
@@ -143,7 +143,7 @@
$(elfobjdir)/sofini.os \
$(elfobjdir)/interp.os \
$(elfobjdir)/ld.so \
- $(common-objpfx)shlib.lds
+ $(shlib-lds)
$(build-shlib)
$(common-objpfx)linkobj/libc_pic.a: $(common-objpfx)libc_pic.a \
Modified: fsf/trunk/libc/configure
==============================================================================
--- fsf/trunk/libc/configure (original)
+++ fsf/trunk/libc/configure Fri Jul 15 00:02:09 2011
@@ -6404,7 +6404,14 @@
int _start (void) { return 42; }
extern void _exit (int);
+/* Since these pointers are const, they should go in rodata.
+ Since they refer to functions that have to be resolved by
+ dynamic linking, they should instead go in RELRO data. */
const void *const relro[] = { &_start, &_exit, 0 };
+/* GNU ld fails to produce RELRO data when it's very small and there is no
+ normal writable data following it, or if only uninitialized (.bss) data
+ follows it, or only very small writable data. */
+int data[0x10000] = { 1, };
_ACEOF
cat > conftest.awk <<\EOF
Modified: fsf/trunk/libc/configure.in
==============================================================================
--- fsf/trunk/libc/configure.in (original)
+++ fsf/trunk/libc/configure.in Fri Jul 15 00:02:09 2011
@@ -1607,7 +1607,14 @@
AC_LANG_CONFTEST([AC_LANG_SOURCE([[
int _start (void) { return 42; }
extern void _exit (int);
+/* Since these pointers are const, they should go in rodata.
+ Since they refer to functions that have to be resolved by
+ dynamic linking, they should instead go in RELRO data. */
const void *const relro[] = { &_start, &_exit, 0 };
+/* GNU ld fails to produce RELRO data when it's very small and there is no
+ normal writable data following it, or if only uninitialized (.bss) data
+ follows it, or only very small writable data. */
+int data[0x10000] = { 1, };
]])])
cat > conftest.awk <<\EOF
BEGIN {
Modified: fsf/trunk/libc/elf/Makefile
==============================================================================
--- fsf/trunk/libc/elf/Makefile (original)
+++ fsf/trunk/libc/elf/Makefile Fri Jul 15 00:02:09 2011
@@ -178,7 +178,7 @@
install-bin-script += sotruss
generated += sotruss
CPPFLAGS-sotruss-lib = -DNOT_IN_libc
-$(objpfx)sotruss-lib.so: $(objpfx)sotruss-lib.os $(common-objpfx)shlib.lds
+$(objpfx)sotruss-lib.so: $(objpfx)sotruss-lib.os
$(build-module-asneeded)
$(objpfx)sotruss-lib.so: $(common-objpfx)libc.so $(objpfx)ld.so \
$(common-objpfx)libc_nonshared.a
@@ -354,6 +354,8 @@
# Command to link into a larger single relocatable object.
reloc-link = $(LINK.o) -nostdlib -nostartfiles -r
+
+$(objpfx)sotruss-lib.so: $(shlib-lds)
$(objpfx)dl-allobjs.os: $(all-rtld-routines:%=$(objpfx)%.os)
$(reloc-link) -o $@ $^
Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Fri Jul 15 00:02:09 2011
@@ -1,3 +1,8 @@
+2011-07-14 Roland McGrath <roland@xxxxxxxxxxxxx>
+
+ * allocatestack.c (__reclaim_stacks): Use uintptr_t cast rather than
+ UINTMAX_C.
+
2011-06-30 Ulrich Drepper <drepper@xxxxxxxxx>
* nptl-init.c (__nptl_set_robust): New function.
Modified: fsf/trunk/libc/nptl/allocatestack.c
==============================================================================
--- fsf/trunk/libc/nptl/allocatestack.c (original)
+++ fsf/trunk/libc/nptl/allocatestack.c Fri Jul 15 00:02:09 2011
@@ -824,7 +824,7 @@
if (in_flight_stack != 0)
{
bool add_p = in_flight_stack & 1;
- list_t *elem = (list_t *) (in_flight_stack & ~UINTMAX_C (1));
+ list_t *elem = (list_t *) (in_flight_stack & ~(uintptr_t) 1);
if (add_p)
{
Modified: fsf/trunk/libc/sysdeps/i386/i686/multiarch/strstr-c.c
==============================================================================
--- fsf/trunk/libc/sysdeps/i386/i686/multiarch/strstr-c.c (original)
+++ fsf/trunk/libc/sysdeps/i386/i686/multiarch/strstr-c.c Fri Jul 15 00:02:09 2011
@@ -1,9 +1,11 @@
#include "init-arch.h"
#define STRSTR __strstr_ia32
+#if defined SHARED && defined DO_VERSIONING && !defined NO_HIDDEN
#undef libc_hidden_builtin_def
#define libc_hidden_builtin_def(name) \
__hidden_ver1 (__strstr_ia32, __GI_strstr, __strstr_ia32);
+#endif
#include "string/strstr.c"