From 560dd12cc4904552a998d81db626f7259bdb9ea9 Mon Sep 17 00:00:00 2001 From: Paul Floyd Date: Sat, 18 Jun 2022 08:59:08 +0200 Subject: [PATCH] Add some FreeBSD Helgrind suppressions These are mainly for debug builds of libthr.so for which 1. the lib name will be libthr.so.3.full 2. callstacks change because of inlining 3. more symbols are available --- freebsd-helgrind.supp | 70 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 64 insertions(+), 6 deletions(-) diff --git a/freebsd-helgrind.supp b/freebsd-helgrind.supp index 55ed8394b5..ee6c424957 100644 --- a/freebsd-helgrind.supp +++ b/freebsd-helgrind.supp @@ -3,7 +3,7 @@ { HELGRIND-LIBTHR1 Helgrind:Race - obj:*/lib*/libthr.so.3 + obj:*/lib*/libthr.so.3* } { HELGRIND-LIB-LDRT1 @@ -22,7 +22,6 @@ Helgrind:Race fun:_pthread_exit_mask fun:pthread_exit - obj:*/lib*/libthr.so.3 } { HELGRIND-PTHREAD-EXIT2 @@ -30,7 +29,6 @@ fun:__sys_thr_exit fun:_pthread_exit_mask fun:pthread_exit - obj:*/lib*/libthr.so.3 } { HELGRIND-PTHREAD-EXIT4 @@ -44,10 +42,9 @@ HELGRIND-PTHREAD-EXIT5 Helgrind:Race fun:__sys_thr_exit - obj:*/lib*/libthr.so.3 + obj:*/lib*/libthr.so.3* fun:_pthread_exit_mask fun:pthread_exit - obj:/lib/libthr.so.3 } { HELGRIND-PTHREAD-EXIT6 @@ -61,7 +58,45 @@ obj:*/lib*/libthr.so.3 obj:*/lib*/libthr.so.3 fun:pthread_exit +} +{ + HELGRIND-PTHREAD-EXIT7 + Helgrind:Race + obj:*/lib*/libc.so.7 + fun:_malloc_thread_cleanup + obj:*/lib*/libthr.so.3 obj:*/lib*/libthr.so.3 + fun:pthread_exit +} +{ + HELGRIND-PTHREAD-EXIT8 + Helgrind:Race + fun:__cxa_thread_call_dtors + obj:*/lib*/libthr.so.3 + fun:pthread_exit +} +{ + HELGRIND-PTHREAD-EXIT9 + Helgrind:Race + fun:thr_exit + obj:*/lib*/libthr.so.3* + fun:_pthread_exit_mask +} +{ + HELGRIND-PTHREAD-EXIT10 + Helgrind:Race + obj:*/lib*/libc.so.7 + fun:_malloc_thread_cleanup + obj:*/lib*/libthr.so.3* + fun:_pthread_exit_mask + fun:_Tthr_exit +} +{ + HELGRIND-PTHREAD-EXIT11 + Helgrind:Race + fun:__cxa_thread_call_dtors + fun:_pthread_exit_mask + fun:_Tthr_exit } { HELGRIND-PTHREAD-BARRIER2 @@ -126,12 +161,27 @@ obj:*/lib*/libthr.so.3 fun:pthread_create } +# same as previous, but with debug build of libthr +{ + HELGRIND-PTHREAD-CREATE3 + Helgrind:Race + fun:memset + fun:_thr_alloc + fun:pthread_create +} +# another for debug build of libthr +{ + HELGRIND-PTHREAD-CREATE4 + Helgrind:Race + fun:thr_new + fun:pthread_create +} # PJF again a pthread_self() hazard { HELGRIND-PTHREAD-SELF1 Helgrind:Race fun:mythread_wrapper - obj:*/lib*/libthr.so.3 + obj:*/lib*/libthr.so.3* } { HELGRIND-SEM-CLOCKWAIT1 @@ -169,6 +219,14 @@ fun:memset obj:*/lib*/libthr.so.3 } +{ + HELGRIND-MUTEX-LOCK2 + Helgrind:Race + fun:memset + fun:__crt_calloc + fun:__thr_calloc + fun:mutex_init +} { HELGRIND-LIBOMP Helgrind:Race -- 2.43.5