This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.22-267-g3ee5786


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  3ee578690f35942f41926cc2d98e25b3d0d08c71 (commit)
      from  020167a4ce53f7dd8d5b1912a42163bd1077e6c5 (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 -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=3ee578690f35942f41926cc2d98e25b3d0d08c71

commit 3ee578690f35942f41926cc2d98e25b3d0d08c71
Author: David Lamparter <equinox-gentoo@diac24.net>
Date:   Sun Sep 12 09:38:44 2010 -0400

    arm: setjmp/longjmp: fix PIC vs SHARED thinkos
    
    The logic in setjmp/__longjmp incorrectly uses "PIC" to figure out
    whether the code is going into a shared library when it should be
    using "SHARED".  If you build glibc with a gcc version that has PIE
    enabled by default, then the code will try to use symbols that are
    only in the shared library.
    
    URL: https://bugs.gentoo.org/336914

diff --git a/ChangeLog b/ChangeLog
index 72605d4..764af43 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-09-18  David Lamparter  <equinox-gentoo@diac24.net>
+
+	* sysdeps/arm/setjmp.S: Change PIC to SHARED.
+	* sysdeps/arm/__longjmp.S: Likewise
+
 2015-09-18  Wilco Dijkstra  <wdijkstr@arm.com>
 
 	* sysdeps/ieee754/dbl-64/s_signbit.c (__signbit):
diff --git a/sysdeps/arm/__longjmp.S b/sysdeps/arm/__longjmp.S
index fc60a5d..1033e13 100644
--- a/sysdeps/arm/__longjmp.S
+++ b/sysdeps/arm/__longjmp.S
@@ -81,7 +81,7 @@ ENTRY (__longjmp)
 		    C_SYMBOL_NAME(_rtld_local_ro) \
 		    + RTLD_GLOBAL_RO_DL_HWCAP_OFFSET)
 # else
-#  ifdef PIC
+#  ifdef SHARED
 	LDR_GLOBAL (a4, a3, C_SYMBOL_NAME(_rtld_global_ro), \
 		    RTLD_GLOBAL_RO_DL_HWCAP_OFFSET)
 #  else
diff --git a/sysdeps/arm/setjmp.S b/sysdeps/arm/setjmp.S
index e44beb4..be0a4ec 100644
--- a/sysdeps/arm/setjmp.S
+++ b/sysdeps/arm/setjmp.S
@@ -62,7 +62,7 @@ ENTRY (__sigsetjmp)
 		    C_SYMBOL_NAME(_rtld_local_ro) \
 		    + RTLD_GLOBAL_RO_DL_HWCAP_OFFSET)
 # else
-#  ifdef PIC
+#  ifdef SHARED
 	LDR_GLOBAL (a3, a4, C_SYMBOL_NAME(_rtld_global_ro), \
 		    RTLD_GLOBAL_RO_DL_HWCAP_OFFSET)
 #  else

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

Summary of changes:
 ChangeLog               |    5 +++++
 sysdeps/arm/__longjmp.S |    2 +-
 sysdeps/arm/setjmp.S    |    2 +-
 3 files changed, 7 insertions(+), 2 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]