From 6831aba29f5b52cb3ef26d37838e27aaac56ff5d Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Sat, 19 Jan 2019 20:45:31 +0100 Subject: [PATCH] Revert "Add valgrind suppressions for wcsrtombs optimizations" This reverts commit 5b16a353543ecec36ffda68269defb7b1b002f60. Per discussion, it's not desirable to add valgrind suppressions for outside our own code base (e.g. glibc in this case), especially when the suppressions may be platform-specific. There are better ways to deal with that, e.g. by providing local suppressions. Discussion: https://www.postgresql.org/message-id/flat/90ac0452-e907-e7a4-b3c8-15bd33780e62%402ndquadrant.com --- src/tools/valgrind.supp | 36 ------------------------------------ 1 file changed, 36 deletions(-) diff --git a/src/tools/valgrind.supp b/src/tools/valgrind.supp index fb08cf4fb87..af03051260b 100644 --- a/src/tools/valgrind.supp +++ b/src/tools/valgrind.supp @@ -212,39 +212,3 @@ Memcheck:Cond fun:PyObject_Realloc } - -# wcsrtombs uses some clever optimizations internally, which to valgrind -# may look like access to uninitialized data. For example AVX2 instructions -# load data in 256-bit chunks, irrespectedly of wchar length. gconv does -# somethink similar by loading data in 32bit chunks and then shifting the -# data internally. Neither of those actually uses the uninitialized part -# of the buffer, as far as we know. -# -# https://www.postgresql.org/message-id/90ac0452-e907-e7a4-b3c8-15bd33780e62@2ndquadrant.com - -{ - wcsnlen_optimized - Memcheck:Cond - ... - fun:wcsrtombs - fun:wcstombs - fun:wchar2char -} - -{ - wcsnlen_optimized_addr32 - Memcheck:Addr32 - ... - fun:wcsrtombs - fun:wcstombs - fun:wchar2char -} - -{ - gconv_transform_internal - Memcheck:Cond - fun:__gconv_transform_internal_utf8 - fun:wcsrtombs - fun:wcstombs - fun:wchar2char -}