Issue metadata
Sign in to add a comment
|
Inconsistent use of RunLoop::QuitWhenIdle and RunLoop::QuitCurrent* causes GPU thread to crash in debug |
||||||||||||||||||||
Issue descriptionChrome Version: 71.0.3546.0 (Developer Build) (64-bit) Revision: d002ecc01eb4826bad9c8824f2fbbbcbd888563a-refs/heads/master@{#589698} OS: Win10 What steps will reproduce the problem? (1) get latest chrome code and build in debug (2) run chrome with default settings (3) do not interact with the computer for a minute or two What is the expected result? Chrome continues to run as normal. What happens instead? A DCHECK error box pops up (see attached file).
,
Sep 8
Looks to be Windows-specific code still calling QuitCurrentWhenIdleDeprecated(). Will upload a patch to migrate those call-sites ASAP. Thanks for the report!
,
Sep 8
This appears to be triggered by change in gpu_main.cc (https://chromium.googlesource.com/chromium/src/+/6979109b593d10aef2e923e777c421bc7f749a93%5E%21/#F6) The added call to RunLoop::QuitClosure() sets a flag that causes all subsequent calls to RunLoop::QuitCurrent*Deprecated() to fail via DCHECK().
,
Sep 8
Thanks!
,
Sep 8
Fix CL is awaiting review, at https://chromium-review.googlesource.com/c/chromium/src/+/1214750
,
Sep 10
Issue 882297 has been merged into this issue.
,
Sep 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d476f83e19616335082eef8db3f7f40f52a04699 commit d476f83e19616335082eef8db3f7f40f52a04699 Author: Wez <wez@chromium.org> Date: Mon Sep 10 21:05:50 2018 Terminate GPU process via ExitProcess rather than RunLoop::QuitCurrent. Quitting the RunLoop with QuitCurrent*Deprecated() triggers the DCHECK against mixing the deprecated quit APIs with use of QuitClosure. Use the GpuServiceImpl::ExitProcess() helper to quit the process gracefully, instead. Also removes the |is_exiting_| flag in favour of checking whether |exit_callback_| is set, and adds a DCHECK for a non-null |exit_callback| being passed at construction. Bug: 882068 Cq-Include-Trybots: luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Id8a87e4648fbac3283f41ce2f80cf03a153227ab Reviewed-on: https://chromium-review.googlesource.com/1214750 Commit-Queue: Wez <wez@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Cr-Commit-Position: refs/heads/master@{#590061} [modify] https://crrev.com/d476f83e19616335082eef8db3f7f40f52a04699/components/viz/service/gl/gpu_service_impl.cc [modify] https://crrev.com/d476f83e19616335082eef8db3f7f40f52a04699/components/viz/service/gl/gpu_service_impl.h [modify] https://crrev.com/d476f83e19616335082eef8db3f7f40f52a04699/components/viz/service/main/viz_main_impl.h
,
Sep 10
|
|||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||
Comment 1 by dfried@chromium.org
, Sep 8