valgrind.supp 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303
  1. # Pass this file to Valgrind with "--suppressions=tools/valgrind.supp"
  2. # Intentional thread / memory leak in DM and nanbench.
  3. {
  4. nanobench_and_dm_keepalive_thread_leak
  5. Memcheck:Leak
  6. match-leak-kinds: possible,definite
  7. ...
  8. fun:start_keepalive
  9. ...
  10. fun:main
  11. ...
  12. }
  13. # Third party lib, driver issues.
  14. {
  15. ati_driver_bug_1
  16. Memcheck:Param
  17. ioctl(generic)
  18. fun:ioctl
  19. ...
  20. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  21. }
  22. {
  23. ati_driver_bug_2
  24. Memcheck:Cond
  25. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  26. }
  27. {
  28. ati_driver_bug_3
  29. Memcheck:Addr8
  30. ...
  31. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  32. }
  33. {
  34. ati_driver_bug_4
  35. Memcheck:Addr4
  36. ...
  37. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  38. }
  39. {
  40. ati_driver_bug_5
  41. Memcheck:Addr2
  42. ...
  43. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  44. }
  45. {
  46. ati_driver_bug_6
  47. Memcheck:Addr1
  48. ...
  49. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  50. }
  51. {
  52. ati_driver_bug_7
  53. Memcheck:Leak
  54. fun:malloc
  55. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  56. }
  57. {
  58. driver_bug_8
  59. Memcheck:Overlap
  60. fun:strcpy
  61. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  62. }
  63. {
  64. ati_driver_bug_9
  65. Memcheck:Leak
  66. fun:calloc
  67. obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
  68. }
  69. {
  70. ati_driver_bug_10
  71. Memcheck:Leak
  72. fun:malloc
  73. obj:/usr/lib/fglrx/fglrx-libGL.so.1.2
  74. }
  75. {
  76. nv_driver_bug_1
  77. Memcheck:Param
  78. write(buf)
  79. ...
  80. obj:*/libnvidia-glcore.so*
  81. }
  82. {
  83. nv_driver_bug_2
  84. Memcheck:Cond
  85. ...
  86. obj:*/libnvidia-glcore.so*
  87. }
  88. {
  89. nv_driver_bug_3
  90. Memcheck:Leak
  91. fun:calloc
  92. obj:/usr/lib*/libGL.so*
  93. }
  94. {
  95. nv_driver_bug_4
  96. Memcheck:Param
  97. sendmsg(msg.msg_iov[0])
  98. fun:sendmsg
  99. obj:*/libGLX_nvidia.so*
  100. }
  101. {
  102. nv_driver_bug_5
  103. Memcheck:Leak
  104. fun:malloc
  105. obj:*/libGLX_nvidia.so*
  106. }
  107. {
  108. #Fixed by FontConfig 2.9.0
  109. #http://cgit.freedesktop.org/fontconfig/commit/?id=1c475d5c8cb265ac939d6b9e097666e300162511
  110. font_config_bug_1
  111. Memcheck:Addr4
  112. fun:FcConfigFileExists
  113. }
  114. {
  115. #https://bugs.freedesktop.org/show_bug.cgi?id=8215
  116. #https://bugs.freedesktop.org/show_bug.cgi?id=8428
  117. #FcPattern uses 'intptr_t elts_offset' instead of 'FcPatternEltPtr elts',
  118. #which confuses valgrind.
  119. font_config_bug_2
  120. Memcheck:Leak
  121. fun:*alloc
  122. ...
  123. fun:Fc*Add*
  124. }
  125. {
  126. #Same root cause as font_config_bug_2.
  127. #The 'leak' here is a copy of rule values, as opposed to new values.
  128. font_config_bug_3
  129. Memcheck:Leak
  130. fun:*alloc
  131. ...
  132. fun:FcConfigValues
  133. fun:FcConfigSubstituteWithPat
  134. fun:FcFontRenderPrepare
  135. }
  136. {
  137. #Same root cause as font_config_bug_2.
  138. #The 'leak' is copies of font or pattern values into returned pattern values.
  139. font_config_bug_4
  140. Memcheck:Leak
  141. fun:*alloc
  142. ...
  143. fun:FcValue*
  144. fun:FcFontRenderPrepare
  145. }
  146. {
  147. font_config_bug_5
  148. Memcheck:Leak
  149. fun:malloc
  150. obj:*/libfontconfig.so.1.8.0
  151. fun:FcConfigSubstituteWithPat
  152. }
  153. {
  154. font_config_bug_6
  155. Memcheck:Leak
  156. fun:*alloc
  157. ...
  158. obj:*/libfontconfig.so.1.8.0
  159. fun:FcFont*
  160. }
  161. {
  162. zlib_bug_1
  163. Memcheck:Cond
  164. fun:inflateReset2
  165. fun:inflateInit2_
  166. fun:png_create_read_struct_2
  167. fun:png_create_read_struct
  168. }
  169. {
  170. zlib_bug_2
  171. Memcheck:Cond
  172. fun:inflateReset2
  173. fun:inflateInit2_
  174. fun:_ZN12_GLOBAL__N_17doFlateEbP8SkStreamP9SkWStream
  175. fun:_ZN7SkFlate7InflateEP8SkStreamP9SkWStream
  176. }
  177. # Why is it OK to suppress this?
  178. {
  179. SkRTConfRegistry_bug_1
  180. Memcheck:Leak
  181. fun:_Znwm
  182. fun:_ZN16SkRTConfRegistry12registerConfEP12SkRTConfBase
  183. }
  184. # The gpu_issue_* suppressions suppress issues that cannot be reproduced locally. These appear to be
  185. # due to valgrind not knowing about memory mapped by the ATI driver via glMapBuffer.
  186. {
  187. gpu_issue_1
  188. Memcheck:Addr2
  189. fun:_ZNK5GrGpu18getQuadIndexBufferEv
  190. }
  191. {
  192. gpu_issue_2
  193. Memcheck:Addr2
  194. fun:_ZN24GrAAHairLinePathRenderer6CreateEP9GrContext
  195. }
  196. {
  197. gpu_issue_3
  198. Memcheck:Addr2
  199. fun:_ZN16GrAARectRenderer21aaFillRectIndexBufferEP5GrGpu
  200. }
  201. {
  202. gpu_issue_4
  203. Memcheck:Addr8
  204. fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect
  205. }
  206. {
  207. gpu_issue_5
  208. Memcheck:Addr8
  209. fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE
  210. }
  211. {
  212. gpu_issue_6
  213. Memcheck:Addr8
  214. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
  215. }
  216. {
  217. gpu_issue_7
  218. Memcheck:Addr4
  219. fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE
  220. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
  221. }
  222. {
  223. gpu_issue_8
  224. Memcheck:Addr4
  225. fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect
  226. }
  227. {
  228. gpu_issue_9
  229. Memcheck:Addr2
  230. fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE
  231. }
  232. {
  233. gpu_issue_10
  234. Memcheck:Addr4
  235. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
  236. }
  237. {
  238. gpu_issue_11
  239. Memcheck:Addr2
  240. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
  241. }
  242. {
  243. gpu_issue_12
  244. Memcheck:Addr8
  245. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
  246. }
  247. {
  248. gpu_issue_13
  249. Memcheck:Addr4
  250. fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE
  251. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
  252. }
  253. {
  254. gpu_issue_14
  255. Memcheck:Addr4
  256. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
  257. }
  258. {
  259. gpu_issue_15
  260. Memcheck:Addr2
  261. fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
  262. }
  263. {
  264. libjpeg_turbo_bug4550_1
  265. Memcheck:Cond
  266. fun:_Z26S32A_Opaque_BlitRow32_SSE4PjPKjij
  267. fun:_ZN14Sprite_D32_S328blitRectEiiii
  268. }
  269. {
  270. libjpeg_turbo_bug4550_2
  271. Memcheck:Cond
  272. fun:_ZL15S32A_D565_BlendPtPKjijii
  273. fun:_ZN26Sprite_D16_S32_BlitRowProc8blitRectEiiii
  274. }
  275. {
  276. libjpeg_turbo_bug4550_3
  277. Memcheck:Cond
  278. fun:_ZN12_GLOBAL__N_120ConvolveHorizontallyILb0EEEvPKhRK21SkConvolutionFilter1DPh
  279. fun:_Z14BGRAConvolve2DPKhibRK21SkConvolutionFilter1DS3_iPhRK18SkConvolutionProcsb
  280. }
  281. #Something odd happening in with SkRasterPipeline in GrConvertPixels. Seems bogus after
  282. #investigation. MSAN/ASAN have no complaints. Complaining about conditional jump or use
  283. #of var that is "uninitialized" but it definitely is.
  284. {
  285. grconvertpixels_rasterpipeline
  286. Memcheck:Cond
  287. ...
  288. fun:_ZNK16SkRasterPipeline3runEmmmm
  289. fun:_Z15GrConvertPixelsRK11GrPixelInfoPvmS1_PKvmb9GrSwizzle
  290. ...
  291. }
  292. {
  293. grconvertpixels_rasterpipeline
  294. Memcheck:Value8
  295. ...
  296. fun:_ZNK16SkRasterPipeline3runEmmmm
  297. fun:_Z15GrConvertPixelsRK11GrPixelInfoPvmS1_PKvmb9GrSwizzle
  298. ...
  299. }