1# Pass this file to Valgrind with "--suppressions=tools/valgrind.supp" 2 3# Intentional thread / memory leak in DM. 4{ 5 dm_keepalive_thread_leak 6 Memcheck:Leak 7 match-leak-kinds: possible 8 ... 9 fun:_ZN8SkThreadC1EPFvPvES0_ 10 ... 11 fun:_Z7dm_mainv 12 fun:main 13} 14 15# Third party lib, driver issues. 16{ 17 ati_driver_bug_1 18 Memcheck:Param 19 ioctl(generic) 20 fun:ioctl 21 ... 22 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 23} 24{ 25 ati_driver_bug_2 26 Memcheck:Cond 27 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 28} 29{ 30 ati_driver_bug_3 31 Memcheck:Addr8 32 ... 33 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 34} 35{ 36 ati_driver_bug_4 37 Memcheck:Addr4 38 ... 39 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 40} 41{ 42 ati_driver_bug_5 43 Memcheck:Addr2 44 ... 45 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 46} 47{ 48 ati_driver_bug_6 49 Memcheck:Addr1 50 ... 51 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 52} 53{ 54 ati_driver_bug_7 55 Memcheck:Leak 56 fun:malloc 57 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 58} 59{ 60 driver_bug_8 61 Memcheck:Overlap 62 fun:strcpy 63 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 64} 65{ 66 ati_driver_bug_9 67 Memcheck:Leak 68 fun:calloc 69 obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so 70} 71{ 72 ati_driver_bug_10 73 Memcheck:Leak 74 fun:malloc 75 obj:/usr/lib/fglrx/fglrx-libGL.so.1.2 76} 77{ 78 nv_driver_bug_1 79 Memcheck:Param 80 write(buf) 81 ... 82 obj:*/libnvidia-glcore.so* 83} 84{ 85 nv_driver_bug_2 86 Memcheck:Cond 87 ... 88 obj:*/libnvidia-glcore.so* 89} 90{ 91 nv_driver_bug_3 92 Memcheck:Leak 93 fun:calloc 94 obj:/usr/lib*/libGL.so* 95} 96{ 97 #Fixed by FontConfig 2.9.0 98 #http://cgit.freedesktop.org/fontconfig/commit/?id=1c475d5c8cb265ac939d6b9e097666e300162511 99 font_config_bug_1 100 Memcheck:Addr4 101 fun:FcConfigFileExists 102} 103{ 104 #https://bugs.freedesktop.org/show_bug.cgi?id=8215 105 #https://bugs.freedesktop.org/show_bug.cgi?id=8428 106 #FcPattern uses 'intptr_t elts_offset' instead of 'FcPatternEltPtr elts', 107 #which confuses valgrind. 108 font_config_bug_2 109 Memcheck:Leak 110 fun:*alloc 111 ... 112 fun:Fc*Add* 113} 114{ 115 #Same root cause as font_config_bug_2. 116 #The 'leak' here is a copy of rule values, as opposed to new values. 117 font_config_bug_3 118 Memcheck:Leak 119 fun:*alloc 120 ... 121 fun:FcConfigValues 122 fun:FcConfigSubstituteWithPat 123 fun:FcFontRenderPrepare 124} 125{ 126 #Same root cause as font_config_bug_2. 127 #The 'leak' is copies of font or pattern values into returned pattern values. 128 font_config_bug_4 129 Memcheck:Leak 130 fun:*alloc 131 ... 132 fun:FcValue* 133 fun:FcFontRenderPrepare 134} 135{ 136 zlib_bug_1 137 Memcheck:Cond 138 fun:inflateReset2 139 fun:inflateInit2_ 140 fun:png_create_read_struct_2 141 fun:png_create_read_struct 142} 143{ 144 zlib_bug_2 145 Memcheck:Cond 146 fun:inflateReset2 147 fun:inflateInit2_ 148 fun:_ZN12_GLOBAL__N_17doFlateEbP8SkStreamP9SkWStream 149 fun:_ZN7SkFlate7InflateEP8SkStreamP9SkWStream 150} 151 152# Why is it OK to suppress this? 153{ 154 SkRTConfRegistry_bug_1 155 Memcheck:Leak 156 fun:_Znwm 157 fun:_ZN16SkRTConfRegistry12registerConfEP12SkRTConfBase 158} 159 160# The gpu_issue_* suppressions suppress issues that cannot be reproduced locally. These appear to be 161# due to valgrind not knowing about memory mapped by the ATI driver via glMapBuffer. 162{ 163 gpu_issue_1 164 Memcheck:Addr2 165 fun:_ZNK5GrGpu18getQuadIndexBufferEv 166} 167{ 168 gpu_issue_2 169 Memcheck:Addr2 170 fun:_ZN24GrAAHairLinePathRenderer6CreateEP9GrContext 171} 172{ 173 gpu_issue_3 174 Memcheck:Addr2 175 fun:_ZN16GrAARectRenderer21aaFillRectIndexBufferEP5GrGpu 176} 177{ 178 gpu_issue_4 179 Memcheck:Addr8 180 fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect 181} 182{ 183 gpu_issue_5 184 Memcheck:Addr8 185 fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE 186} 187{ 188 gpu_issue_6 189 Memcheck:Addr8 190 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb 191} 192{ 193 gpu_issue_7 194 Memcheck:Addr4 195 fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE 196 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb 197} 198{ 199 gpu_issue_8 200 Memcheck:Addr4 201 fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect 202} 203{ 204 gpu_issue_9 205 Memcheck:Addr2 206 fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE 207} 208{ 209 gpu_issue_10 210 Memcheck:Addr4 211 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb 212} 213{ 214 gpu_issue_11 215 Memcheck:Addr2 216 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb 217} 218{ 219 gpu_issue_12 220 Memcheck:Addr8 221 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb 222} 223{ 224 gpu_issue_13 225 Memcheck:Addr4 226 fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE 227 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb 228} 229{ 230 gpu_issue_14 231 Memcheck:Addr4 232 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb 233} 234{ 235 gpu_issue_15 236 Memcheck:Addr2 237 fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb 238} 239