delete valgrind-3.21.0-no-memcpy-replace-check.patch
This commit is contained in:
parent
4295b515b7
commit
b0b6accc12
@ -1,54 +0,0 @@
|
||||
diff --git a/memcheck/tests/overlap.vgtest b/memcheck/tests/overlap.vgtest
|
||||
index 54a0baacf..eba65897c 100644
|
||||
--- a/memcheck/tests/overlap.vgtest
|
||||
+++ b/memcheck/tests/overlap.vgtest
|
||||
@@ -1,2 +1,4 @@
|
||||
prog: overlap
|
||||
vgopts: -q
|
||||
+# https://bugs.kde.org/show_bug.cgi?id=402833
|
||||
+prereq: ! ../../tests/arch_test amd64
|
||||
diff --git a/shared/vg_replace_strmem.c b/shared/vg_replace_strmem.c
|
||||
index 8de6a0698..79e640189 100644
|
||||
--- a/shared/vg_replace_strmem.c
|
||||
+++ b/shared/vg_replace_strmem.c
|
||||
@@ -1128,8 +1128,15 @@ static inline void my_exit ( int x )
|
||||
#define MEMMOVE(soname, fnname) \
|
||||
MEMMOVE_OR_MEMCPY(20181, soname, fnname, 0)
|
||||
|
||||
-#define MEMCPY(soname, fnname) \
|
||||
+/* See https://bugs.kde.org/show_bug.cgi?id=402833
|
||||
+ why we disable the overlap check on x86_64. */
|
||||
+#if defined(VGP_amd64_linux)
|
||||
+ #define MEMCPY(soname, fnname) \
|
||||
+ MEMMOVE_OR_MEMCPY(20180, soname, fnname, 0)
|
||||
+#else
|
||||
+ #define MEMCPY(soname, fnname) \
|
||||
MEMMOVE_OR_MEMCPY(20180, soname, fnname, 1)
|
||||
+#endif
|
||||
|
||||
#if defined(VGO_linux)
|
||||
/* For older memcpy we have to use memmove-like semantics and skip
|
||||
@@ -1704,6 +1711,14 @@ static inline void my_exit ( int x )
|
||||
|
||||
/*-------------------- memcpy_chk --------------------*/
|
||||
|
||||
+/* See https://bugs.kde.org/show_bug.cgi?id=402833
|
||||
+ why we disable the overlap check on x86_64. */
|
||||
+#if defined(VGP_amd64_linux)
|
||||
+ #define CHECK_OVERLAP 0
|
||||
+#else
|
||||
+ #define CHECK_OVERLAP 1
|
||||
+#endif
|
||||
+
|
||||
#define GLIBC26___MEMCPY_CHK(soname, fnname) \
|
||||
void* VG_REPLACE_FUNCTION_EZU(20300,soname,fnname) \
|
||||
(void* dst, const void* src, SizeT len, SizeT dstlen ); \
|
||||
@@ -1717,7 +1732,7 @@ static inline void my_exit ( int x )
|
||||
RECORD_COPY(len); \
|
||||
if (len == 0) \
|
||||
return dst; \
|
||||
- if (is_overlap(dst, src, len, len)) \
|
||||
+ if (CHECK_OVERLAP && is_overlap(dst, src, len, len)) \
|
||||
RECORD_OVERLAP_ERROR("memcpy_chk", dst, src, len); \
|
||||
if ( dst > src ) { \
|
||||
d = (HChar *)dst + len - 1; \
|
Loading…
Reference in New Issue
Block a user