DescriptionSkTRacy<T> -> SkAtomic<T>
Like SkTRacy<T>, TSAN will not complain about these. Unlike SkTRacy<T>, TSAN
should not complain about these: SkAtomic<T> are threadsafe.
This should fix the races now suppressed in TSAN. As written, the memory
barriers we're using in SkPixelRef will be dumb but safe (really, dumbest
possible but safest possible). If we see a perf hit, we can follow up by
putting Ben and I in a room for a while, thinking about it really hard, and
using the minimum-strength safe memory barriers.
A refactor that steals a bit from the genID would also still be possible with
this approach.
BUG=chromium:437511
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu13.10-GCE-NoGPU-x86_64-Release-TSAN-Trybot
Committed: https://skia.googlesource.com/skia/+/86821b56704ebc0a1a6d1e5d1e329369ac797c98
Patch Set 1 #Patch Set 2 : prune more #Patch Set 3 : rebase #Patch Set 4 : great warning #
Total comments: 2
Messages
Total messages: 15 (7 generated)
|