diff options
author | mtklein <mtklein@google.com> | 2014-07-08 14:06:46 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-07-08 14:06:46 -0700 |
commit | d3f3e5895efb5edfd838ba9127093c804f9dbc12 (patch) | |
tree | d96b928e7df21e36272d4b579d96d7728e56b70a /tools | |
parent | 7b17547bc85df9b3c7738fd55c378151b839e304 (diff) |
Revert of Add SkRacy (https://codereview.chromium.org/371363004/)
Reason for revert:
hidden symbol 'AnnotateBenignRaceSized' in obj/base/third_party/dynamic_annotations/libdynamic_annotations.a(obj/base/third_party/dynamic_annotations/dynamic_annotations.dynamic_annotations.o) is referenced by DSO lib/libblink_platform.so
Original issue's description:
> Add SkRacy
>
> SkRacy<T> is a zero-overhead wrapper for a T, except it also
> silences race warnings when TSAN is running.
>
> Here we apply in several classes. In SkMatrix and SkPathRef,
> we use it to opportunistically cache some idempotent work.
>
> In SkPixelRef, we wrap the genIDs. We think the worst that
> can happen here is we'll increment the global next-genID a
> few times instead of once when we go to get another ID.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d5e3e6ae1b3434ad1158f441902ff65f1eeaa3a7
R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/377693005
Diffstat (limited to 'tools')
-rw-r--r-- | tools/tsan.supp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tools/tsan.supp b/tools/tsan.supp index f687014040..6c2b0909fc 100644 --- a/tools/tsan.supp +++ b/tools/tsan.supp @@ -25,3 +25,21 @@ race:is_lcd_supported race:RefFCI race:SkString race:SkPDF + +# These race benignly as used by DMQuiltTask: skia:2725. +# Suppress while I look for a more focused way to silence this. +race:SkPixelRef::callGenIDChangeListeners +race:SkPixelRef::needsNewGenID + +# SkPathRef caches its bounding box the first time it's needed. +# This will be fixed naturally once we create (from a single thread) a +# bounding-box hierarchy for SkRecord-based SkPictures; all bounds will come pre-cached. +# So just shut this up for now. +race:SkPathRef::computeBounds + +# SkMatrix caches a type mask. If we race on this, we'll just calculate the same thing a few times. +race:SkMatrix::getType +race:SkMatrix::rectStaysRect +race:SkMatrix::getPerspectiveTypeMaskOnly + +# TODO: some sort of SkRacy<T> to handle cases like SkMatrix, SkPathRef, SkPixelRef above? |