commit | 618cb634a847958dec7b2bb3cbb94bbed6ebf031 | [log] [tgz] |
---|---|---|
author | Pawel Osciak <posciak@chromium.org> | Mon Mar 19 12:36:19 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Mon Mar 19 12:36:19 2018 |
tree | 0273a139b6c0fb9ae8bcd8e5b27c193379bc044c | |
parent | 6cedcff7c569387f6dd290224664cb506eb33905 [diff] |
Revert "Vaapi: Remove ConditionVariables and use PostTask" This reverts commit 6683995b61a4915d9b91f9cb62ab348f95c6e5a2. Reason for revert: crbug.com/823235 Original change's description: > Vaapi: Remove ConditionVariables and use PostTask > > This CL removes the use of the ConditionVariables inside VaVDA and > uses instead PostTask()ing. This removes blocking the worker > thread, which allows for moving other tasks there, e.g. the > Surface Blit (as done in the follow up WIP CL crrev.com/c/947341) > > For all that goodness, this CL: > > - Refactors the waiting logic that on ToT is spread between > GetCurrInputBuffer_Locked() and WaitForSurfaces_Locked() and > simplifies it in DecodeTask() itself. > > - Moves the |curr_input_buffer_| filling logic in > GetCurrInputBuffer_Locked() into DecodeTask() proper. > > - Reduces the scoped of the |lock_| in DecodeTask() (note that > |curr_input_buffer_| and |decode_| are only used on the decoder > thread -- added a .h comment). > > Minor stuff: This CL also moves together the declaration of the > related member vars |input_buffers_|, |curr_input_buffer_| and > |available_va_surfaces_| > > TEST=simplechrome+crosvideo (including seeks) on soraka, and > v_d_a_unittest with h264, vp8, vp9 (with dcheck_always_on=true). > > Bug: 717265 > Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel > Change-Id: Ib167115dd2a4ebaeaea3ba3b5a205779d659f479 > Reviewed-on: https://chromium-review.googlesource.com/949283 > Commit-Queue: Miguel Casas <mcasas@chromium.org> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > Cr-Commit-Position: refs/heads/master@{#542955} TBR=posciak@chromium.org,kcwu@chromium.org,mcasas@chromium.org,dcastagna@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 717265 Cq-Include-Trybots: luci.chromium.try:linux_optional_gpu_tests_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I62361a33067140eb42112ccf7613136137bc30e2 Reviewed-on: https://chromium-review.googlesource.com/967967 Commit-Queue: Pawel Osciak <posciak@chromium.org> Reviewed-by: Pawel Osciak <posciak@chromium.org> Cr-Commit-Position: refs/heads/master@{#544014}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .