blob: 933c6ad4645e5af8bf8fefab5ddb862026af1c4f [file] [log] [blame]
# Pass this file to Valgrind with "--suppressions=tools/valgrind.supp"
# Intentional thread / memory leak in nanobench.
{
nanobench_keepalive_thread_leak
Memcheck:Leak
match-leak-kinds: possible,definite
...
fun:start_keepalive
...
fun:main
}
{
nanobench_keepalive_thread_leak2
Memcheck:Leak
match-leak-kinds: possible,definite
...
fun:_ZNSt6threadC2IZL15start_keepalivevE3$_0JEvEEOT_DpOT0_
...
fun:main
}
{
nanobench_keepalive_thread_leak3
Memcheck:Leak
match-leak-kinds: possible,definite
...
fun:_ZNSt6thread15_M_start_threadESt10unique_ptrINS_6_StateESt14default_deleteIS1_EEPFvvE
...
fun:main
}
{
new_SkNullWStream
Memcheck:Leak
match-leak-kinds: definite
fun:_Znwm
fun:main
}
# Third party lib, driver issues.
{
ati_driver_bug_1
Memcheck:Param
ioctl(generic)
fun:ioctl
...
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_2
Memcheck:Cond
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_3
Memcheck:Addr8
...
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_4
Memcheck:Addr4
...
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_5
Memcheck:Addr2
...
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_6
Memcheck:Addr1
...
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_7
Memcheck:Leak
fun:malloc
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
driver_bug_8
Memcheck:Overlap
fun:strcpy
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_9
Memcheck:Leak
fun:calloc
obj:/usr/lib/x86_64-linux-gnu/dri/fglrx_dri.so
}
{
ati_driver_bug_10
Memcheck:Leak
fun:malloc
obj:/usr/lib/fglrx/fglrx-libGL.so.1.2
}
{
nv_driver_bug_1
Memcheck:Param
write(buf)
...
obj:*/libnvidia-glcore.so*
}
{
nv_driver_bug_2
Memcheck:Cond
...
obj:*/libnvidia-glcore.so*
}
{
nv_driver_bug_3
Memcheck:Leak
fun:calloc
obj:/usr/lib*/libGL.so*
}
{
nv_driver_bug_4
Memcheck:Param
sendmsg(msg.msg_iov[0])
fun:sendmsg
obj:*/libGLX_nvidia.so*
}
{
nv_driver_bug_5
Memcheck:Leak
fun:malloc
...
obj:*/libGLX_nvidia.so*
}
{
nv_driver_bug_6
Memcheck:Leak
fun:calloc
...
obj:*/libGLX_nvidia.so*
}
{
nv_driver_bug_7
Memcheck:Leak
fun:realloc
...
obj:*/libGLX_nvidia.so*
}
{
#Fixed by FontConfig 2.9.0
#http://cgit.freedesktop.org/fontconfig/commit/?id=1c475d5c8cb265ac939d6b9e097666e300162511
font_config_bug_1
Memcheck:Addr4
fun:FcConfigFileExists
}
{
#https://bugs.freedesktop.org/show_bug.cgi?id=8215
#https://bugs.freedesktop.org/show_bug.cgi?id=8428
#FcPattern uses 'intptr_t elts_offset' instead of 'FcPatternEltPtr elts',
#which confuses valgrind.
font_config_bug_2
Memcheck:Leak
fun:*alloc
...
fun:Fc*Add*
}
{
#Same root cause as font_config_bug_2.
#The 'leak' here is a copy of rule values, as opposed to new values.
font_config_bug_3
Memcheck:Leak
fun:*alloc
...
fun:FcConfigValues
fun:FcConfigSubstituteWithPat
fun:FcFontRenderPrepare
}
{
#Same root cause as font_config_bug_2.
#The 'leak' is copies of font or pattern values into returned pattern values.
font_config_bug_4
Memcheck:Leak
fun:*alloc
...
fun:FcValue*
fun:FcFontRenderPrepare
}
{
font_config_bug_5
Memcheck:Leak
fun:malloc
obj:*/libfontconfig.so.1.8.0
fun:FcConfigSubstituteWithPat
}
{
font_config_bug_6
Memcheck:Leak
fun:*alloc
...
obj:*/libfontconfig.so.1.8.0
fun:FcFont*
}
{
zlib_bug_1
Memcheck:Cond
fun:inflateReset2
fun:inflateInit2_
fun:png_create_read_struct_2
fun:png_create_read_struct
}
{
zlib_bug_2
Memcheck:Cond
fun:inflateReset2
fun:inflateInit2_
fun:_ZN12_GLOBAL__N_17doFlateEbP8SkStreamP9SkWStream
fun:_ZN7SkFlate7InflateEP8SkStreamP9SkWStream
}
# Why is it OK to suppress this?
{
SkRTConfRegistry_bug_1
Memcheck:Leak
fun:_Znwm
fun:_ZN16SkRTConfRegistry12registerConfEP12SkRTConfBase
}
# The gpu_issue_* suppressions suppress issues that cannot be reproduced locally. These appear to be
# due to valgrind not knowing about memory mapped by the ATI driver via glMapBuffer.
{
gpu_issue_1
Memcheck:Addr2
fun:_ZNK5GrGpu18getQuadIndexBufferEv
}
{
gpu_issue_2
Memcheck:Addr2
fun:_ZN24GrAAHairLinePathRenderer6CreateEP9GrContext
}
{
gpu_issue_3
Memcheck:Addr2
fun:_ZN16GrAARectRenderer21aaFillRectIndexBufferEP5GrGpu
}
{
gpu_issue_4
Memcheck:Addr8
fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect
}
{
gpu_issue_5
Memcheck:Addr8
fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE
}
{
gpu_issue_6
Memcheck:Addr8
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_7
Memcheck:Addr4
fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_8
Memcheck:Addr4
fun:_ZN24GrAAHairLinePathRenderer14createLineGeomERK6SkPathP12GrDrawTargetRK8SkTArrayI7SkPointLb1EEiPNS3_19AutoReleaseGeometryEP6SkRect
}
{
gpu_issue_9
Memcheck:Addr2
fun:_ZN21GrDefaultPathRenderer10createGeomERK6SkPathRK11SkStrokeRecfP12GrDrawTargetP15GrPrimitiveTypePiSA_PNS6_19AutoReleaseGeometryE
}
{
gpu_issue_10
Memcheck:Addr4
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_11
Memcheck:Addr2
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_12
Memcheck:Addr8
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_13
Memcheck:Addr4
fun:_ZNK7SkPoint24distanceToLineBetweenSqdERKS_S1_PNS_4SideE
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_14
Memcheck:Addr4
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
}
{
gpu_issue_15
Memcheck:Addr2
fun:_ZN22GrAAConvexPathRenderer10onDrawPathERK6SkPathRK11SkStrokeRecP12GrDrawTargetb
}
{
libjpeg_turbo_bug4550_1
Memcheck:Cond
fun:_Z26S32A_Opaque_BlitRow32_SSE4PjPKjij
fun:_ZN14Sprite_D32_S328blitRectEiiii
}
{
libjpeg_turbo_bug4550_2
Memcheck:Cond
fun:_ZL15S32A_D565_BlendPtPKjijii
fun:_ZN26Sprite_D16_S32_BlitRowProc8blitRectEiiii
}
{
libjpeg_turbo_bug4550_3
Memcheck:Cond
fun:_ZN12_GLOBAL__N_120ConvolveHorizontallyILb0EEEvPKhRK21SkConvolutionFilter1DPh
fun:_Z14BGRAConvolve2DPKhibRK21SkConvolutionFilter1DS3_iPhRK18SkConvolutionProcsb
}
#Something odd is happening in SkRasterPipeline when called by GrConvertPixels and GrClearImage.
#It seems bogus after investigation. MSAN/ASAN have no complaints. It's complaining about
#conditional jump or use of var that is "uninitialized" but it definitely is.
{
grconvertpixels_rasterpipeline
Memcheck:Cond
...
fun:_ZNK16SkRasterPipeline3runEmmmm
fun:_Z15GrConvertPixelsRK11GrImageInfoPvmS1_PKvmb
...
}
{
grconvertpixels_rasterpipeline
Memcheck:Value8
...
fun:_ZNK16SkRasterPipeline3runEmmmm
fun:_Z15GrConvertPixelsRK11GrImageInfoPvmS1_PKvmb
...
}
{
grclearimage_rasterpipeline
Memcheck:Cond
...
fun:_ZNK16SkRasterPipeline3runEmmmm
fun:_Z12GrClearImageRK11GrImageInfoPvm8SkRGBA4fIL11SkAlphaType3EE
...
}
{
grclearimage_rasterpipeline
Memcheck:Value8
...
fun:_ZNK16SkRasterPipeline3runEmmmm
fun:_Z12GrClearImageRK11GrImageInfoPvm8SkRGBA4fIL11SkAlphaType3EE
...
}
{
make_get_error_with_random_oom1
Memcheck:Leak
match-leak-kinds: definite
...
fun:_Z30make_get_error_with_random_oom12GrGLFunctionIFjvEE
...
}
{
make_get_error_with_random_oom2
Memcheck:Leak
match-leak-kinds: definite
...
fun:make_get_error_with_random_oom
...
}
{
make_get_error_with_random_oom3
Memcheck:Leak
match-leak-kinds: definite
fun:_Znwm
fun:_ZN15GrDirectContext6MakeGLE5sk_spIK13GrGLInterfaceERK16GrContextOptions
fun:_ZN11sk_gpu_test16GrContextFactory22getContextInfoInternalENS0_11ContextTypeENS0_16ContextOverridesEP15GrDirectContextj
fun:_ZN11sk_gpu_test16GrContextFactory3getENS0_11ContextTypeENS0_16ContextOverridesE
fun:_ZL20test_GrContext_oomedPN8skiatest8ReporterERK16GrContextOptions
fun:_ZNK8skiatest4Test6ganeshEPNS_8ReporterERK16GrContextOptions
fun:main
}