diff options
| author | 2014-07-15 21:17:03 -0700 | |
|---|---|---|
| committer | 2014-07-22 19:45:55 +0000 | |
| commit | 78014f32da6d0ebf52fb34ebb7663863000520a0 (patch) | |
| tree | 8e34b5ea77b30458ce145678c2a9a08503498595 /libs/gui/BitTube.cpp | |
| parent | 7b3f48d2efc83094de70c24520bafacda3749a20 (diff) | |
BufferQueue: release mutex while allocating. DO NOT MERGE
BufferQueueProducer::allocateBuffers used to keep the BufferQueueCore
mutex while doing the buffer allocation, which would cause the consumer
(which also needs the mutex) to block if the allocation takes a long
time.
Instead, release the mutex while doing the allocation, and grab it again
before filling the slots. Keep a bool state and a condvar to prevent
other producers from trying to allocate the slots while the mutex is
released.
Bug: 11792166
Change-Id: I4ab1319995ef892be2beba892f1fdbf50ce0416d
(cherry picked from commit ea96044470a29133321c681080870b9d31f81a19)
Diffstat (limited to 'libs/gui/BitTube.cpp')
0 files changed, 0 insertions, 0 deletions