From 01f5c4c43e7f0ad357b39e6307413c46aa9d1f7d Mon Sep 17 00:00:00 2001 From: Max Rees Date: Tue, 17 Sep 2019 14:02:23 -0500 Subject: system/binutils: disable failing pmmx tests (#196) --- system/binutils/APKBUILD | 8 +- system/binutils/BTS-170.patch | 42 ++++++++ system/binutils/BTS-196.patch | 173 ++++++++++++++++++++++++++++++++ system/binutils/disable-static-1d.patch | 42 -------- 4 files changed, 220 insertions(+), 45 deletions(-) create mode 100644 system/binutils/BTS-170.patch create mode 100644 system/binutils/BTS-196.patch delete mode 100644 system/binutils/disable-static-1d.patch (limited to 'system') diff --git a/system/binutils/APKBUILD b/system/binutils/APKBUILD index dadb06611..490ab485e 100644 --- a/system/binutils/APKBUILD +++ b/system/binutils/APKBUILD @@ -19,7 +19,6 @@ source="https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz disable-gnu-mbind.patch disable-ifunc-tests.patch disable-preinit-array-tests.patch - disable-static-1d.patch remove-pr2404-tests.patch remove-pr19719-test.patch remove-pr19553c-test.patch @@ -31,6 +30,8 @@ source="https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz CVE-2019-9077.patch CVE-2019-12972.patch CVE-2019-14250.patch + BTS-170.patch + BTS-196.patch " if [ "$CHOST" != "$CTARGET" ]; then @@ -140,7 +141,6 @@ ecee33b0e435aa704af1c334e560f201638ff79e199aa11ed78a72f7c9b46f85fbb227af5748e735 d378fdf1964f8f2bd0b1e62827ac5884bdf943aa435ec89c29fc84bb045d406b733fffaff8fdd8bd1cba8ddea7701c4cf6ccf3ed76a8a3df9c72b447737575a6 disable-gnu-mbind.patch 474ab24097bbb5b24433620549e5234fe65c547824c1342f693c718ffbc81e2d968259cce2d650b55200dd1ec89da207ea2db10c551cd9941285c4600b4297b2 disable-ifunc-tests.patch 3537752e63cef0b5ef136d003ff7e814ba66b12624d817430112d0f291a792e8960fa69a78036f526af835441b3ee483d6a53d55c7b3dd8ee96f0399682dbcbe disable-preinit-array-tests.patch -d4543d2f77808d317d17a5f0eb9af21540ef8543fceaed4e3524213e31e058333321f3ba3b495199e3b57bfd0c4164929cf679369470389e26871b8895cb0110 disable-static-1d.patch 32ab4215669c728648179c124632467573a3d4675e79f0f0d221c22eb2ec1ca5488b79910bd09142f90a1e0d0b81d99ca4846297f4f9561f158db63745facb66 remove-pr2404-tests.patch a193d1fa7f42d91915960460a15e4d24e0df529d81e23014bcf45d283fae76bb7b300fdcb0d0a9d521cdb9137322efa1dc357112596d6ae7a7fd05988ac359b9 remove-pr19719-test.patch 39ef9c76dd5db6b15f11ffa8061f7ca844fb79c3fb9879c3b1466eef332a28b833597c87003ab9f260b1b85023fae264659088aee27cad7e5aa77b2d58b9a3f6 remove-pr19553c-test.patch @@ -151,4 +151,6 @@ f52d21f194c2d7dbdc56e93636d3228034ee1718b457e5a5ce289bba2454155846d1ff6ea8530d11 a46b9211608e2f35219b95363a5ba90506742dcb9e4bd4a43915af6c0b3e74bd8339a8318dc2923c0952ef579112412cb1cf619a5f090066769a852587b27d03 CVE-2019-9075.patch c0f50f1a843480f29b3895c8814df9801b9f90260edbaff1831aa5738fedd07a9e6b7a79f5b6f9be34df4954dbf02feb5232ebbecc596277fc2fe63673ed347c CVE-2019-9077.patch 9109a6ff9c55f310f86a1561fe6b404534928d402672490059bbe358f77c0c2a7f73c8b67f0a4450f00ba1776452858b63fa60cf2ec0744104a6b077e8fa3e42 CVE-2019-12972.patch -c277202272d9883741c2530a94c6d50d55dd9d0a9efaa43a1f8c9fc7529bd45e635255c0d90035dfc5920d5387010a4259612a4d711260a95d7b3d9fa6500e4f CVE-2019-14250.patch" +c277202272d9883741c2530a94c6d50d55dd9d0a9efaa43a1f8c9fc7529bd45e635255c0d90035dfc5920d5387010a4259612a4d711260a95d7b3d9fa6500e4f CVE-2019-14250.patch +d4543d2f77808d317d17a5f0eb9af21540ef8543fceaed4e3524213e31e058333321f3ba3b495199e3b57bfd0c4164929cf679369470389e26871b8895cb0110 BTS-170.patch +dec581f7314f893f927acdaeb4436f5576a69418aaac3edd374a0efc473aeedda419f10e193adb59e02d37d03f576bf383821ec560d7aa21c1e4aec24e868375 BTS-196.patch" diff --git a/system/binutils/BTS-170.patch b/system/binutils/BTS-170.patch new file mode 100644 index 000000000..daca64319 --- /dev/null +++ b/system/binutils/BTS-170.patch @@ -0,0 +1,42 @@ +The "No PLT (static 1d)" link test fails on pmmx and x86_64. +lea is being emitted instead of mov. + +https://bts.adelielinux.org/show_bug.cgi?id=170 +https://bts.adelielinux.org/show_bug.cgi?id=196 + +--- binutils-2.32/ld/testsuite/ld-x86-64/no-plt.exp 2019-01-19 10:01:34.000000000 -0600 ++++ binutils-2.32/ld/testsuite/ld-x86-64/no-plt.exp 2019-09-11 17:21:27.232257151 -0500 +@@ -100,15 +100,6 @@ run_cc_link_tests [list \ + "no-plt-1c" \ + ] \ + [list \ +- "No PLT (static 1d)" \ +- "-static tmpdir/no-plt-check1.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1d.rd} {objdump -dwrj.text no-plt-1d.dd}} \ +- "no-plt-1d" \ +- ] \ +- [list \ + "No PLT (PIE 1e)" \ + "-pie tmpdir/no-plt-check1.o tmpdir/no-plt-main1.o \ + tmpdir/no-plt-func1.o tmpdir/no-plt-extern1.o" \ +--- binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-01-19 10:01:33.000000000 -0600 ++++ binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-09-11 18:03:48.012302603 -0500 +@@ -102,15 +102,6 @@ run_cc_link_tests [list \ + "no-plt-1c" \ + ] \ + [list \ +- "No PLT (static 1d)" \ +- "-static tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1d.rd} {objdump -dwrj.text no-plt-1d.dd}} \ +- "no-plt-1d" \ +- ] \ +- [list \ + "No PLT (PIE 1e)" \ + "-pie tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ + tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ diff --git a/system/binutils/BTS-196.patch b/system/binutils/BTS-196.patch new file mode 100644 index 000000000..a49bd3ed2 --- /dev/null +++ b/system/binutils/BTS-196.patch @@ -0,0 +1,173 @@ +https://bts.adelielinux.org/show_bug.cgi?id=196 + +--- binutils-2.32/ld/testsuite/ld-i386/i386.exp 2019-01-19 10:01:33.000000000 -0600 ++++ binutils-2.32/ld/testsuite/ld-i386/i386.exp 2019-09-17 13:47:29.921108280 -0500 +@@ -1035,23 +1035,6 @@ if { [isnative] + "pr18900.out" \ + ] \ + [list \ +- "Run pr19031" \ +- "$NOPIE_LDFLAGS tmpdir/pr19031.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { pr19031b.S pr19031c.c } \ +- "pr19031" \ +- "pr19031.out" \ +- "$NOPIE_CFLAGS" \ +- ] \ +- [list \ +- "Run got1" \ +- "$NOPIE_LDFLAGS tmpdir/got1d.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { got1a.S got1b.c got1c.c } \ +- "got1" \ +- "got1.out" \ +- ] \ +- [list \ + "Run property 1" \ + "" \ + "-Wa,-mx86-used-note=yes" \ +@@ -1159,8 +1142,6 @@ if { [isnative] + ] + + undefined_weak "$NOPIE_CFLAGS" "$NOPIE_LDFLAGS" +- undefined_weak "-fPIE" "$NOPIE_LDFLAGS" +- undefined_weak "-fPIE" "-pie" + undefined_weak "-fPIE" "-z nodynamic-undefined-weak $NOPIE_LDFLAGS" + undefined_weak "-fPIE" "-pie -z nodynamic-undefined-weak" + } +@@ -1327,15 +1308,6 @@ if { [isnative] + "$NOPIE_CFLAGS" \ + ] \ + [list \ +- "Run pr22001-1" \ +- "$NOPIE_LDFLAGS -Wl,-z,nocopyreloc,--no-as-needed tmpdir/pr22001-1.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { pr22001-1b.c } \ +- "pr22001-1" \ +- "pass.out" \ +- "$NOPIE_CFLAGS" \ +- ] \ +- [list \ + "Run pr22001-1 (PIE 1)" \ + "$NOPIE_LDFLAGS -Wl,-z,nocopyreloc,--no-as-needed tmpdir/pr22001-1.so" \ + "-Wa,-mx86-used-note=yes" \ +@@ -1370,15 +1342,6 @@ if { [isnative] + "-fPIC" \ + ] \ + [list \ +- "Run pr21997-1" \ +- "$NOPIE_LDFLAGS -Wl,--no-as-needed tmpdir/pr21997-1.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { pr21997-1b.c } \ +- "pr21997-1" \ +- "pass.out" \ +- "$NOPIE_CFLAGS" \ +- ] \ +- [list \ + "Run pr21997-1 (PIC 1)" \ + "$NOPIE_LDFLAGS -Wl,--no-as-needed tmpdir/pr21997-1.so" \ + "-Wa,-mx86-used-note=yes" \ +--- binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-09-17 13:51:35.771111471 -0500 ++++ binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-09-17 14:00:48.581118647 -0500 +@@ -66,69 +66,6 @@ run_cc_link_tests [list \ + "libno-plt-1a.so" \ + ] \ + [list \ +- "Build libno-plt-1b.so" \ +- "-shared tmpdir/no-plt-extern1a.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr libno-plt-1b.rd} \ +- {objdump -dwrj.text libno-plt-1b.dd}} \ +- "libno-plt-1b.so" \ +- ] \ +- [list \ +- "No PLT (dynamic 1a)" \ +- "$NOPIE_LDFLAGS tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1a.rd} {objdump -dwrj.text no-plt-1a.dd}} \ +- "no-plt-1a" \ +- ] \ +- [list \ +- "No PLT (dynamic 1b)" \ +- "tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/libno-plt-1a.so tmpdir/libno-plt-1b.so" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1b.rd} {objdump -dwrj.text no-plt-1b.dd}} \ +- "no-plt-1b" \ +- ] \ +- [list \ +- "No PLT (dynamic 1c)" \ +- "$NOPIE_LDFLAGS tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/libno-plt-1b.so" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1c.rd} {objdump -dwrj.text no-plt-1c.dd}} \ +- "no-plt-1c" \ +- ] \ +- [list \ +- "No PLT (PIE 1e)" \ +- "-pie tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1e.rd} {objdump -dwrj.text no-plt-1e.dd}} \ +- "no-plt-1e" \ +- ] \ +- [list \ +- "No PLT (PIE 1f)" \ +- "-pie tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/libno-plt-1a.so tmpdir/libno-plt-1b.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { dummy.s } \ +- {{readelf -Wr no-plt-1f.rd} {objdump -dwrj.text no-plt-1f.dd}} \ +- "no-plt-1f" \ +- ] \ +- [list \ +- "No PLT (PIE 1g)" \ +- "-pie tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/libno-plt-1b.so" \ +- "-Wa,-mx86-used-note=yes" \ +- { dummy.s } \ +- {{readelf -Wr no-plt-1g.rd} {objdump -dwrj.text no-plt-1g.dd}} \ +- "no-plt-1g" \ +- ] \ +- [list \ + "No PLT (dynamic 1h)" \ + "$NOPIE_LDFLAGS tmpdir/no-plt-check1b.o tmpdir/no-plt-main1.o \ + tmpdir/no-plt-func1.o tmpdir/no-plt-extern1b.o" \ +@@ -146,15 +83,6 @@ run_cc_link_tests [list \ + {{readelf -Wr no-plt-1i.rd} {objdump -dwrj.text no-plt-1i.dd}} \ + "no-plt-1i" \ + ] \ +- [list \ +- "No PLT (static 1j)" \ +- "-static tmpdir/no-plt-check1b.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1b.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- {{readelf -Wr no-plt-1j.rd} {objdump -dwrj.text no-plt-1j.dd}} \ +- "no-plt-1j" \ +- ] \ + ] + + run_ld_link_exec_tests [list \ +@@ -239,15 +167,6 @@ run_ld_link_exec_tests [list \ + "no-plt-1i" \ + "pass.out" \ + ] \ +- [list \ +- "No PLT (static 1j)" \ +- "-static tmpdir/no-plt-check1b.o tmpdir/no-plt-main1.o \ +- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1b.o" \ +- "-Wa,-mx86-used-note=yes" \ +- {dummy.s} \ +- "no-plt-1j" \ +- "pass.out" \ +- ] \ + ] + + # Run-time tests which require working IFUNC support. diff --git a/system/binutils/disable-static-1d.patch b/system/binutils/disable-static-1d.patch deleted file mode 100644 index daca64319..000000000 --- a/system/binutils/disable-static-1d.patch +++ /dev/null @@ -1,42 +0,0 @@ -The "No PLT (static 1d)" link test fails on pmmx and x86_64. -lea is being emitted instead of mov. - -https://bts.adelielinux.org/show_bug.cgi?id=170 -https://bts.adelielinux.org/show_bug.cgi?id=196 - ---- binutils-2.32/ld/testsuite/ld-x86-64/no-plt.exp 2019-01-19 10:01:34.000000000 -0600 -+++ binutils-2.32/ld/testsuite/ld-x86-64/no-plt.exp 2019-09-11 17:21:27.232257151 -0500 -@@ -100,15 +100,6 @@ run_cc_link_tests [list \ - "no-plt-1c" \ - ] \ - [list \ -- "No PLT (static 1d)" \ -- "-static tmpdir/no-plt-check1.o tmpdir/no-plt-main1.o \ -- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1.o" \ -- "-Wa,-mx86-used-note=yes" \ -- {dummy.s} \ -- {{readelf -Wr no-plt-1d.rd} {objdump -dwrj.text no-plt-1d.dd}} \ -- "no-plt-1d" \ -- ] \ -- [list \ - "No PLT (PIE 1e)" \ - "-pie tmpdir/no-plt-check1.o tmpdir/no-plt-main1.o \ - tmpdir/no-plt-func1.o tmpdir/no-plt-extern1.o" \ ---- binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-01-19 10:01:33.000000000 -0600 -+++ binutils-2.32/ld/testsuite/ld-i386/no-plt.exp 2019-09-11 18:03:48.012302603 -0500 -@@ -102,15 +102,6 @@ run_cc_link_tests [list \ - "no-plt-1c" \ - ] \ - [list \ -- "No PLT (static 1d)" \ -- "-static tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ -- tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ -- "-Wa,-mx86-used-note=yes" \ -- {dummy.s} \ -- {{readelf -Wr no-plt-1d.rd} {objdump -dwrj.text no-plt-1d.dd}} \ -- "no-plt-1d" \ -- ] \ -- [list \ - "No PLT (PIE 1e)" \ - "-pie tmpdir/no-plt-check1a.o tmpdir/no-plt-main1.o \ - tmpdir/no-plt-func1.o tmpdir/no-plt-extern1a.o" \ -- cgit v1.2.3-60-g2f50