Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Waldemar Brodkorb <wbx@openadk.org>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] elf2flt: fix threading apps on ARM noMMU systems
Date: Wed, 24 Aug 2016 23:03:43 +0200	[thread overview]
Message-ID: <20160824210342.GA7164@waldemar-brodkorb.de> (raw)

See this thread, which explains the problem in detail:
http://mailman.uclinux.org/pipermail/uclinux-dev//2016-April/052713.html

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
---
 This should be applied to master.
---
 ...-relocation-support-for-R_ARM_TARGET-type.patch | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch

diff --git a/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch b/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch
new file mode 100644
index 0000000..b9615ab
--- /dev/null
+++ b/package/elf2flt/0001-elf2flt-fix-relocation-support-for-R_ARM_TARGET-type.patch
@@ -0,0 +1,34 @@
+From dedce8765d203c1c162a57e6259375e0b457173f Mon Sep 17 00:00:00 2001
+From: Greg Ungerer <gerg@linux-m68k.org>
+Date: Fri, 19 Aug 2016 23:49:51 +1000
+Subject: [PATCH] elf2flt: fix relocation support for R_ARM_TARGET types
+
+R_ARM_TARGET1 (and I think R_ARM_TARGET2) relocation types should be
+treated in the same way as R_ARM_ABS32. Fix them to write out the addend
+to the flat binary in network byte order.
+
+Signed-off-by: Greg Ungerer <gerg@uclinux.org>
+Tested-by: Waldemar Brodkorb <wbx@openadk.org>
+
+---
+ elf2flt.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/elf2flt.c b/elf2flt.c
+index 5ae7dd9..3f31569 100644
+--- a/elf2flt.c
++++ b/elf2flt.c
+@@ -1505,7 +1505,9 @@ DIS29_RELOCATION:
+ 					(((*p)->howto->type != R_ARM_PC24) &&
+ 					((*p)->howto->type != R_ARM_PLT32)))
+ 					tmp.c[i3] = (hl >> 24) & 0xff;
+-				if ((*p)->howto->type == R_ARM_ABS32)
++				if (((*p)->howto->type == R_ARM_ABS32) ||
++				    ((*p)->howto->type == R_ARM_TARGET1) ||
++				    ((*p)->howto->type == R_ARM_TARGET2))
+ 					*(uint32_t *)r_mem = htonl(hl);
+ 				else
+ 					*(uint32_t *)r_mem = tmp.l;
+-- 
+1.9.1
+
-- 
2.1.4

             reply	other threads:[~2016-08-24 21:03 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-24 21:03 Waldemar Brodkorb [this message]
2016-08-25 13:57 ` [Buildroot] [PATCH] elf2flt: fix threading apps on ARM noMMU systems Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160824210342.GA7164@waldemar-brodkorb.de \
    --to=wbx@openadk.org \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox