blob: f7769c7c5bfd5abbaa1d73cf3527625584b4bc1d (
plain)
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
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
|
# Suppressions for Darwin 9.x / Mac OS X 10.5 Leopard
##----------------------------------------------------------------------##
# Memcheck
##----------------------------------------------------------------------##
{
mach_msg_trap-1
Memcheck:Param
mach_msg(msg.msgh_remote_port)
fun:mach_msg_trap
obj:/System/Library/Frameworks/CoreFoundation*
obj:/System/Library/Frameworks/ApplicationServices*
}
{
mach_msg_trap-2
Memcheck:Param
mach_msg(msg.msgh_remote_port)
fun:mach_msg_trap
obj:/System/Library/Frameworks/CoreFoundation*
obj:/System/Library/Frameworks/CoreServices*
}
{
mach_msg_trap-3
Memcheck:Param
mach_msg(msg.msgh_remote_port)
fun:mach_msg_trap
obj:/System/Library/Frameworks/CoreFoundation*
obj:/System/Library/Frameworks/Carbon*
}
{
mach_msg_trap-4
Memcheck:Param
mach_msg(msg.msgh_remote_port)
fun:mach_msg_trap
obj:/System/Library/Frameworks/CoreFoundation*
obj:/System/Library/Frameworks/CoreFoundation*
}
{
mach_msg_trap-5
Memcheck:Param
mach_msg(msg.msgh_remote_port)
fun:mach_msg_trap
obj:/System/Library/Frameworks/CoreFoundation*
obj:/System/Library/Frameworks/AppKit*
}
{
macos-Cond-1
Memcheck:Cond
fun:GetVariationInfoFromName
obj:/System/Library/Frameworks/ApplicationServices*
obj:/System/Library/Frameworks/ApplicationServices*
}
{
macos-Cond-2
Memcheck:Cond
fun:*PMMutex*Lock*
obj:/System/Library/Frameworks/ApplicationServices*
obj:/System/Library/Frameworks/ApplicationServices*
}
{
macos-Cond-3
Memcheck:Cond
fun:sseCGSBlendXXXX8888
obj:/System/Library/Frameworks/ApplicationServices*
obj:/System/Library/Frameworks/ApplicationServices*
}
{
macos-Cond-4
Memcheck:Cond
fun:*CASettingsStorage*RefreshSettings*
obj:/System/Library/Frameworks/CoreAudio*
obj:/System/Library/Frameworks/CoreAudio*
}
{
macos-Cond-5
Memcheck:Cond
fun:gle*
obj:/System/Library/Frameworks/OpenGL*
obj:/System/Library/Frameworks/OpenGL*
}
{
macos-Cond-6
Memcheck:Cond
fun:pthread_rwlock_init$UNIX2003
fun:main
}
# afaict this is legit. Might be caused by setenv("VAR=")
# where the value string is empty (not sure)
{
macos-Cond-7
Memcheck:Cond
fun:__setenv
fun:putenv*
}
{
macos-futimes-1
Memcheck:Param
futimes(tvp[1])
fun:futimes
obj:/usr/lib/libSystem*
obj:/usr/lib/libSystem*
}
{
macos-vsyslog-hole
Memcheck:Param
socketcall.sendto(msg)
fun:sendto$NOCANCEL$UNIX2003
fun:vsyslog
}
# Still-reachable memory.
# I chopped this one off at libSystem_initializer, there were more frames.
{
darwin-still-reachable-1
Memcheck:Leak
fun:calloc
fun:dwarf2_unwind_dyld_add_image_hook
fun:_ZN4dyld19registerAddCallbackEPFvPK11mach_headerlE
fun:_dyld_register_func_for_add_image
fun:__keymgr_initializer
fun:libSystem_initializer
}
# I chopped this one off at libSystem_initializer, there were more frames.
{
darwin-still-reachable-2
Memcheck:Leak
fun:malloc
fun:get_or_create_key_element
fun:_keymgr_get_and_lock_processwide_ptr_2
fun:dwarf2_unwind_dyld_add_image_hook
fun:_ZN4dyld19registerAddCallbackEPFvPK11mach_headerlE
fun:_dyld_register_func_for_add_image
fun:__keymgr_initializer
fun:libSystem_initializer
}
{
darwin-still-reachable-3
Memcheck:Leak
fun:malloc
fun:__smakebuf
fun:__swsetup
fun:__sfvwrite
fun:puts
}
# Genuine leaks.
# See https://bugs.kde.org/show_bug.cgi?id=188572 about this; it's
# unavoidable due to BSD setenv() semantics.
{
macos-__setenv-leak-see-our-bug-188572
Memcheck:Leak
fun:malloc_zone_malloc
fun:__setenv
fun:setenv$UNIX2003
}
{
macos-localeconv-leak
Memcheck:Leak
fun:malloc
fun:localeconv_l
fun:__vfprintf
fun:vsnprintf
}
{
macos-TFontFeatures::TFontFeatures(unsigned long)-uninitialised-stack-val
Memcheck:Cond
fun:_ZN13TFontFeaturesC2Em
fun:_ZNK9TBaseFont12CopyFeaturesEv
}
# Conditional jump or move depends on uninitialised value(s)
# at 0x4E5CD59: _DPSNextEvent (in /System/Library/Frameworks
# /AppKit.framework/Versions/C/AppKit)
# by 0x4E5BF87: -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
# (in /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit)
# by 0x4E54F9E: -[NSApplication run] (in /System/Library/Frameworks
# /AppKit.framework/Versions/C/AppKit)
# Uninitialised value was created by a stack allocation
# at 0x4E5C450: _DPSNextEvent (in /System/Library/Frameworks
# /AppKit.framework/Versions/C/AppKit)
{
macos-_DPSNextEvent-stack-allocated-uninit
Memcheck:Cond
fun:_DPSNextEvent
}
##----------------------------------------------------------------------##
# Helgrind
##----------------------------------------------------------------------##
# These ones were necessary to give no errors on a tiny non-threaded
# program. I don't know if they're real problems or false positives (njn).
# keymgr seems to deliberately do some bogus actions, and if they are bogus,
# it passes the error codes back to the caller.
{
__keymgr_initializer lock failed
Helgrind:PthAPIerror
fun:pthread_mutex_lock
fun:_dyld_register_func_for_*_image
fun:__keymgr_initializer
fun:libSystem_initializer
}
{
__keymgr_initializer unlock failed
Helgrind:PthAPIerror
fun:pthread_mutex_unlock
fun:_dyld_register_func_for_*_image
fun:__keymgr_initializer
fun:libSystem_initializer
}
{
__keymgr_initializer bogus unlock
Helgrind:UnlockBogus
fun:pthread_mutex_unlock
fun:_dyld_register_func_for_*_image
fun:__keymgr_initializer
fun:libSystem_initializer
}
# These ones were necessary to give no errors on a tiny threaded program.
# I don't know if they're real problems or false positives (njn).
#{
# helgrind-darwinlibc-nuke-everything-in-dyld
# Helgrind:Race
# obj:/usr/lib/dyld
#}
{
helgrind-darwinlibc-nuke-everything-in-libSystem.B.dylib
Helgrind:Race
obj:/usr/lib/libSystem.B.dylib
}
# This would be better as "fun:\?\?\?" but string matching doesn't seem to
# allow escaping meta-chars.
#
# This is very bad .. not only will it hide races in any
# un-identified piece of code, the ??? also matches any 3-char
# function name.
{
helgrind-darwinlibc-nuke-everything-in-???-(unknown-code)
Helgrind:Race
fun:???
}
{
helgrind-darwinlibc--mythread_wrapper-*thread*start*
Helgrind:Race
fun:mythread_wrapper
fun:*thread*start*
}
{
helgrind-darwinlibc--pthread_create_WRK-pthread_create
Helgrind:Race
fun:pthread_create_WRK
fun:pthread_create
}
# Thread #9: Bug in libpthread: recursive write lock granted on
# mutex/wrlock which does not support recursion
# at 0x18696: pthread_cond_wait* (hg_intercepts.c:655)
# by 0x2300B8: pthread_rwlock_wrlock$UNIX2003 (in /usr/lib/libSystem.B.dylib)
# by 0x18F41: pthread_rwlock_wrlock* (hg_intercepts.c:1177)
#
# no idea what this is about
#
{
helgrind-darwin9--pthread-rwlock-kludgery
Helgrind:Misc
fun:pthread_cond_wait*
fun:pthread_rwlock_*lock*
fun:pthread_rwlock_*lock*
}
|