This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/16888] ARM dynamic linker mishandles R_ARM_IRELATIVE RELA relocations
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Wed, 30 Apr 2014 16:19:30 +0000
- Subject: [Bug dynamic-link/16888] ARM dynamic linker mishandles R_ARM_IRELATIVE RELA relocations
- Auto-submitted: auto-generated
- References: <bug-16888-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=16888
--- Comment #1 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
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 60c8f1f60b45fb5ba02a0f76ff4b9fda203935e5 (commit)
from d0f5b3f851cfced84e3228977eb8dfdc9c607231 (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=60c8f1f60b45fb5ba02a0f76ff4b9fda203935e5
commit 60c8f1f60b45fb5ba02a0f76ff4b9fda203935e5
Author: Julian Brown <julian@codesourcery.com>
Date: Wed Apr 30 16:17:59 2014 +0000
ARM: Fix R_ARM_IRELATIVE RELA relocations.
This patch fixes what I believe to be a bug in the handling of
R_ARM_IRELATIVE RELA relocations. At present, these are handled the
same as REL relocations: i.e. the addend is loaded from the relocation
address. Most of the time this isn't a problem because RELA relocations
aren't used on ARM (GNU/Linux at least) anyway, but it causes problems
with prelink, which uses RELA on all targets for its conflict table.
(Support for ifunc prelinking requires a prelink patch, not yet posted.)
Anyway, this patch works, though I'm not 100% sure if it is correct: I
notice that this code path received attention last year:
https://sourceware.org/ml/libc-ports/2013-07/msg00000.html
I'm not sure under what circumstances that patch would have had an
effect, nor if my patch conflicts with that case.
No regressions using Mentor's usual glibc cross-testing infrastructure.
[BZ #16888]
* sysdeps/arm/dl-machine.h (elf_machine_rela): Fix R_ARM_IRELATIVE
handling.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 6 ++++++
NEWS | 2 +-
sysdeps/arm/dl-machine.h | 2 +-
3 files changed, 8 insertions(+), 2 deletions(-)
--
You are receiving this mail because:
You are on the CC list for the bug.