diff --git a/valgrind-3.12.0-helgrind-dl_allocate_tls-supp.patch b/valgrind-3.12.0-helgrind-dl_allocate_tls-supp.patch new file mode 100644 index 0000000..339a839 --- /dev/null +++ b/valgrind-3.12.0-helgrind-dl_allocate_tls-supp.patch @@ -0,0 +1,47 @@ +commit 4b00bfdd73a2cd56a4d9e8de0b249eed2a1b982f +Author: petarj +Date: Fri Feb 3 00:34:52 2017 +0000 + + add suppression for helgrind/tests/tc22_exit_w_lock + + Function pthread_create indirectly calls function memcpy. Helgrind + considers that memcpy is not thread safe function. For error reported + from pthread_create there is the suppression helgrind---_dl_allocate_tls + in the file glibc-2.34567-NPTL-helgrind.supp. + Since glibc version 2.23, memcpy is implemented by __mempcpy_inline. + This causes that call to memcpy from pthread_create is no longer + recognized by the suppression. + In test helgrind/tests/tc22_exit_w_lock, pthread_create is called twice, + and second call reports error, which causes failing of the test. + This patch adds suppression for glibc 2.23 and greater. + + Patch by Tamara Vlahovic. + + Related issue #375806. + + + git-svn-id: svn://svn.valgrind.org/valgrind/trunk@16219 a5019735-40e9-0310-863c-91ae7b9d1cf9 + +diff --git a/glibc-2.34567-NPTL-helgrind.supp b/glibc-2.34567-NPTL-helgrind.supp +index ed105b8..7ebd2c4 100644 +--- a/glibc-2.34567-NPTL-helgrind.supp ++++ b/glibc-2.34567-NPTL-helgrind.supp +@@ -267,6 +267,18 @@ + fun:pthread_create@* + } + ++{ ++ helgrind---_dl_allocate_tls2 ++ Helgrind:Race ++ fun:memcpy ++ fun:__mempcpy_inline ++ fun:_dl_allocate_tls_init ++ ... ++ fun:pthread_create@@GLIBC_2.2* ++ fun:pthread_create_WRK ++ fun:pthread_create@* ++} ++ + #################################################### + # To do with GNU libgomp + # diff --git a/valgrind.spec b/valgrind.spec index 919958d..a89a950 100644 --- a/valgrind.spec +++ b/valgrind.spec @@ -113,6 +113,9 @@ Patch14: valgrind-3.12.0-cd-dvd-ioctl.patch # KDE#373069 force old implementation of std::string for leak_cpp_interior test Patch15: valgrind-3.12.0-tests-cxx11_abi_0.patch +# KDE#375806 add suppression for helgrind/tests/tc22_exit_w_lock +Patch16: valgrind-3.12.0-helgrind-dl_allocate_tls-supp.patch + %if %{build_multilib} # Ensure glibc{,-devel} is installed for both multilib arches BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so @@ -237,6 +240,7 @@ Valgrind User Manual for details. %patch13 -p1 %patch14 -p1 %patch15 -p1 +%patch16 -p1 %build # We need to use the software collection compiler and binutils if available. @@ -440,6 +444,7 @@ echo ===============END TESTING=============== - Add valgrind-3.12.0-x86-gdt-and-ss.patch - Add valgrind-3.12.0-cd-dvd-ioctl.patch - Add valgrind-3.12.0-tests-cxx11_abi_0.patch +- Add valgrind-3.12.0-helgrind-dl_allocate_tls-supp.patch * Fri Feb 17 2017 Mark Wielaard - 3.12.0-5 - Add valgrind-3.12.0-ppc64-r2.patch (#1424367)