1 # Suppressions for Thread Sanitizer
3 # CAREFUL! Comments must go on their own line or your suppressions will silently fail.
5 # WebP races (harmlessly) choosing function pointers for SIMD versions of some of its functions.
6 race:third_party/externals/libwebp
8 # Poppler races on startup.
10 # LCMS is used by poppler, and also races.
13 # skia:2459 Seemingly misdiagnosed use-after-free, having something to do with software GL drivers.
14 # Having trouble getting this suppression to match.
15 # We've tried: race:swrast_dri.so
16 # race:SkGLContextHelper::init
17 # Maybe because it's diagnosed as a use-after-free, not as a race?
18 race:SkGLContextHelper
20 # Threadsafe, should be ported to SkLazyPtr.
21 race:SkFontHost_FreeType
24 # Not threadsafe, should be fixed.
29 # These race benignly as used by DMQuiltTask: skia:2725.
30 # Suppress while I look for a more focused way to silence this.
31 race:SkPixelRef::callGenIDChangeListeners
32 race:SkPixelRef::needsNewGenID
34 # This calls SkRefCnt::getRefCnt(), which is not thread safe. skia:2726
35 race:SkImageFilter::filterImage
37 # SkPathRef caches its bounding box the first time it's needed.
38 # This will be fixed naturally once we create (from a single thread) a
39 # bounding-box hierarchy for SkRecord-based SkPictures; all bounds will come pre-cached.
40 # So just shut this up for now.
41 race:SkPathRef::computeBounds
43 # SkMatrix caches a type mask. If we race on this, we'll just calculate the same thing a few times.
44 race:SkMatrix::getPerspectiveTypeMaskOnly
46 # TODO: some sort of SkRacy<T> to handle cases like SkMatrix, SkPathRef, SkPixelRef above?