summaryrefslogtreecommitdiffstats
path: root/source/d/binutils/patches/binutils-revert-PLT-elision.patch
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2021-08-29 18:23:50 +0000
committer Eric Hameleers <alien@slackware.com>2021-08-30 08:59:55 +0200
commit34ba4d05d9d2b7f5d72aded4eb35aa617cb8629d (patch)
treefd24e6dc296552ed8ce520e595a71eea78e88e9c /source/d/binutils/patches/binutils-revert-PLT-elision.patch
parenta685863802fc9764aefd5b07106f3e3e54b210a3 (diff)
downloadcurrent-34ba4d05d9d2b7f5d72aded4eb35aa617cb8629d.tar.gz
current-34ba4d05d9d2b7f5d72aded4eb35aa617cb8629d.tar.xz
Sun Aug 29 18:23:50 UTC 202120210829182350
ap/man-pages-5.13-noarch-1.txz: Upgraded. d/binutils-2.37-x86_64-1.txz: Upgraded. With a few upstream patches to fix some regressions in the release, we no longer get any new FTBFS with this, so we'll take it. d/oprofile-1.4.0-x86_64-8.txz: Rebuilt. Recompiled against binutils-2.37. kde/sddm-0.19.0-x86_64-8.txz: Rebuilt. Patched to fix build. l/libcap-2.54-x86_64-1.txz: Upgraded. l/libssh-0.9.6-x86_64-1.txz: Upgraded. Fix possible heap-buffer overflow when rekeying with different key exchange mechanism. For more information, see: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-3634 (* Security fix *) l/qt5-5.15.3_20210826_21ea9c12-x86_64-1.txz: Upgraded. Switched to the patched qt5 from https://invent.kde.org/qt/qt/qt5.git. Huge thanks to Heinz Wiesinger for the script to create a release tarball. Likely this fixes many security issues. (* Security fix *) x/libglvnd-1.3.3-x86_64-1.txz: Upgraded. Reverted to this version because changes to the header files won't allow the EGL portions of Qt to properly compile.
Diffstat (limited to 'source/d/binutils/patches/binutils-revert-PLT-elision.patch')
-rw-r--r--source/d/binutils/patches/binutils-revert-PLT-elision.patch243
1 files changed, 243 insertions, 0 deletions
diff --git a/source/d/binutils/patches/binutils-revert-PLT-elision.patch b/source/d/binutils/patches/binutils-revert-PLT-elision.patch
new file mode 100644
index 000000000..885bbeeed
--- /dev/null
+++ b/source/d/binutils/patches/binutils-revert-PLT-elision.patch
@@ -0,0 +1,243 @@
+diff -rup binutils.orig/ld/testsuite/ld-i386/pltgot-1.d binutils-2.29.1/ld/testsuite/ld-i386/pltgot-1.d
+--- binutils.orig/ld/testsuite/ld-i386/pltgot-1.d 2017-11-15 13:32:39.335065263 +0000
++++ binutils-2.29.1/ld/testsuite/ld-i386/pltgot-1.d 2017-11-15 15:03:55.649727195 +0000
+@@ -2,6 +2,7 @@
+ #readelf: -S --wide
+ #as: --32
+
++#pass
+ #...
+ +\[ *[0-9]+\] \.plt +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+10 +.*
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-i386/pltgot-2.d binutils-2.29.1/ld/testsuite/ld-i386/pltgot-2.d
+--- binutils.orig/ld/testsuite/ld-i386/pltgot-2.d 2017-11-15 13:32:39.329065335 +0000
++++ binutils-2.29.1/ld/testsuite/ld-i386/pltgot-2.d 2017-11-15 15:04:20.803430034 +0000
+@@ -3,7 +3,6 @@
+ #readelf: -d --wide
+ #as: --32
+
+-#failif
+ #...
+ +0x[0-9a-f]+ +\(PLTREL.*
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-i386/pr19636-2d.d binutils-2.29.1/ld/testsuite/ld-i386/pr19636-2d.d
+--- binutils.orig/ld/testsuite/ld-i386/pr19636-2d.d 2017-11-15 13:32:39.336065251 +0000
++++ binutils-2.29.1/ld/testsuite/ld-i386/pr19636-2d.d 2017-11-15 15:03:00.413379749 +0000
+@@ -9,7 +9,7 @@ Relocation section '\.rel\.dyn' at offse
+ [0-9a-f]+ +[0-9a-f]+ +R_386_32 +0+ +func
+ [0-9a-f]+ +[0-9a-f]+ +R_386_PC32 +0+ +func
+ [0-9a-f]+ +[0-9a-f]+ +R_386_GLOB_DAT +0+ +func
+-
++#...
+ Symbol table '\.dynsym' contains [0-9]+ entries:
+ +Num: +Value +Size Type +Bind +Vis +Ndx Name
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-i386/pr19636-2e.d binutils-2.29.1/ld/testsuite/ld-i386/pr19636-2e.d
+--- binutils.orig/ld/testsuite/ld-i386/pr19636-2e.d 2017-11-15 13:32:39.330065323 +0000
++++ binutils-2.29.1/ld/testsuite/ld-i386/pr19636-2e.d 2017-11-15 15:03:28.928042882 +0000
+@@ -9,7 +9,7 @@ Relocation section '\.rel\.dyn' at offse
+ [0-9a-f]+ +[0-9a-f]+ +R_386_32 +0+ +func
+ [0-9a-f]+ +[0-9a-f]+ +R_386_PC32 +0+ +func
+ [0-9a-f]+ +[0-9a-f]+ +R_386_GLOB_DAT +0+ +func
+-
++#...
+ Symbol table '\.dynsym' contains [0-9]+ entries:
+ +Num: +Value +Size Type +Bind +Vis +Ndx Name
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pltgot-1.d binutils-2.29.1/ld/testsuite/ld-x86-64/pltgot-1.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pltgot-1.d 2017-11-15 13:32:39.415064300 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pltgot-1.d 2017-11-15 15:08:39.333375801 +0000
+@@ -2,8 +2,4 @@
+ #readelf: -S --wide
+ #as: --64
+
+-#...
+- +\[ *[0-9]+\] \.plt +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+10 +.*
+-#...
+- +\[ *[0-9]+\] \.got\.plt +PROGBITS +[0-9a-f]+ +[0-9a-f]+ +0+18 +.*
+ #pass
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pltgot-2.d binutils-2.29.1/ld/testsuite/ld-x86-64/pltgot-2.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pltgot-2.d 2017-11-15 13:32:39.404064432 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pltgot-2.d 2017-11-15 15:08:59.031143095 +0000
+@@ -3,7 +3,6 @@
+ #readelf: -d --wide
+ #as: --64
+
+-#failif
+ #...
+ +0x[0-9a-f]+ +\(PLTREL.*
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/plt-main.rd binutils-2.29.1/ld/testsuite/ld-x86-64/plt-main.rd
+--- binutils.orig/ld/testsuite/ld-x86-64/plt-main.rd 2017-11-15 13:32:39.407064397 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/plt-main.rd 2017-11-15 15:06:17.244054423 +0000
+@@ -1,4 +1,3 @@
+-#failif
+ #...
+ [0-9a-f ]+R_X86_64_JUMP_SLOT +0+ +bar \+ 0
+ #...
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr20830a.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830a.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr20830a.d 2017-11-15 13:32:39.412064336 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830a.d 2017-11-15 15:15:09.918750288 +0000
+@@ -20,6 +20,7 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
++#pass
+
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr20830a-now.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830a-now.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr20830a-now.d 2017-11-15 13:32:39.413064324 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830a-now.d 2017-11-15 15:16:08.227055104 +0000
+@@ -20,6 +20,7 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
++#pass
+
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr20830b.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830b.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr20830b.d 2017-11-15 13:32:39.413064324 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830b.d 2017-11-15 15:16:20.115913358 +0000
+@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000010 0000001c FDE cie=00000000 pc=0000000000000138..0000000000000144
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr20830b-now.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830b-now.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr20830b-now.d 2017-11-15 13:32:39.411064348 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr20830b-now.d 2017-11-15 15:16:29.012807282 +0000
+@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000010 0000001c FDE cie=00000000 pc=0000000000000138..0000000000000144
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038a.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038a.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038a.d 2017-11-15 13:32:39.408064384 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038a.d 2017-11-15 15:19:48.097433680 +0000
+@@ -19,7 +19,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038a-now.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038a-now.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038a-now.d 2017-11-15 13:32:39.401064469 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038a-now.d 2017-11-15 15:10:56.077760324 +0000
+@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001c8..00000000000001d4
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038b.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038b.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038b.d 2017-11-15 13:32:39.405064420 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038b.d 2017-11-15 15:10:42.828916844 +0000
+@@ -19,6 +19,7 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
++#pass
+
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001d8..00000000000001dd
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038b-now.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038b-now.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038b-now.d 2017-11-15 13:32:39.416064288 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038b-now.d 2017-11-15 15:11:11.550577531 +0000
+@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=00000000000001d8..00000000000001dd
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038c.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038c.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038c.d 2017-11-15 13:32:39.411064348 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038c.d 2017-11-15 15:09:52.664509478 +0000
+@@ -19,7 +19,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=0000000000000220..0000000000000231
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/pr21038c-now.d binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038c-now.d
+--- binutils.orig/ld/testsuite/ld-x86-64/pr21038c-now.d 2017-11-15 13:32:39.413064324 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/pr21038c-now.d 2017-11-15 15:11:22.975442559 +0000
+@@ -20,7 +20,8 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r16 \(rip\) at cfa-8
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
++
+ 0+18 0000000000000014 0000001c FDE cie=00000000 pc=0000000000000220..0000000000000231
+ DW_CFA_nop
+ DW_CFA_nop
+diff -rup binutils.orig/ld/testsuite/ld-x86-64/tlspic2.rd binutils-2.29.1/ld/testsuite/ld-x86-64/tlspic2.rd
+--- binutils.orig/ld/testsuite/ld-x86-64/tlspic2.rd 2017-11-15 13:32:39.417064276 +0000
++++ binutils-2.29.1/ld/testsuite/ld-x86-64/tlspic2.rd 2017-11-15 15:05:02.950932110 +0000
+@@ -14,6 +14,7 @@ Section Headers:
+ +\[[ 0-9]+\] .dynsym +.*
+ +\[[ 0-9]+\] .dynstr +.*
+ +\[[ 0-9]+\] .rela.dyn +.*
++#pass
+ +\[[ 0-9]+\] .plt +.*
+ +\[[ 0-9]+\] .plt.got +.*
+ +\[[ 0-9]+\] .text +PROGBITS +0+1000 0+1000 0+31a 00 +AX +0 +0 4096
+--- binutils.orig/bfd/elfxx-x86.c 2018-01-22 15:59:25.875788033 +0000
++++ binutils-2.30.0/bfd/elfxx-x86.c 2018-01-22 16:00:20.789146597 +0000
+@@ -107,7 +107,7 @@ elf_x86_allocate_dynrelocs (struct elf_l
+ plt_entry_size = htab->plt.plt_entry_size;
+
+ resolved_to_zero = UNDEFINED_WEAK_RESOLVED_TO_ZERO (info, eh);
+-
++#if 0
+ /* We can't use the GOT PLT if pointer equality is needed since
+ finish_dynamic_symbol won't clear symbol value and the dynamic
+ linker won't update the GOT slot. We will get into an infinite
+@@ -125,7 +125,7 @@ elf_x86_allocate_dynrelocs (struct elf_l
+ /* Use the GOT PLT. */
+ eh->plt_got.refcount = 1;
+ }
+-
++#endif
+ /* Since STT_GNU_IFUNC symbol must go through PLT, we handle it
+ here if it is defined and referenced in a non-shared object. */
+ if (h->type == STT_GNU_IFUNC
+--- binutils.orig/ld/testsuite/ld-i386/pr20830.d 2018-07-09 09:49:51.277239857 +0100
++++ binutils-2.30.90/ld/testsuite/ld-i386/pr20830.d 2018-07-09 10:32:41.113356733 +0100
+@@ -19,7 +19,7 @@ Contents of the .eh_frame section:
+ DW_CFA_offset: r8 \(eip\) at cfa-4
+ DW_CFA_nop
+ DW_CFA_nop
+-
++#pass
+ 0+18 00000010 0000001c FDE cie=00000000 pc=00000128..00000133
+ DW_CFA_nop
+ DW_CFA_nop