diff options
author | Leo Famulari <leo@famulari.name> | 2019-02-05 00:02:57 +0100 |
---|---|---|
committer | Leo Famulari <leo@famulari.name> | 2019-02-05 00:19:49 +0100 |
commit | 99ee274f0de8868abea66c4cab0cf1ddc839ded9 (patch) | |
tree | f7caa9bdc51875c8befbc2f098e4fd78208ea608 /gnu/packages/patches | |
parent | 1d1b0b1fb18689b4b5b78f30c1ccae31e1b91cb7 (diff) | |
download | guix-99ee274f0de8868abea66c4cab0cf1ddc839ded9.tar.gz |
gnu: Remove unused patch 'glibc-memchr-overflow-i686.patch'.
This is a followup to commit 67d527e35e367c9e9e89ec01cda2ce32cabd2d89. * gnu/packages/patches/glibc-memchr-overflow-i686.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/glibc-memchr-overflow-i686.patch | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/gnu/packages/patches/glibc-memchr-overflow-i686.patch b/gnu/packages/patches/glibc-memchr-overflow-i686.patch deleted file mode 100644 index 0b1b5b9f96..0000000000 --- a/gnu/packages/patches/glibc-memchr-overflow-i686.patch +++ /dev/null @@ -1,74 +0,0 @@ -Extracted from glibc upstream git repository. Changes to the ChangeLog have -been removed. This patch is needed to fix spurious segmentation faults on -i686. - -From 3abeeec5f46ff036bd9df60bb096e20314ccd078 Mon Sep 17 00:00:00 2001 -From: Adhemerval Zanella <adhemerval.zanella@linaro.org> -Date: Tue, 14 Mar 2017 14:16:13 -0300 -Subject: [PATCH] Fix i686 memchr overflow calculation (BZ#21182) - -This patch fixes the regression added by 23d2770 for final address -overflow calculation. The subtraction of the considered size (16) -at line 120 is at wrong place, for sizes less than 16 subsequent -overflow check will not take in consideration an invalid size (since -the subtraction will be negative). Also, the lea instruction also -does not raise the carry flag (CF) that is used in subsequent jbe -to check for overflow. - -The fix is to follow x86_64 logic from 3daef2c where the overflow -is first check and a sub instruction is issued. In case of resulting -negative size, CF will be set by the sub instruction and a NULL -result will be returned. The patch also add similar tests reported -in bug report. - -Checked on i686-linux-gnu and x86_64-linux-gnu. - - * string/test-memchr.c (do_test): Add BZ#21182 checks for address - near end of a page. - * sysdeps/i386/i686/multiarch/memchr-sse2.S (__memchr): Fix - overflow calculation. ---- - string/test-memchr.c | 6 ++++++ - sysdeps/i386/i686/multiarch/memchr-sse2.S | 2 +- - 3 files changed, 15 insertions(+), 1 deletion(-) - -diff --git a/string/test-memchr.c b/string/test-memchr.c -index 2403c9242b..669e092e7d 100644 ---- a/string/test-memchr.c -+++ b/string/test-memchr.c -@@ -210,6 +210,12 @@ test_main (void) - do_test (0, i, i + 1, i + 1, 0); - } - -+ /* BZ#21182 - wrong overflow calculation for i686 implementation -+ with address near end of the page. */ -+ for (i = 2; i < 16; ++i) -+ /* page_size is in fact getpagesize() * 2. */ -+ do_test (page_size / 2 - i, i, i, 1, 0x9B); -+ - do_random_tests (); - return ret; - } -diff --git a/sysdeps/i386/i686/multiarch/memchr-sse2.S b/sysdeps/i386/i686/multiarch/memchr-sse2.S -index 910679cfc0..e41f324a77 100644 ---- a/sysdeps/i386/i686/multiarch/memchr-sse2.S -+++ b/sysdeps/i386/i686/multiarch/memchr-sse2.S -@@ -117,7 +117,6 @@ L(crosscache): - - # ifndef USE_AS_RAWMEMCHR - jnz L(match_case2_prolog1) -- lea -16(%edx), %edx - /* Calculate the last acceptable address and check for possible - addition overflow by using satured math: - edx = ecx + edx -@@ -125,6 +124,7 @@ L(crosscache): - add %ecx, %edx - sbb %eax, %eax - or %eax, %edx -+ sub $16, %edx - jbe L(return_null) - lea 16(%edi), %edi - # else --- -2.12.2 - |