diff options
author | Alistair Francis <alistair.francis@wdc.com> | 2020-08-11 07:38:37 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-08-12 10:51:46 +0100 |
commit | e5d9d71b47b71f50b0dbb2b06436d89f0c69005f (patch) | |
tree | 852e13c28a12aae68a6d0fd26b9d5113a1fa84db | |
parent | 65a2323431c9b6488e206a9cf24e5ad5a31d5874 (diff) | |
download | poky-e5d9d71b47b71f50b0dbb2b06436d89f0c69005f.tar.gz |
binutils: Remove RISC-V PIE patch
Remove the out of tree patch that is trying to address a PIE issue. This
patch causes RISC-V applications to seg fault when running
_dl_relocate_object.
This fixes: https://github.com/riscv/meta-riscv/issues/236
(From OE-Core rev: 6360aed9dcde419134af169c2f3d91cae24c8bc5)
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-devtools/binutils/binutils-2.35.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/binutils/binutils/0017-Do-not-emit-R_RISCV_NONE-reloc-in-the-extra-unused-r.patch | 42 |
2 files changed, 0 insertions, 43 deletions
diff --git a/meta/recipes-devtools/binutils/binutils-2.35.inc b/meta/recipes-devtools/binutils/binutils-2.35.inc index 9aa5e7efe3..5ae9ec4226 100644 --- a/meta/recipes-devtools/binutils/binutils-2.35.inc +++ b/meta/recipes-devtools/binutils/binutils-2.35.inc | |||
@@ -41,6 +41,5 @@ SRC_URI = "\ | |||
41 | file://0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \ | 41 | file://0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \ |
42 | file://0015-sync-with-OE-libtool-changes.patch \ | 42 | file://0015-sync-with-OE-libtool-changes.patch \ |
43 | file://0016-Check-for-clang-before-checking-gcc-version.patch \ | 43 | file://0016-Check-for-clang-before-checking-gcc-version.patch \ |
44 | file://0017-Do-not-emit-R_RISCV_NONE-reloc-in-the-extra-unused-r.patch \ | ||
45 | " | 44 | " |
46 | S = "${WORKDIR}/git" | 45 | S = "${WORKDIR}/git" |
diff --git a/meta/recipes-devtools/binutils/binutils/0017-Do-not-emit-R_RISCV_NONE-reloc-in-the-extra-unused-r.patch b/meta/recipes-devtools/binutils/binutils/0017-Do-not-emit-R_RISCV_NONE-reloc-in-the-extra-unused-r.patch deleted file mode 100644 index 99bb38eb67..0000000000 --- a/meta/recipes-devtools/binutils/binutils/0017-Do-not-emit-R_RISCV_NONE-reloc-in-the-extra-unused-r.patch +++ /dev/null | |||
@@ -1,42 +0,0 @@ | |||
1 | From 5b61c40c34c3db699de723c3128ba704501ccdac Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Mon, 20 Apr 2020 14:23:57 -0700 | ||
4 | Subject: [PATCH 17/17] Do not emit R_RISCV_NONE reloc in the extra unused | ||
5 | reloc space. | ||
6 | |||
7 | Redundant R_RISCV_DTPMOD* R_RISCV_DTPREL* results from Global Dynamic -> Local Exec relaxation | ||
8 | which generates | ||
9 | |||
10 | Patch from https://sourceware.org/bugzilla/show_bug.cgi?id=24673 | ||
11 | |||
12 | Upstream-Status: Pending | ||
13 | |||
14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
15 | --- | ||
16 | bfd/elfnn-riscv.c | 5 +++-- | ||
17 | 1 file changed, 3 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/bfd/elfnn-riscv.c b/bfd/elfnn-riscv.c | ||
20 | index a5fa415309a..1e582052aa9 100644 | ||
21 | --- a/bfd/elfnn-riscv.c | ||
22 | +++ b/bfd/elfnn-riscv.c | ||
23 | @@ -2090,13 +2090,14 @@ riscv_elf_relocate_section (bfd *output_bfd, | ||
24 | pic = bfd_link_pic (info); | ||
25 | |||
26 | if (WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, pic, h) | ||
27 | - && (!pic || !SYMBOL_REFERENCES_LOCAL (info, h))) | ||
28 | + && (bfd_link_dll (info) | ||
29 | + || !SYMBOL_REFERENCES_LOCAL (info, h))) | ||
30 | indx = h->dynindx; | ||
31 | } | ||
32 | |||
33 | /* The GOT entries have not been initialized yet. Do it | ||
34 | now, and emit any relocations. */ | ||
35 | - if ((bfd_link_pic (info) || indx != 0) | ||
36 | + if ((bfd_link_dll (info) || indx != 0) | ||
37 | && (h == NULL | ||
38 | || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT | ||
39 | || h->root.type != bfd_link_hash_undefweak)) | ||
40 | -- | ||
41 | 2.28.0 | ||
42 | |||