-
Notifications
You must be signed in to change notification settings - Fork 2
/
freebsd-helgrind.supp
159 lines (158 loc) · 2.63 KB
/
freebsd-helgrind.supp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
# Suppressions for FreeBSD / Helgrind
{
HELGRIND-LIBTHR1
Helgrind:Race
obj:*/lib*/libthr.so.3*
}
{
HELGRIND-LIB-RTLD1
Helgrind:Race
obj:/libexec/ld-elf*.so.1
}
{
HELGRIND-PTHREAD-EXIT0
Helgrind:Race
fun:thr_exit
obj:*/lib*/libthr.so.3
obj:*/lib*/libthr.so.3
}
{
HELGRIND-PTHREAD-JOIN
Helgrind:Race
fun:_thr_try_gc
obj:*/lib*/libthr.so.3
fun:pthread_join_WRK
fun:pthread_join
}
{
HELGRIND-PTHREAD-EXIT
Helgrind:Race
...
fun:pthread_exit
}
{
HELGRIND-PTHREAD-BARRIER2
Helgrind:Race
fun:pthread_barrier_init
}
# added PJF
{
HELGRIND-EXIT1
Helgrind:Race
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
fun:__cxa_finalize
fun:exit
}
{
HELGRIND-EXIT2
Helgrind:Race
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
fun:_rtld_error
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
fun:__cxa_finalize
fun:exit
}
{
HELGRIND-EDIT3
Helgrind:Race
fun:_rtld_error
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
fun:__cxa_finalize
fun:exit
}
{
HELGRIND-EXIT3
Helgrind:Race
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
obj:/libexec/ld-elf*.so.1
fun:__cxa_finalize
fun:exit
}
# PJF not sure exactly what the cause of this is, but it looks like it is the
# tls used for pthread_self() with a conflict between pthread_create and
# mythread_wrapper which coverst create/join/exit
{
HELGRIND-PTHREAD-CREATE1
Helgrind:Race
obj:/libexec/ld-elf*.so.1
fun:_rtld_allocate_tls
obj:*/lib*/libthr.so.3
obj:*/lib*/libthr.so.3
fun:pthread_create
}
{
HELGRIND-PTHREAD-CREATE2
Helgrind:Race
fun:memset
obj:*/lib*/libthr.so.3
fun:pthread_create
}
# PJF again a pthread_self() hazard
{
HELGRIND-PTHREAD-SELF1
Helgrind:Race
fun:mythread_wrapper
obj:*/lib*/libthr.so.3*
}
{
HELGRIND-SEM-CLOCKWAIT1
Helgrind:Race
fun:sem_clockwait_np
}
{
HELGRIND-UMTX-OP1
Helgrind:Race
fun:_umtx_op
}
{
HELGRIND-SEM-POST1
Helgrind:Race
fun:sem_post
}
{
HELGRIND-GCC-UNWIND1
Helgrind:Race
obj:/lib/libgcc_s.so.1
}
{
HELGRIND-LIBC-PRINTF1
Helgrind:Race
fun:flockfile
}
{
HELGRIND-LIBC-PRINTF2
Helgrind:Race
fun:funlockfile
}
{
HELGRIND-MUTEX-LOCK1
Helgrind:Race
fun:memset
obj:*/lib*/libthr.so.3
}
{
HELGRIND-LIBOMP
Helgrind:Race
obj:/usr/lib*/libomp.so
}
{
HELGRIND-CXX-UNWIND
Helgrind:Race
obj:/lib/libcxxrt.so.1
obj:/lib/libthr.so.3
obj:/lib/libthr.so.3
obj:/lib/libthr.so.3
obj:/lib/libgcc_s.so.1
fun:_Unwind_ForcedUnwind
}
{
HELGRIND-GUARD-VARIABLE
Helgrind:Race
fun:_ZL11*
}