Fixing deadlock by removing unnesessary lock in AudioRendererMixer
Deadlock is like this: On main or media thread: ARMM::GetOutputDeviceInfo [takes |lock_|] -> AOD::GetOutputDeviceInfo -> waits for device authorization, which can be signalled on IO thread only On IO thread: AOD::CreateStreamOnIOThread/OnStateChanged* -> ARMM::OnRenderError [takes |lock_|], so OnDeviceAuthorized/OnIPCClosed will never be called and device authorization will never be signalled. *AOD::OnDeviceAuthorized itself does not deadlock it always signals event before calling OnRenderError() That lock in ARMM::GetOutputDeviceInfo is never needed, after all BUG=615589 Review-Url: https://codereview.chromium.org/2085603002 Cr-Commit-Position: refs/heads/master@{#400735}
Showing
Please register or sign in to comment