Thread safety issue with ClientDiscardableManager |
|||||||
Issue descriptionClientDiscardableTextureManager and ClientTransferCache are called from ContextSupport without the context lock held. We need locking in these cases to prevent data races which are currently possible.
,
Dec 12 2017
,
Dec 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5a20a59933d43be36e46b7ea0d5b76f23909f609 commit 5a20a59933d43be36e46b7ea0d5b76f23909f609 Author: Eric Karl <ericrk@chromium.org> Date: Wed Dec 13 02:53:16 2017 Add locking to ClientDiscardableTextureManager and ClientTransferCache ClientDiscardableTextureManager and ClientTransferCache are called from special Threadsafe* functions on ContextSupport without the context lock held. We need locking in these cases to prevent data races which are currently possible. Bug: 794293 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: I70c5a23dc2bd55cb77fb29c3c9057e8c37211e8c Reviewed-on: https://chromium-review.googlesource.com/823232 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Cr-Commit-Position: refs/heads/master@{#523664} [modify] https://crrev.com/5a20a59933d43be36e46b7ea0d5b76f23909f609/gpu/command_buffer/client/client_discardable_texture_manager.cc [modify] https://crrev.com/5a20a59933d43be36e46b7ea0d5b76f23909f609/gpu/command_buffer/client/client_discardable_texture_manager.h [modify] https://crrev.com/5a20a59933d43be36e46b7ea0d5b76f23909f609/gpu/command_buffer/client/client_transfer_cache.cc [modify] https://crrev.com/5a20a59933d43be36e46b7ea0d5b76f23909f609/gpu/command_buffer/client/client_transfer_cache.h
,
Dec 15 2017
,
Dec 15 2017
This bug requires manual review: M64 has already been promoted to the beta branch, so this requires manual review Please contact the milestone owner if you have questions. Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Dec 15 2017
We'd like to take this merge to M64 - this is a straightforward change which adds locking to prevent races during GPU image handling. Without this change, we will likely see rare crashes due to this race.
,
Dec 15 2017
Approving merge to M64 Chrome OS to avoid the crash scenarios...
,
Dec 18 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/66423209e74c11b4bb0ec326f7ddbc33e9a1a038 commit 66423209e74c11b4bb0ec326f7ddbc33e9a1a038 Author: Eric Karl <ericrk@chromium.org> Date: Mon Dec 18 21:51:06 2017 Add locking to ClientDiscardableTextureManager and ClientTransferCache ClientDiscardableTextureManager and ClientTransferCache are called from special Threadsafe* functions on ContextSupport without the context lock held. We need locking in these cases to prevent data races which are currently possible. TBR=ericrk@chromium.org (cherry picked from commit 5a20a59933d43be36e46b7ea0d5b76f23909f609) Bug: 794293 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: I70c5a23dc2bd55cb77fb29c3c9057e8c37211e8c Reviewed-on: https://chromium-review.googlesource.com/823232 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#523664} Reviewed-on: https://chromium-review.googlesource.com/832920 Reviewed-by: Eric Karl <ericrk@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#275} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} [modify] https://crrev.com/66423209e74c11b4bb0ec326f7ddbc33e9a1a038/gpu/command_buffer/client/client_discardable_texture_manager.cc [modify] https://crrev.com/66423209e74c11b4bb0ec326f7ddbc33e9a1a038/gpu/command_buffer/client/client_discardable_texture_manager.h [modify] https://crrev.com/66423209e74c11b4bb0ec326f7ddbc33e9a1a038/gpu/command_buffer/client/client_transfer_cache.cc [modify] https://crrev.com/66423209e74c11b4bb0ec326f7ddbc33e9a1a038/gpu/command_buffer/client/client_transfer_cache.h
,
Dec 19 2017
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by ericrk@chromium.org
, Dec 12 2017