diff options
| author | 2012-01-09 09:40:36 -0800 | |
|---|---|---|
| committer | 2012-02-08 17:01:49 -0800 | |
| commit | 8b02b994348431dca6979fc0f03bf9787164a2a0 (patch) | |
| tree | ff00cb611679c9466cc1a376ed5d037bacc01238 /libs/rs/rsThreadIO.cpp | |
| parent | 52835f5d201ac05743586f3553ced856d62a08fb (diff) | |
Fix races related to volume and mute
Fix race conditions when setting master volume, master mute, stream
volume, stream mute for a playback thread, and when reading stream
volume of a playback thread. Lock order is AudioFlinger, then thread.
Rename streamVolumeInternal to streamVolume_l, comment, and use it to
implement streamVolume().
Code size reduction:
- Remove dead code: AudioFlinger::PlaybackThread::masterVolume, masterMute, streamMute.
- Change return type of non-binder methods that always succeed from status_t to void.
- Remove virtual from volume and mute methods that don't need it.
This change saves 228 bytes but decreases performance of binder operations
due to the added locks.
Change-Id: Iac75abc1f54784873a667d1981b2e08f8f31e5c9
Diffstat (limited to 'libs/rs/rsThreadIO.cpp')
0 files changed, 0 insertions, 0 deletions