Commit Graph

66 Commits

Author SHA1 Message Date
Zhixiong Chi
1c106ae64a binutils: fix three CVE issues
Backport the CVE patches from the upstream:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;
h=30838132997e6a3cfe3ec11c58b32b22f6f6b102
h=cf93e9c2cf8f8b2566f8fc86e961592b51b5980d

[BZ 23686] https://sourceware.org/bugzilla/show_bug.cgi?id=23686
[BZ 23685] https://sourceware.org/bugzilla/show_bug.cgi?id=23685

The one is for CVE-2018-17358 and CVE-2018-17359, and the another
is for CVE-2018-17360.

(From OE-Core rev: 2683d8287d6878868d3aa15ce6e6a80ce28d8737)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-10-16 20:35:43 +01:00
Alexey Brodkin
cbd7c6294a binutils: Fix Glibc building for ARC
(From OE-Core rev: c2b7410aaac0c68dc1bcf8d0f4102ff55dc870aa)

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-22 15:52:12 -07:00
Robert Yang
c66512c2d5 binutils: Improve check for input file matching output file
When the assembler reports that the input and output are the same, report the
file names involved, in order to help debugging.  Also do not equate two files
are the same if the have the same inode value but reside on different file
systems.

(From OE-Core rev: 83cb0938b90bab9ba727f883b8955b0b40d49a01)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-16 22:40:27 +01:00
Christopher Clark
028a292001 binutils: enable x86_64-pep for producing EFI binaries on x86-64
Add x86_64-pep emulation support to the set enabled for x86_64 targets
to enable the linker to produce Portable Executables for EFI binaries.

Enables building the x86-64 EFI variant of the Xen hypervisor for
the OpenXT Project.

(From OE-Core rev: 3d493838f0284948a09693ad65656cb7afbb21cc)

Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-09 23:47:56 +01:00
Khem Raj
26810bc160 binutils: Upgrade to 2.31 release branch
(From OE-Core rev: 7eeec2ad91eca6ba44ea7b761d47082f4ebb04cc)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-26 13:16:40 +01:00
Khem Raj
6ccc45aed5 binutils: Upgrade to 2.30 release
Additionally cherry-pick

5ffeba4a09 Revert "PowerPC PLT speculative execution barriers"
b01452b1d4 [PR22764][LD][AARCH64]Allow R_AARCH64_ABS16 and R_AARCH64_ABS32 against absolution symbol or undefine symbol in shared object.
a985e9b9de Import patch from mainline to remove PROVODE qualifiers around definitions of __CTOR_LIST__ and __DTOR_LIST__ in PE linker scripts.
eec4607fc5 Add support for DWARF-4 line number tables.

