Hello community, here is the log from the commit of package binutils for openSUSE:Factory checked in at 2017-10-13 14:02:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/binutils (Old) and /work/SRC/openSUSE:Factory/.binutils.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "binutils" Fri Oct 13 14:02:19 2017 rev:120 rq:531786 version:2.29.1 Changes: -------- --- /work/SRC/openSUSE:Factory/binutils/binutils.changes 2017-10-01 16:59:05.849643485 +0200 +++ /work/SRC/openSUSE:Factory/.binutils.new/binutils.changes 2017-10-13 14:02:26.316240888 +0200 @@ -1,0 +2,10 @@ +Mon Oct 2 19:29:22 UTC 2017 - [email protected] + +- Add s390x-8fe09d7.diff to fix typo in ELF notes. + +------------------------------------------------------------------- +Fri Sep 29 08:26:45 UTC 2017 - [email protected] + +- Update binutils-2.29-branch.diff to @a45d8fd5ffbf888 fixing PR 22220. + +------------------------------------------------------------------- @@ -6 +16,20 @@ - relative to the 2.29.1 release fixing PRs 22199, 22170 and 22163. + relative to the 2.29.1 release fixing following PRs/bnc/CVE: + 22058 [bnc#1057149, CVE-2017-14130] + 21813 [bnc#1052503, CVE-2017-12456, bnc#1052507, CVE-2017-12454, + bnc#1052509, CVE-2017-12453, bnc#1052511, CVE-2017-12452, + bnc#1052514, CVE-2017-12450, bnc#1052503, CVE-2017-12456, + bnc#1052507, CVE-2017-12454, bnc#1052509, CVE-2017-12453, + bnc#1052511, CVE-2017-12452, bnc#1052514, CVE-2017-12450] + 22148 [bnc#1060599, CVE-2017-14745] + 22163 [bnc#1061241, CVE-2017-14974] + 21933 [bnc#1053347, CVE-2017-12799] + 21787 [bnc#1052518, CVE-2017-12448] + 22018 [bnc#1056312, CVE-2017-13757] + 22170 [bnc#1060621, CVE-2017-14729] + 22047 [bnc#1057144, CVE-2017-14129] + 22059 [bnc#1057139, CVE-2017-14128] + 21990 [bnc#1058480, CVE-2017-14333] + 22113 [bnc#1059050, CVE-2017-14529] + as well as these PRs: + 22061, 21786, 21916, 21994, 22064, 21995, 21909, 21441, 22060, + 22067, 22032, 21820, 22048, 22199, 21781, 21824, 21861, 22150. @@ -43 +72 @@ -- Update to binutils 2.29. +- Update to binutils 2.29. [fate#321454, fate#321494, fate#323293] cross-aarch64-binutils.changes: same change cross-arm-binutils.changes: same change cross-avr-binutils.changes: same change cross-epiphany-binutils.changes: same change cross-hppa-binutils.changes: same change cross-hppa64-binutils.changes: same change cross-i386-binutils.changes: same change cross-ia64-binutils.changes: same change cross-m68k-binutils.changes: same change cross-mips-binutils.changes: same change cross-ppc-binutils.changes: same change cross-ppc64-binutils.changes: same change cross-ppc64le-binutils.changes: same change cross-riscv64-binutils.changes: same change cross-rx-binutils.changes: same change cross-s390-binutils.changes: same change cross-s390x-binutils.changes: same change cross-sparc-binutils.changes: same change cross-sparc64-binutils.changes: same change cross-spu-binutils.changes: same change cross-x86_64-binutils.changes: same change New: ---- s390x-8fe09d7.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ binutils.spec ++++++ --- /var/tmp/diff_new_pack.SNxIo0/_old 2017-10-13 14:02:29.520099986 +0200 +++ /var/tmp/diff_new_pack.SNxIo0/_new 2017-10-13 14:02:29.524099810 +0200 @@ -95,6 +95,8 @@ Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch +# upstream typo fix +Patch35: s390x-8fe09d7.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -169,6 +171,7 @@ %patch18 %patch22 %patch34 -p1 +%patch35 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 ++++++ cross-aarch64-binutils.spec ++++++ --- /var/tmp/diff_new_pack.SNxIo0/_old 2017-10-13 14:02:29.548098755 +0200 +++ /var/tmp/diff_new_pack.SNxIo0/_new 2017-10-13 14:02:29.548098755 +0200 @@ -98,6 +98,8 @@ Patch18: gold-depend-on-opcodes.diff Patch22: binutils-bfd_h.patch Patch34: aarch64-common-pagesize.patch +# upstream typo fix +Patch35: s390x-8fe09d7.diff Patch90: cross-avr-nesc-as.patch Patch92: cross-avr-omit_section_dynsym.patch Patch93: cross-avr-size.patch @@ -172,6 +174,7 @@ %patch18 %patch22 %patch34 -p1 +%patch35 -p1 %if "%{TARGET}" == "avr" cp gas/config/tc-avr.h gas/config/tc-avr-nesc.h %patch90 cross-arm-binutils.spec: same change cross-avr-binutils.spec: same change cross-epiphany-binutils.spec: same change cross-hppa-binutils.spec: same change cross-hppa64-binutils.spec: same change cross-i386-binutils.spec: same change cross-ia64-binutils.spec: same change cross-m68k-binutils.spec: same change cross-mips-binutils.spec: same change cross-ppc-binutils.spec: same change cross-ppc64-binutils.spec: same change cross-ppc64le-binutils.spec: same change cross-riscv64-binutils.spec: same change cross-rx-binutils.spec: same change cross-s390-binutils.spec: same change cross-s390x-binutils.spec: same change cross-sparc-binutils.spec: same change cross-sparc64-binutils.spec: same change cross-spu-binutils.spec: same change cross-x86_64-binutils.spec: same change ++++++ binutils-2.29-branch.diff ++++++ --- /var/tmp/diff_new_pack.SNxIo0/_old 2017-10-13 14:02:30.136072897 +0200 +++ /var/tmp/diff_new_pack.SNxIo0/_new 2017-10-13 14:02:30.136072897 +0200 @@ -1,8 +1,14 @@ diff --git a/bfd/ChangeLog b/bfd/ChangeLog -index 417ed273ab..d09a3c6568 100644 +index 417ed273ab..8f8117dcb4 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog -@@ -1,3 +1,31 @@ +@@ -1,3 +1,37 @@ ++2017-09-28 Alan Modra <[email protected]> ++ ++ PR 22220 ++ * elflink.c (_bfd_elf_merge_symbol): Set non_ir_ref_dynamic in ++ a case where plugin_notice isn't called. ++ +2017-09-26 H.J. Lu <[email protected]> + + PR ld/22199 @@ -90,6 +96,27 @@ } offset += plt_entry_size; } +diff --git a/bfd/elflink.c b/bfd/elflink.c +index 02713a5956..ee3cc6b8b4 100644 +--- a/bfd/elflink.c ++++ b/bfd/elflink.c +@@ -1234,6 +1234,16 @@ _bfd_elf_merge_symbol (bfd *abfd, + olddyn = (oldsec->symbol->flags & BSF_DYNAMIC) != 0; + } + ++ /* Handle a case where plugin_notice won't be called and thus won't ++ set the non_ir_ref flags on the first pass over symbols. */ ++ if (oldbfd != NULL ++ && (oldbfd->flags & BFD_PLUGIN) != (abfd->flags & BFD_PLUGIN) ++ && newdyn != olddyn) ++ { ++ h->root.non_ir_ref_dynamic = TRUE; ++ hi->root.non_ir_ref_dynamic = TRUE; ++ } ++ + /* NEWDEF and OLDDEF indicate whether the new or old symbol, + respectively, appear to be a definition rather than reference. */ + diff --git a/bfd/version.h b/bfd/version.h index 3405e424f4..bc0fbb7648 100644 --- a/bfd/version.h @@ -178,10 +205,15 @@ run_dump_test "mips-gp32-fp32-pic" diff --git a/gold/ChangeLog b/gold/ChangeLog -index 6071f8977a..0fc54ddf71 100644 +index 6071f8977a..32c0e21f54 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog -@@ -1,3 +1,14 @@ +@@ -1,3 +1,19 @@ ++2017-09-28 Alan Modra <[email protected]> ++ ++ * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set ++ is_default_stack_executable false. ++ +2017-08-03 James Clarke <[email protected]> + + * options.h (General_options): Set a non-NULL second help string @@ -211,9 +243,27 @@ DEFINE_string(retain_symbols_file, options::TWO_DASHES, '\0', NULL, N_("keep only symbols listed in this file"), N_("FILE")); diff --git a/gold/powerpc.cc b/gold/powerpc.cc -index 629da4f8a1..ba20ef1ad7 100644 +index 629da4f8a1..22590c1e43 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc +@@ -1618,7 +1618,7 @@ Target::Target_info Target_powerpc<64, true>::powerpc_info = + false, // has_make_symbol + true, // has_resolve + false, // has_code_fill +- true, // is_default_stack_executable ++ false, // is_default_stack_executable + false, // can_icf_inline_merge_sections + '\0', // wrap_char + "/usr/lib/ld.so.1", // dynamic_linker +@@ -1646,7 +1646,7 @@ Target::Target_info Target_powerpc<64, false>::powerpc_info = + false, // has_make_symbol + true, // has_resolve + false, // has_code_fill +- true, // is_default_stack_executable ++ false, // is_default_stack_executable + false, // can_icf_inline_merge_sections + '\0', // wrap_char + "/usr/lib/ld.so.1", // dynamic_linker @@ -3065,11 +3065,17 @@ Target_powerpc<size, big_endian>::Branch_info::make_stub( target->glink_section()->add_global_entry(gsym); else @@ -258,3 +308,100 @@ if (target->stub_tables().size() != 0) stub_table = target->stub_tables()[0]; } +diff --git a/ld/ChangeLog b/ld/ChangeLog +index 73e05b618e..ba67e20bf9 100644 +--- a/ld/ChangeLog ++++ b/ld/ChangeLog +@@ -1,3 +1,11 @@ ++2017-09-28 Alan Modra <[email protected]> ++ ++ * testsuite/ld-plugin/pr22220.h, ++ * testsuite/ld-plugin/pr22220lib.cc, ++ * testsuite/ld-plugin/pr22220lib.ver, ++ * testsuite/ld-plugin/pr22220main.cc: New test. ++ * testsuite/ld-plugin/lto.exp: Run it. ++ + 2017-09-19 Nick Clifton <[email protected]> + + 2.29.1 Release +diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp +index f0bc345f2c..6b7ad536fb 100644 +--- a/ld/testsuite/ld-plugin/lto.exp ++++ b/ld/testsuite/ld-plugin/lto.exp +@@ -295,6 +295,12 @@ set lto_link_elf_tests [list \ + [list "Build pr21382.so" \ + "-shared" "-O2 -fpic" \ + {pr21382b.c} {} "pr21382.so" "c"] \ ++ [list {Build pr22220lib.so} \ ++ {-shared -Wl,--version-script=pr22220lib.ver} {-fPIC} \ ++ {pr22220lib.cc} {} {pr22220lib.so} {c++}] \ ++ [list {Build pr22220main.o} \ ++ {} {-flto} \ ++ {pr22220main.cc} {} {} {c++}] \ + ] + + # Check final symbols in executables. +@@ -396,6 +402,12 @@ set lto_run_elf_shared_tests [list \ + [list "Run pr21382" \ + "-O2 -flto -fuse-linker-plugin -Wl,--as-needed tmpdir/pr21382a.o tmpdir/pr21382.so" "" \ + {dummy.c} "pr21382.exe" "pass.out" "" "c"] \ ++ [list {pr22220a} \ ++ {-flto -fuse-linker-plugin tmpdir/pr22220main.o tmpdir/pr22220lib.so} {} \ ++ {dummy.c} {pr22220a.exe} {pass.out} {} {c++}] \ ++ [list {pr22220b} \ ++ {-flto -fuse-linker-plugin -Wl,--no-as-needed tmpdir/pr22220lib.so tmpdir/pr22220main.o} {} \ ++ {dummy.c} {pr22220b.exe} {pass.out} {} {c++}] \ + ] + + # LTO run-time tests for ELF +diff --git a/ld/testsuite/ld-plugin/pr22220.h b/ld/testsuite/ld-plugin/pr22220.h +new file mode 100644 +index 0000000000..b15b45c08d +--- /dev/null ++++ b/ld/testsuite/ld-plugin/pr22220.h +@@ -0,0 +1,8 @@ ++extern int doo(); ++ ++inline int *goo() { ++ static int xyz; ++ return &xyz; ++} ++ ++int *boo(); +diff --git a/ld/testsuite/ld-plugin/pr22220lib.cc b/ld/testsuite/ld-plugin/pr22220lib.cc +new file mode 100644 +index 0000000000..771f44f7f3 +--- /dev/null ++++ b/ld/testsuite/ld-plugin/pr22220lib.cc +@@ -0,0 +1,6 @@ ++#include "pr22220.h" ++ ++int* boo() ++{ ++ return goo (); ++} +diff --git a/ld/testsuite/ld-plugin/pr22220lib.ver b/ld/testsuite/ld-plugin/pr22220lib.ver +new file mode 100644 +index 0000000000..6da7e1a2bd +--- /dev/null ++++ b/ld/testsuite/ld-plugin/pr22220lib.ver +@@ -0,0 +1 @@ ++BAR { global: *; }; +diff --git a/ld/testsuite/ld-plugin/pr22220main.cc b/ld/testsuite/ld-plugin/pr22220main.cc +new file mode 100644 +index 0000000000..38c206f7a2 +--- /dev/null ++++ b/ld/testsuite/ld-plugin/pr22220main.cc +@@ -0,0 +1,12 @@ ++#include <stdio.h> ++#include "pr22220.h" ++ ++int main() ++{ ++ if (boo() == goo()) ++ { ++ printf ("PASS\n"); ++ return 0; ++ } ++ return 1; ++} ++++++ s390x-8fe09d7.diff ++++++ commit 8fe09d7421db51bc13c9228547d63e6315bd6bd0 Author: Andreas Arnez <[email protected]> Date: Thu Sep 21 17:45:18 2017 +0200 S/390: Fix Elf note swap s390_gs_bc vs. s390_gs_cb Fix two typos that resulted in swapping the BFD names for the core note register sections NT_S390_GS_CB and NT_S390_GS_BC. bfd/ChangeLog: * elf.c (elfcore_grok_note): For the cases NT_S390_GS_CB and NT_S390_GS_BC, correct the previously swapped invocations of elfcore_grok_s390_gs_bc and elfcore_grok_s390_gs_cb. diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4c8c12c..ebefab3 100644 diff --git a/bfd/elf.c b/bfd/elf.c index 2aa2337..9b61f06 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -9698,14 +9698,14 @@ elfcore_grok_note (bfd *abfd, Elf_Internal_Note *note) case NT_S390_GS_CB: if (note->namesz == 6 && strcmp (note->namedata, "LINUX") == 0) - return elfcore_grok_s390_gs_bc (abfd, note); + return elfcore_grok_s390_gs_cb (abfd, note); else return TRUE; case NT_S390_GS_BC: if (note->namesz == 6 && strcmp (note->namedata, "LINUX") == 0) - return elfcore_grok_s390_gs_cb (abfd, note); + return elfcore_grok_s390_gs_bc (abfd, note); else return TRUE;
