From: Paul Floyd Date: Sat, 17 Feb 2024 17:24:36 +0000 (+0100) Subject: musl: updates to suppressions and drd pthread detection script X-Git-Tag: VALGRIND_3_23_0~152 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d064952329c6961b93814104d545e5a14b0a6d9a;p=thirdparty%2Fvalgrind.git musl: updates to suppressions and drd pthread detection script Mostly for DRD. --- diff --git a/drd/tests/std_thread2.supp b/drd/tests/std_thread2.supp index 69b210c46..4f30560cb 100644 --- a/drd/tests/std_thread2.supp +++ b/drd/tests/std_thread2.supp @@ -45,3 +45,45 @@ obj:/libexec/ld-elf*.so.1 } +{ + drd-musl1 + drd:ConflictingAccess + fun:pthread_exit +} + +{ + drd-musl2 + drd:ConflictingAccess + fun:__wake + fun:__tl_unlock + fun:__tl_unlock + fun:pthread_create +} + +{ + drd-musl3 + drd:ConflictingAccess + fun:a_store + fun:__tl_unlock + fun:pthread_create +} + +{ + drd-musl4 + drd:ConflictingAccess + fun:__wait +} + +{ + drd-musl5 + drd:ConflictingAccess + fun:a_cas + fun:__tl_lock +} + +{ + drd-musl6 + drd:ConflictingAccess + fun:__tl_lock +} + diff --git a/drd/tests/supported_libpthread b/drd/tests/supported_libpthread index d42ea1a39..80bf8deb4 100755 --- a/drd/tests/supported_libpthread +++ b/drd/tests/supported_libpthread @@ -16,6 +16,10 @@ if [ "$(uname)" = "Linux" ]; then # NPTL exit 0 fi + if [ -x /lib/ld-musl-*.so.1 ] ; then + # musl + exit 0 + fi # configuration string is empty or does start with "linuxthreads". exit 1 fi diff --git a/musl.supp b/musl.supp index 864172a24..d510acbb7 100644 --- a/musl.supp +++ b/musl.supp @@ -2,7 +2,7 @@ # See: https://www.openwall.com/lists/musl/2017/06/15/4 { - musl-dynlink-false-positive1 + musl-dynlink1 Memcheck:Leak fun:calloc fun:load_direct_deps @@ -14,7 +14,7 @@ } { - musl-dynlink-false-positive2 + musl-dynlink2 Memcheck:Leak fun:calloc fun:load_direct_deps @@ -25,7 +25,7 @@ } { - musl-dynlink-false-positive3 + musl-dynlink3 Memcheck:Leak fun:calloc fun:load_library @@ -36,7 +36,7 @@ } { - musl-dynlink-false-positive4 + musl-dynlink4 Memcheck:Leak fun:calloc fun:load_library @@ -44,3 +44,94 @@ fun:__dls3 fun:__dls2 } + +{ + musl-helgrind-pthread_exit + Helgrind:Race + ... + fun:pthread_exit +} + +{ + musl-helgrind-pthread_create + Helgrind:Race + ... + fun:pthread_create +} + +{ + musl-drd-pthread_exit + drd:ConflictingAccess + ... + fun:pthread_exit +} + +{ + musl-drd-pthread_create + drd:ConflictingAccess + ... + fun:pthread_create +} + +{ + musl-drd-setlocale + drd:ConflictingAccess + ... + fun:setlocale +} + +{ + musl-drd-__tl_lock + drd:ConflictingAccess + fun:__wait + fun:__tl_lock +} + +{ + musl-drd-printf_core + drd:ConflictingAccess + fun:__fwritex + fun:out + fun:printf_core +} + +{ + musl-drd-__ofl_lock + drd:ConflictingAccess + fun:__ofl_lock +} + +{ + musl-drd-__funcs_on_exit + drd:ConflictingAccess + fun:__funcs_on_exit +} + +{ + musl-drd-fwrite1 + drd:ConflictingAccess + fun:__stdio_write + fun:fwrite +} + +{ + musl-drd-fwrite2 + drd:ConflictingAccess + fun:__fwritex + fun:fwrite +} + +{ + musl-drd-freeaddrinfo + drd:ConflictingAccess + fun:__lock + fun:freeaddrinfo +} + +{ + musl-drd-exit + drd:ConflictingAccess + fun:__lock + fun:__funcs_on_exit + fun:exit +}