(From OE-Core rev: c708506eb9dbb4b817f563fbaacb80eee0b5b301)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-24 10:31:48 +00:00
Khem Raj
00ea0bf798 binutils: Upgrade to 2.29
(From OE-Core rev: 3bf990eb275f63190a2cf7253527d6d49fd93f1a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-16 00:03:13 +01:00
Richard Purdie
4c2d0b1205 meta: Remove further uclibc remnants (inc. patches and site files)
Some of these are clearly dead, e.g. one binutils patch reverts the effects
of the earlier one.

This also removes the uclibc site files. We now have mechanisms to allow these
to be extended from another layer should someone ever wish to do that.

(From OE-Core rev: e01e7c543a559c8926d72159b5cd55db0c661434)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-22 09:16:00 +01:00
Khem Raj
18369bf39c binutils-2.28: Update to latest on release branch
Drop patches to ChangeLog, they are in patch
header anyway

(From OE-Core rev: 0b0f545dbf16b0970c5a79975d451dc9d887c2a7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-06-13 10:46:34 +01:00
Yuanjie Huang
12f9c4ca9f binutils: fix CVE-2017-7210
CVE: CVE-2017-7210

[BZ 21157] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21157

PR binutils/21157: Fix handling of corrupt STABS enum type strings.

(From OE-Core rev: d12a99cba6c9dc9e1f6bc3a7ca8057f07e9cb950)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Yuanjie Huang
02089be016 binutils: fix CVE-2017-7209 in readelf
CVE: CVE-2017-7209

[BZ 21135] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21135

PR binutils/21135: Fix invalid read of section contents whilst processing
a corrupt binary.

(From OE-Core rev: 2df642ca0a1e4a4e6616729018cf32d2108cabb2)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-30 10:15:20 +01:00
Yuanjie Huang
204d9a0e01 binutils: fix CVE-2017-6969 in readelf
CVE: CVE-2017-6969
[BZ 21156] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21156

PR binutils/21156: Fix illegal memory accesses in readelf when
ing a corrupt binary.
PR binutils/21156: Fix another memory access error in readelf when
parsing a corrupt binary.

(From OE-Core rev: de04c9811f7ce5179ba261bd8eae921d7873d6cd)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Fan Xin
2d4ae96708 binutils: Fix CVE-2017-8392
Backport upsream commit to fix CVE-2017-8392

CVE: CVE-2017-8392

[BZ 21409] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21409

        PR 21409, segfault in _bfd_dwarf2_find_nearest_line

        PR 21409
        * dwarf2.c (_bfd_dwarf2_find_nearest_line): Don't segfault when
        no symbols.

(From OE-Core rev: dff01b827c87ae135a1d5511b1efbdad01c0eaee)

Signed-off-by: Fan Xin <fan.xin@jp.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-05-25 23:59:32 +01:00
Yuanjie Huang
ca22ef73d0 binutils: Fix CVE-2017-6965 and CVE-2017-6966
Backport upstream commit to address vulnerabilities:

CVE: CVE-2017-6965
[BZ 21137] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21137

Fix readelf writing to illegal addresses whilst processing corrupt input
files containing symbol-difference relocations.

	PR binutils/21137
	* readelf.c (target_specific_reloc_handling): Add end parameter.
	Check for buffer overflow before writing relocated values.
	(apply_relocations): Pass end to target_specific_reloc_handling.

CVE: CVE-2017-6966
[BZ 21139] -- https://sourceware.org/bugzilla/show_bug.cgi?id=21139

Fix read-after-free error in readelf when processing multiple, relocated
sections in an MSP430 binary.

	PR binutils/21139
	* readelf.c (target_specific_reloc_handling): Add num_syms
	parameter.  Check for symbol table overflow before accessing
	symbol value.  If reloc pointer is NULL, discard all saved state.
	(apply_relocations): Pass num_syms to target_specific_reloc_handling.
	Call target_specific_reloc_handling with a NULL reloc pointer
	after processing all of the relocs.

(From OE-Core rev: 8c52a530ba2beb438aa47956bcec3777a1eafe5f)

Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-11 18:10:18 +01:00
Khem Raj
5a85d39c9d binutils: Detect 64bit mips target for gold
(From OE-Core rev: b007eb12a80d81c2aa498941961df3f2899ece7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-01 23:28:19 +01:00
Khem Raj
4485ea5807 binutils: Upgrade to 2.28 release
(From OE-Core rev: e9f839d5fe70a222cc7b8942f401ac86a10e6604)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-07 20:05:31 +00:00
Richard Purdie
9852db9d22 binutils-cross: Remove exec_prefix from the linker search path
We don't put target libs into a native/cross ${exec_prefix} but having
this in the default search path means all linker scripts have to be relocated.
This is a considerable chunk of files to create multiple copies of for no good
reason.

Instead, patch out the paths we don't need.

(From OE-Core rev: 20816eb5398512652c971a37589a2ca28ffd3d68)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-31 23:47:33 +00:00
Manjukumar Matha
764a780136 binutils-2.27.inc: Fix alignment frags for aarch64
There was bug with alignment frags for aarch64 in binutils. This is fixed in
master of binutils. This patch backports the fix to binutils 2.27 version.

(From OE-Core rev: f6f87019073d4f3caa7766aca89faa6781690fba)

Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-20 15:22:17 +00:00
Fabio Berton
8a81facc23 binutils: Fix build for c293pcie PPC machine
The following patch fix build for c293pcie PPC machine :
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=8941017b

This patch is a backport from master branch.

Fix error:
/
|ERROR: binutils-2.27-r0 do_package: runstrip: ''powerpc-fslc-linux-gnuspe-strip'
|--remove-section=.comment --remove-section=.note --strip-unneeded
|'../tmp/work/ppce500v2-fslc-linux-gnuspe/binutils/2.27-r0/package/usr/lib/
|libbfd-2.27.0.20160806.so'' strip command failed with 1
|(b'powerpc-fslc-linux-gnuspe-strip: ../tmp/work/ppce500v2-fslc-linux-gnuspe/
|binutils/2.27-r0/package/usr/lib/stJMAEnm: Not enough room for program headers,
|try linking with -N\npowerpc-fslc-linux-gnuspe-strip:../tmp/work/
|ppce500v2-fslc-linux-gnuspe/binutils/2.27-r0/package/usr/lib/stJMAEnm
|[.note.gnu.build-id]: Bad value\n')
\

(From OE-Core rev: 3526c23ae98d2e08af20b77175c12907355ec42a)

Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-30 15:48:05 +00:00
Khem Raj
86973c0843 binutils-2.27: Fix linker segfaults when linking binary files
Fixes segfaults when doing partial linking and generaring binary objects

/tmp/binu/ld/ld-new -r -b binary -o etc_certs_ui_ca_pem.o etc_certs_ui_ca_pem

0  elf32_arm_count_additional_relocs (sec=0x79bf40) at /mnt/a/work/oe/binutils-gdb/bfd/elf32-arm.c:18210
1  0x000000000047635a in bfd_elf_final_link (abfd=abfd@entry=0x783250, info=info@entry=0x748400 <link_info>) at /mnt/a/work/oe/binutils-gdb/bfd/elflink.c:11224
2  0x000000000044df7b in elf32_arm_final_link (abfd=0x783250, info=0x748400 <link_info>) at /mnt/a/work/oe/binutils-gdb/bfd/elf32-arm.c:12131
3  0x0000000000418917 in ldwrite () at /mnt/a/work/oe/binutils-gdb/ld/ldwrite.c:577
4  0x000000000040365f in main (argc=<optimized out>, argv=<optimized out>) at /mnt/a/work/oe/binutils-gdb/ld/ldmain.c:433

gold works ok. The patch is already applied in master binutils

(From OE-Core rev: 00d1913520f1572fa7def865e57852c7f25b0ec4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-06 23:35:32 +00:00
Khem Raj
24abb88196 binutils: Fix gas error with cfi_section inconsistencies
This error is visible when using clang but not when using gcc
this has been reported and fixed upstream.

llvm bug https://llvm.org/bugs/show_bug.cgi?id=29017
binutils bug https://sourceware.org/bugzilla/show_bug.cgi?id=20648

(From OE-Core rev: e5a81575f11dc2a0ec9ee4184514750d2dbd09aa)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15 10:01:44 +01:00
Andre McCurdy
76f42d622b binutils: fix for MIPS "Can't find matching LO16 reloc" errors
Patch taken from Binutils Bugzilla:

  https://sourceware.org/bugzilla/show_bug.cgi?id=20649

(From OE-Core rev: a31eff6894099ee1d0ce7ccf2972f7276ca12743)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15 10:01:43 +01:00
Ross Burton
0c9ba38d92 binutils: apply RPATH fixes from our libtool patches
We don't autoreconf/libtoolize binutils as it has very strict requirements, so
extend our patching of the stock libtool to include two fixes to RPATH
behaviour, as part of the solution to ensure that native binaries don't have
RPATHs pointing at the host system's /usr/lib.

This generally doesn't cause a problem but it can cause some binaries (such as
ar) to abort on startup:

./x86_64-pokysdk-linux-ar: relocation error: /usr/lib/libc.so.6: symbol
_dl_starting_up, version GLIBC_PRIVATE not defined in file ld-linux.so.2 with
link time reference

The situation here is that ar is built and as it links to the host libc/loader
has an RPATH for /usr/lib.  If tmp is wiped and then binutils is installed from
sstate relocation occurs and the loader changed to the sysroot, but there
remains a RPATH for /usr/lib.  This means that the sysroot loader is used with
the host libc, which can be incompatible.  By telling libtool that the host
library paths are in the default search path, and ensuring that all default
search paths are not added as RPATHs by libtool, the result is a binary that
links to what it should be linking to and nothing else.

[ YOCTO #9287 ]

(From OE-Core rev: 6b201081b622cc083cc2b1a8ad99d6f7d2bea480)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-04 16:29:04 +01:00
Ross Burton
55e8c3a9f9 binutils: fix typo in libtool patch
There was a clear typo in a function name, correct it.

(From OE-Core rev: dcf44e184a807d76463a3bf1b2315e80b9469de3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-04 16:29:04 +01:00
Khem Raj
30ab044dac binutils: Bump to 2.27
(From OE-Core rev: 3f1eb2556026572dca9476c561d89b86723395c7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-10 10:46:28 +01:00
Ross Burton
bb915a1492 binutils: backport fix for TLSDESC relocations with no TLS segment on arch64
As exposed by WebKit on aarch64 hosts, which causes binutils to throw an
internal error.

[ YOCTO #9509 ]

(From OE-Core rev: b31294e4f34dfb530c40526ab56c07aedb76e31b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-20 10:28:49 +01:00
Khem Raj
ec336702a2 binutils: Upgrade to 2.26.1
Delete upstreamed patch

(From OE-Core rev: 37e8b6ecf9f9163d7b5b3becdc2feba57df4838f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-12 23:10:13 +01:00
André Draszik
1b29aff0e0 binutils: backport patch to fix mipsel (malta) kernel compile
This fixes the following compilation error when building a mipsel
yocto kernel for qemu:

|   CC      arch/mips/mm/sc-ip22.o
| {standard input}: Assembler messages:
| {standard input}:128: Error: number (0x9000000080000000) larger than 32 bits
| {standard input}:151: Error: number (0x9000000080000000) larger than 32 bits
| {standard input}:186: Error: number (0x9000000080000000) larger than 32 bits

We leave out the testsuite bits and the changelog in this
backport.

(From OE-Core rev: 8b378a17bf6d6c43f097b9df491e5c6ec59bf316)

Signed-off-by: André Draszik <adraszik@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-01 16:22:44 +01:00
Zhenhua Luo
f491996392 binutils: fix the incorrect assembling for ppc wait instruction
The wait mnemonic for ppc targets is incorrectly assembled into 0x7c00003c due
to duplicated address definition with waitasec instruction. The issue causes
kernel boot calltrace for ppc targets when wait instruction is executed.

(From OE-Core rev: 9764de92d5673d0f629555723321c933db015fe0)

Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-06-15 08:35:01 +01:00
Khem Raj
1387785013 binutils: Use tip of 2.26 branch
Until 2.26.1 is released there are few fixes which are needed especially
when using -fpie, here are changes that are part of this version bump

H.J. Lu (7):
      Add a testcase for PR ld/18591
      Store estimated distances in compressed_size
      Remove duplicated marker for 2.26 in gas/NEWS
      Add -mrelax-relocations= to x86 assembler
      Mask off the least significant bit in GOT offset
      Enable -Bsymbolic and -Bsymbolic-functions to PIE
      Fix a typo in objcopy manual

John David Anglin (1):
      Fix /usr/bin/ld: final link failed: File truncated error on hppa

(From OE-Core rev: 3685a1246110d84bffffa6d03a3c2ec0417cb4a3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 09:04:22 +00:00
Marek Vasut
611e3d87d8 binutils: Repair nios2 PLT and GP handling
Repair corner cases in nios2 PLT and GP handling. See the patches
themselves for extensive detailed explanation.

The patches don't contain the ChangeLog entries, since the changelog
entries often cause trouble when applying the patch.

(From OE-Core rev: fdac5c38183aa96faea8d51d16ce5f54ee16f944)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-11 12:27:48 +00:00
Khem Raj
c85c54f7f8 binutils: Upgrade to 2.26
(From OE-Core rev: 86ade2cc2553c942d9526c5323a11ae151653505)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-01 11:20:18 +00:00
Khem Raj
136db70700 binutils: Fix gold linking errors due to unresolved R_ARM_MOVW_ABS_NC
This issue has been seen in multiple times e.g.

http://patchwork.openembedded.org/patch/103083/

https://www.mail-archive.com/openembedded-core@lists.openembedded.org/msg72513.html

(From OE-Core rev: 9db094039ed7bce34006cc21bb65cd800fbfee7d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-24 09:40:31 +00:00
Mark Hatle
116360f39b binutils: Fix XLP / Octeon 3 instruction clash
Use the value 0x00000080 for INSN_XLP, as the value 0x00000040 has already
been assigned to INSN_OCTEON3 by the binutils project.

Without this change, invalid instructions can be generated for both INSN_XLP
and INSN_OCTEON3.

(From OE-Core rev: 3a3269e7f4c7d13ad0c5705cb59c138b697151d7)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-16 11:39:26 +00:00
Mark Hatle
fd4f4d299e binutils: Fix octeon3 disassembly patch
The structure has apparently changed, and there was a missing
setting.  This corrects a segfault when disassembling code.

(From OE-Core rev: 2e8f1ffe3a8d7740b0ac68eefbba3fe28f7ba6d4)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-16 11:39:26 +00:00
Ross Burton
1c914a844b meta: Fix Upstream-Status statements
Fix a variety of problems such as typos, bad punctuations, or incorrect
Upstream-Status values.

(From OE-Core rev: bd220fe6ce8c3a0805f13a14706d3130ea872604)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 23:01:53 +01:00
Jagadeesh Krishnanjanappa
8a2edb9856 binutils: Add thunderx support to gas
Without this patch, cross compiling for AArch64 with
"-mcpu=thunderx" fails with below error,

-- snip --
Assembler messages:
Error: unknown cpu `thunderx'
Error: unrecognized option -mcpu=thunderx
-- CUT --

(From OE-Core rev: 0cdf96013f66ee3a695038af633e3160b7f720dc)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:47 +01:00
Khem Raj
31c231c95d binutils: Fix symbols with --dynamic-list when using gold linker
There are random crashes and hangups, seen in libQtCore (QT4) as mentioned
in the binutils bugs as well, the reason is that
gold ignores all other symbols except specified in --dynamic-list which
is different in behavior as compared to bfd linker. The patch is a
backport from upstream master. This patch implements the bfd linker's
behaviour into gold.

(From OE-Core rev: 0ee1e3b000137ebcb2e223e7a3f8e9eb53088c70)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:47 +01:00
Armin Kuster
86559e1345 binutils: Add MIPS Octeon3
This add MIPS octeon3 support to binutils.

(From OE-Core rev: a3d3dc83a1ef73162f548594241c587ad12d8226)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:40 +01:00
Khem Raj
91b7c88d9f binutils: Update to tip of 2.25 branch
This update brings following patches

749b1c7 Fix some PPC assembler errors.
fe1e924 [AArch64][Backport] Remove Load/Store register (unscaled immediate) alias
4e4d08c [AArch64][Backport] Don't always create new frag for .inst directive
0381bf1 [AArch64][Backport] PR18270, fix handling of GOT entry for local symbol
bb22a11 [AArch64][Backport]Improve PC-relative relocation check for shared library
699dcf3 opcodes/
e700dd4 Downgrade linker error on protected symbols in .dynbss to a warning
13ccf8a Revert "Add extern_protected_data and set it for x86"
b0356a6 Add support for the Samsung Exynos M1 processor.
40dbf9d Add support for the Samsung Exynos M1 processor.
2aa5937 Don't pass unadorned zeros to varargs functions
12aca65 Relax PR 15228 protected visibility restriction
b443789 [AArch64] Fix branch stubs for BE
ab50ec0 Import fixes from mainline sources that address illegal memory access problems with the ELF targeted parts of the BFD library.
a539f2c Import patches from the master sources which fix illegal memory accesses found by running the binutils on fuzzed binaries.
a5ebc2c Fix build problem introduced by previous delta to coffgrok.c
7a57494 Import fixes from mainline that address illegal memory accesses when working with COFF/PE based files.
4f9583e Import fixes from trunk sources to correct invalid memory access issues with various binutils programs.
304a2b6 Import fixes for invalid memory access issues in the binutils DWARF parser from the trunk sources.
1dead8a Import security fixes for readelf from the master branch:
3e3feb3 Limit multi-byte nop instructions to 10 bytes
f12dd7b S/390: Disable relocation sort against code sections.
846daac Fix ppc32 synthetic symbols when __tls_get_addr_opt stub is generated
7235408 Tweak ppc32 tls_get_addr optimisation
642fe3b PowerPC64 thread-safe stubs not needed for iplt
2791b63 Use dynamic text relocs for protected vars
cff59f0 PowerPC64 GOLD: complain on misaligned _DS relocs
20951c8 Fix gold error: hidden symbol '...' is not defined locally
7428be5 [AArch64][2.25] Backport support for Cortex-A72
8093a8b [ARM][2.25] Backport support for Cortex-A72
f7cf878 [ARM] Backport "Skip private symbol when doing objdump"
031994d Add extern_protected_data and set it for x86

Additionally rearranges the local patches in sequence

(From OE-Core rev: a23cbec2fab9832dfcbad08e22f0f81a01fcab65)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:47 +01:00
Khem Raj
768794e6a8 binutils: Fix linking issue for R_ARM_REL32 relocs
This issue is surfaces with gcc 5.0 but its a real issue in gold
errors are like

https://sourceware.org/ml/binutils/2010-12/msg00473.html
is the test case

Change-Id: I44806e9fb75a164745e52f0040b7efc9be624ae6
(From OE-Core rev: 887c8cb41a3857b2381e3d83c2db83c1d78ae48d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 18:10:27 +01:00
Khem Raj
b559d7f81f binutils: Switch to using binutils stable/2.25 branch
We have a lot of patches on top of 2.25 release that we need
its easier/cleaner to use the git src instead of tarball and use
the latest on the 2.25 branch

Additionally, drop binutils-uclibc-300-006_better_file_error.patch
since it has been redone with
https://sourceware.org/ml/binutils/2006-10/msg00337.html upstream

git'ify the patches against upstream repos for better maintainance

Change-Id: I572c9bb49f60853e7ade4e8f63ab77b7e41476c5
(From OE-Core rev: 3c7fe424f850af70989ad682dd9c5be70cd02ca5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:11 +01:00
Khem Raj
1cb175fd7b binutils: Fix ICE in gold
Found when linking busybox using gold linker

Change-Id: I47b89998b9cb3d75ac97113a1b0fba109483b198
(From OE-Core rev: f370b72a0d5e13bd4f53daea99f0851517b361a2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:10 +01:00
Robert Yang
2be79f0b1d binutils: upgrade to 2.25
* Remove the following patches since they are already in the new code:
  binutils/fix-pr15815.patch
  binutils/fix-pr16428.patch
  binutils/fix-pr16476.patch
  binutils/fix-pr2404.patch
  binutils/replace_macros_with_static_inline.patch
  binutils/binutils_CVE-2014-8484.patch
  binutils/binutils_CVE-2014-8485.patch
  binutils/binutils_CVE-2014-8501.patch
  binutils/binutils_CVE-2014-8502.patch
  binutils/binutils_CVE-2014-8502_1.patch
  binutils/binutils_CVE-2014-8503.patch
  binutils/binutils_CVE-2014-8504.patch
  binutils/binutils_CVE-2014-8737.patch

* The file src-release is gone.

* Updated patches for the new code.

(From OE-Core rev: a8446ea78daa5875de43eb5bcccd8f536ea07e1c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>

Conflicts:
	meta/conf/distro/include/tcmode-default.inc
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:09 +01:00
Armin Kuster
6dde745bf9 binutils: several security fixes
CVE-2014-8484
CVE-2014-8485
CVE-2014-8501
CVE-2014-8502
CVE-2014-8503
CVE-2014-8504
CVE-2014-8737

and one supporting patch.

[Yocto # 7084]

(From OE-Core rev: 859fb4d9ec6974be9ce755e4ffefd9b199f3604c)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-27 22:53:40 +00:00
Richard Purdie
540b7a196a binutils: Add fix for recent patch on older gcc
The recent bintuils patch update breaks on older gccs such as CentOS 6.
Backport a patch to address this.

(From OE-Core rev: 76f65e73081f52cea718ef164f9d1d7a5c65d537)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-25 13:51:46 +01:00
H.J. Lu
ad07178802 binutils: Apply the proper fix for PR 16428
It is fixed by

commit 4199e3b8669d0a36448687850374fdc2ad7240b6
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jan 15 21:50:55 2014 +1030

    non-PIC references to __ehdr_start in pie and shared

    Rather than hacking every backend to not discard dynamic relocations
    against an undefined hidden __ehdr_start, make it appear to be defined
    early.  We want __ehdr_start hidden before size_dynamic_sections so
    that it isn't put in .dynsym, but we do need the dynamic relocations
    for a PIE or shared library with a non-PIC reference.  Defining it
    early is wrong if we don't actually define the symbol later to its
    proper value.  (In some cases we want to leave the symbol undefined,
    for example, when the ELF header isn't loaded, and we don't have this
    infomation available in before_allocation.)

So replace the existing patches with this one.

(From OE-Core rev: db37534c412ff3f1460687611060b3c4b3f95a04)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-25 13:51:45 +01:00
Khem Raj
ab6f21f62c binutils: Fix building nativesdk binutils with gcc 4.9
Patches explain the issue in detail but this is exposed
with gcc 4.9 in binutils 2.24

(From OE-Core rev: fc5c467b680fc5aef4b0f689e6988e17a9322ae0)

(From OE-Core rev: 4dfb8847ebf8aab90ad8888933468e2899c96998)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-06 17:59:15 +01:00
Richard Purdie
ffa8bbf965 binutils: Add fixes for binutils issue 16428
"ld:i386 crashes with -static -fPIE -pie"
https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/1266492

This adds in two upstream binutils fixes to avoid the internal error
triggered by the combination of -static with -pie on x86 builds. This
triggers a backtrace which then triggers a bug in glibc where the process
ends up hanging on some systems with broken libcs.

We can't fix the libc but we can stop the internal error and hence
avoid the hanging builds.

(From OE-Core rev: e949f9a8fc337bd768c7e8a3fd082775a94e0ad4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-25 21:26:49 +00:00
Richard Purdie
4a85e2698e binutils: Add backports to resolve systemd (from git) breakage
Backport the patches for PR2404 and PR16476 from binutils to
resolve failures when compiling systemd from git.

(From OE-Core rev: 25e376f6c8c66cca95ae7fa7f512b7dadfdd6140)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-09 09:40:00 +00:00