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