Issue metadata
Sign in to add a comment
|
Blackscreen when using dev tools
Reported by
alexandre.ducarne1997@hotmail.fr,
Sep 6
|
||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 Safari/537.36 Steps to reproduce the problem: 1. Open any website and press F12 2. Put a breakpoint in a JS file 3. Trigger the breakpoint 4. After 5 secondes, both devtool and main window turn black for 10+ seconds then works as usual What is the expected behavior? After triggering the breakpoint, devtools should wait for upcoming user actions (step in, step out, etc...) What went wrong? Every chrome window turns black preventing any user action for a few seconds. Turning off GPU acceleration doesn't trigger this bug. Did this work before? Yes Latest 68.XXXX build Chrome version: 69.0.3497.81 Channel: stable OS Version: 10.0 Flash Version:
,
Sep 7
Thanks for filing the issue! Unable to reproduce the issue on reported chrome version 69.0.3497.81 using Windows 10 with the below mentioned steps. 1. Launched Chrome 2. Navigated to a random website 3. Inspected the page to open DevTools->Sources 4. Have set a Breakpoint to a JS file 5. Resumed the script execution We neither observed blackscreen on main window nor in DevTools. @Reporter: Could you please let us know if we have missed anything in the process. If the issue is specific to any JS file, then providing that particular file would help us to triage this issue in a better way.
,
Sep 7
I have the same issue. I suspect you may have been unable to replicate because of resuming execution too soon. My repro steps would be as follows: 1. Pause execution on any website. 2. Open the chrome task manager, and look at the memory being used by the GPU Process. For me, it gets higher and higher. 3. When the memory usage for the whole PC gets to about 95% (i.e. in windows task manager), the screen goes black for a couple of seconds. (I assume this means something is being reset to release the memory.) Hope this helps.
,
Sep 7
Unfortunately I've found that my repro steps are not as reliable as I'd hoped. I've seen them work on various random websites, but I've also seen them not work. If it helps, http://bbc.co.uk/news is a page which seems to permit reliable replication of this bug. Once the page is loaded, I opened the Dev Tools and just paused execution. The GPU Process quickly ate up the available memory. I've attached a screen recording in case it helps.
,
Sep 7
Tagging as "RBS" for tracking as this issue is under investigation.
,
Sep 7
,
Sep 7
fserb@, pls reassign if needed. Thank you.
,
Sep 7
+sunnyps@, pdr@, kbr@ & vmiura@ per internal group chat. Also could this be related to any of the GPU bugs? * Bug 881824 * Bug 880901 * Bug 880620
,
Sep 7
geofflang@, ericrk@: While investigating, it looks like discard-able memory handle managemnt is not implemented on the GPU-side for pass-through command buffer! Doesn't this mean we will grow texture memory in an unbounded way on Windows with pass-through?
,
Sep 7
I was able to repro (sorta) by doing the following: 1. Go to vsynctester.com and open Chrome task manager in Options > More tools. 2. Set a breakpoint in the rafcallback function in index.html. 3. Keep clicking the "Resume script execution" button. Do *not* remove the breakpoint. GPU process memory usage will go up every time you click. See attached trace with "Javascript and rendering" and memory-infra turned on. The leak is under the cc/image_memory/cache_xyz/gpu category. Several 4.7M images are leaked. They aren't linked to GPU process memory dumps. There is a hypothesis that this is because GPU discardable textures aren't implemented for passthrough command decoder.
,
Sep 7
Definitely due to passthrough command decoder. Both my repro and pfeldman's repro (hover around in devtools element selector on bbc.co.uk) fail with --use-cmd-decoder=validating.
,
Sep 8
Upgrading to P1 regression and unassigning as fserb@ is OOO. Not clear what the resolution should be - disabling the passthrough command decoder for 69 or aiming to fix this directly.
,
Sep 8
Passthrough command decoder was accidentally enabled by default everywhere by default (M69 onwards). CL to revert that change is in CQ: https://chromium-review.googlesource.com/c/chromium/src/+/1213958 We should merge this to M69. Note: Passthrough command decoder is separately in a 50-50 trial on canary, dev, and beta (M68+). We will separately disable the trial on beta, but keep it on dev and canary. Also note: Passthrough command decoder is enabled in fieldtrial_testing_config.json so it's enabled for waterfall and developer Chromium builds which is also expected.
,
Sep 8
The other root cause of this bug is the same as issue 880620 . The fix for that also works for this problem. However, we should still do the fix here.
,
Sep 8
govind@ the fix here has very little risk. I'll request a merge to 69 for this, but it's ok to not wait for canary for this one. And even in canary, you'd be in a 50-50 finch trial so you wouldn't see the impact of this CL.
,
Sep 8
sunnyps@, the M69 merge request will be for this change - https://chromium-review.googlesource.com/c/chromium/src/+/1213958?
,
Sep 8
Yes.
,
Sep 8
This bug requires manual review: Request affecting a post-stable build Please contact the milestone owner if you have questions. Owners: amineer@(Android), kariahda@(iOS), cindyb@(ChromeOS), govind@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 8
Approving merge for https://chromium-review.googlesource.com/c/chromium/src/+/1213958 to M69 branch 3497 and M70 branch 3538 based on comment #15.
,
Sep 8
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9456e9b9166e3e3f59d39ec49176458190d603b4 commit 9456e9b9166e3e3f59d39ec49176458190d603b4 Author: Sunny Sachanandani <sunnyps@chromium.org> Date: Sat Sep 08 02:30:53 2018 Revert "Enable the passthrough command decoder by default on Windows." This reverts commit 1140edbf8524def4ce5776ac31be39297900ab99. Reason for revert: This enables the feature on stable by default and causes GPU memory usage to grow indefinitely because GPU discardable textures aren't implemented in passthrough. See crbug.com/881303 Original change's description: > Enable the passthrough command decoder by default on Windows. > > This ensures that the passthrough command decoder is tested on developer > builds. > > BUG=738568 > BUG=602688 > > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > Change-Id: I3cb473c51d8c889f958827233ca67d6cf6b7fb04 > Reviewed-on: https://chromium-review.googlesource.com/1075507 > Reviewed-by: Antoine Labour <piman@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#562533} TBR=geofflang@chromium.org,piman@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 738568, 602688, 881303 Change-Id: I302775b317de7732753cd48fe9d470a35520679f Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/1213958 Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> Cr-Commit-Position: refs/heads/master@{#589757} [modify] https://crrev.com/9456e9b9166e3e3f59d39ec49176458190d603b4/gpu/config/gpu_finch_features.cc
,
Sep 8
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2f431eaf6c8dd78867a580dcc72ab3b3a868de44 commit 2f431eaf6c8dd78867a580dcc72ab3b3a868de44 Author: Sunny Sachanandani <sunnyps@chromium.org> Date: Sat Sep 08 03:30:09 2018 [merge to M69] Revert "Enable the passthrough command decoder by default on Windows." This reverts commit 1140edbf8524def4ce5776ac31be39297900ab99. Reason for revert: This enables the feature on stable by default and causes GPU memory usage to grow indefinitely because GPU discardable textures aren't implemented in passthrough. See crbug.com/881303 Original change's description: > Enable the passthrough command decoder by default on Windows. > > This ensures that the passthrough command decoder is tested on developer > builds. > > BUG=738568 > BUG=602688 > > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > Change-Id: I3cb473c51d8c889f958827233ca67d6cf6b7fb04 > Reviewed-on: https://chromium-review.googlesource.com/1075507 > Reviewed-by: Antoine Labour <piman@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#562533} TBR=geofflang@chromium.org,piman@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 738568, 602688, 881303 Change-Id: I302775b317de7732753cd48fe9d470a35520679f Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/1213958 Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#589757}(cherry picked from commit 9456e9b9166e3e3f59d39ec49176458190d603b4) Reviewed-on: https://chromium-review.googlesource.com/1214761 Cr-Commit-Position: refs/branch-heads/3497@{#913} Cr-Branched-From: 271eaf50594eb818c9295dc78d364aea18c82ea8-refs/heads/master@{#576753} [modify] https://crrev.com/2f431eaf6c8dd78867a580dcc72ab3b3a868de44/gpu/config/gpu_finch_features.cc
,
Sep 8
,
Sep 8
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/98613e3bbd612c2287b7d5ddc293633a54406ca8 commit 98613e3bbd612c2287b7d5ddc293633a54406ca8 Author: Sunny Sachanandani <sunnyps@chromium.org> Date: Sat Sep 08 03:31:12 2018 [merge to M70] Revert "Enable the passthrough command decoder by default on Windows." This reverts commit 1140edbf8524def4ce5776ac31be39297900ab99. Reason for revert: This enables the feature on stable by default and causes GPU memory usage to grow indefinitely because GPU discardable textures aren't implemented in passthrough. See crbug.com/881303 Original change's description: > Enable the passthrough command decoder by default on Windows. > > This ensures that the passthrough command decoder is tested on developer > builds. > > BUG=738568 > BUG=602688 > > Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel > Change-Id: I3cb473c51d8c889f958827233ca67d6cf6b7fb04 > Reviewed-on: https://chromium-review.googlesource.com/1075507 > Reviewed-by: Antoine Labour <piman@chromium.org> > Commit-Queue: Geoff Lang <geofflang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#562533} TBR=geofflang@chromium.org,piman@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 738568, 602688, 881303 Change-Id: I302775b317de7732753cd48fe9d470a35520679f Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/1213958 Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org> Commit-Queue: Sunny Sachanandani <sunnyps@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#589757}(cherry picked from commit 9456e9b9166e3e3f59d39ec49176458190d603b4) Reviewed-on: https://chromium-review.googlesource.com/1214942 Cr-Commit-Position: refs/branch-heads/3538@{#184} Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811} [modify] https://crrev.com/98613e3bbd612c2287b7d5ddc293633a54406ca8/gpu/config/gpu_finch_features.cc
,
Sep 8
Thank you sunnyps@ for quick fix and merges to M69 & M70. Also requesting a postmortem for this, pls see go/chrome-postmortems for more details. Thank you.
,
Sep 10
Tried checking the issue on reported chrome version 69.0.3497.81 using Windows 10 with the below mentioned steps. 1. Launched Chrome 2. Navigated to vsynctester.com and opened Chrome task manager. 3. Inspected the page -> DevTools -> Sources 4. We have set the breakpoint at rafcallback function in index.html Observed the GPU process memory usage have increased drastically, but we didn't observed any black screen. @Sunny Sachanandani: As we are unable to reproduce the issue from our end, could you please help us in verifying the fix. Thanks!
,
Sep 10
Issue 881708 has been merged into this issue.
,
Sep 10
,
Sep 10
Issue 878391 has been merged into this issue.
,
Sep 10
69 current version (not respin) with finch config will show memory usage growing up to a cap 69 without finch will grow GPU memory indefinitely 69 respin will not show memory usage growing (because of the fix for 872117) I just confirmed that 69 with finch config GPU process memory grows up to a cap the cap is 512 MB for image memory, so max total usage will be rest of GPU usage + this extra amount also verified that GPU memory doesn't grow in latest canary, similar to what we expect from respin
,
Sep 11
Good news: 69.0.3497.92 is now available with the fix on Chrome Stable. You can force an update by visiting chrome://chrome. Thank you.
,
Sep 12
Thank you sunnyps@ for verifying this fix on M70 Dev# 70.0.3538.16.
,
Oct 1
Requesting a postmortem for this, pls see go/chrome-postmortems for more details. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by viswa.karala@chromium.org
, Sep 6