Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Issue 23437031: Merge 157273 "Fix threading races on HRTFElevation::audioBusMap" (Closed)

Created:
7 years, 3 months ago by haraken
Modified:
7 years, 3 months ago
Reviewers:
haraken
CC:
blink-reviews, eae+blinkwatch, dglazkov+blink, jeez
Visibility:
Public.

Description

Merge 157273 "Fix threading races on HRTFElevation::audioBusMap" > Fix threading races on HRTFElevation::audioBusMap > > According to the crash report (https://cluster-fuzz.appspot.com/testcase?key=6291334197411840), > there is a threading race in HRTFElevation::getConcatenatedImpulseResponsesForSubject. > > static PassRefPtr<AudioBus> getConcatenatedImpulseResponsesForSubject(...) { > typedef HashMap<String, RefPtr<AudioBus> > AudioBusMap; > DEFINE_STATIC_LOCAL(AudioBusMap, audioBusMap, ()); > RefPtr<AudioBus> bus; > AudioBusMap::iterator iterator = audioBusMap.find(subjectName); // (A) > if (iterator == audioBusMap.end()) { > ...; > audioBusMap.set(subjectName, bus); // (B) > } > } > > It's possible that: > > (1) Thread 1 executes (A) > (2) Thread 2 executes (A) > (3) Thread 1 executes (B) > (4) Thread 2 executes (B) and crashes. > > This CL protects accesses to the AudioBusMap with mutex. > > BUG=270758 > No tests because the crash depends on threading races and thus not reproducible. > > Review URL: https://chromiumcodereview.appspot.com/23613007 TBR=haraken@chromium.org Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=157691

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -0 lines) Patch
M Source/core/platform/audio/HRTFElevation.cpp View 2 chunks +3 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
haraken
7 years, 3 months ago (2013-09-12 19:22:36 UTC) #1
haraken
7 years, 3 months ago (2013-09-12 19:22:46 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 manually as r157691.

Powered by Google App Engine
This is Rietveld 408576698