Canvas rendering problem
Reported by
vhp...@msn.com,
Oct 7
|
||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 Steps to reproduce the problem: Windows 10 64-bit 1809 (17763.1). 4K screen, 200% system scale, 100% browser scale. Run my test.html, click the button 3 times, a part of the border of the top and left side of the canvas element will be missing 1 physical pixel width. This problem is stable, and I tested the IE and Edge that came with the OS, they all good. The attached GIF is a screen recording. What is the expected behavior? What went wrong? N/A. Did this work before? N/A Does this work in other browsers? Yes Chrome version: 69.0.3497.100 Channel: stable OS Version: 10.0 Flash Version:
,
Oct 8
Thanks for filing the issue! Unable to reproduce the issue on reported chrome version 69.0.3497.100 using Windows 10 Surface Pro. Note: Currently we do not have any 4K monitor, so couldn't check the same on it. @Reporter: Could you please let us now if this is specific to 4K monitor or is this issue seen on other displays too. Any further inputs from your end may be helpful.
,
Oct 8
A friend help to tested on 1080 monitor, the issue can reproduce with 200% browser scale, Chrome version is same. See the video for details.
,
Oct 8
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 9
I'm having a hard time reproing this. But this seems to be layout/paint related, more than canvas, since it's the border of the element. Could you please also attach the output of your chrome://gpu ?
,
Oct 9
@fs... Yes, it's related to layout indeed. But if remove the getImageData() of my test.html, this problem will not happen. Please see the attachment for chrome://gpu output.
,
Oct 9
The border entirely disappears at time, and if you make it 5px wide you can see the width changing. This is Win 10 with a HighDPI monitor set at 125% desktop scaling. The missing/incorrect border perfectly aligns with tile boundaries, so this is something about raster in the compositor. Blink does not know anything about tile boundaries. Confirmed that the getImageData call causes the issue.
,
Oct 9
I tried turning off GPU acceleration, the problem has been solved.
,
Oct 10
In case the devs don't take that as a satisfying answer, #8 can you please turn the hardware acceleration on again and disable this flag: #enable-gpu-rasterization Restart Chrome and see if the issue is still solved.
,
Oct 10
Hi #9, I tried the procedures you mentioned and the problem was still solved. Based on the suspicion of GPU, I tested it on the Dell XPS laptop with Intel UHD graphics, turning on the hardware acceleration and enable gpu rasterization, the problem did not occur. However, I did not test it on AMD GPU, I guess whether NVIDIA GPU is involved in?
,
Oct 12
FYI, I noticed from about:gpu that this is on an RTX2080. That's a very new card, and it's entirely possible that there are driver bugs. (I have no proof, just noting.)
,
Oct 12
Sounds like schenney@ managed to repro; fserb@ could you team up and take a look?
,
Oct 12
@ #11 The video I posted on #3 is running on GTX 1060 (the video is recorded by #8), and #7 seems to have reproduced the problem too. So this is not the new RTX series only, but maybe it's related to the newer version of the NVIDIA driver.
,
Oct 15
This is probably compositing. Dana, could you help us?
,
Oct 16
If I'm reading this right it was diagnosed to gpu raster differences which would be a bug in skia raster implementation? Maybe could you reiterate where compositing is involved and I missed it? Is this a regression, can it be bisected?
,
Oct 17
reassigning for questions
,
Oct 25
So. the getImageData() probably forces this back into a non-accelerated canvas, which in turn makes it back to a non composited layer. But yeah, it could as well be something in skia raster. Removing myself from owner, hoping this gets picked up by someone on GPU Raster.
,
Oct 25
,
Oct 31
I think I have a repro. Most of the left edge of the black stroked rectangle disappears.
,
Oct 31
I grabbed a SKP using --enable-gpu-benchmarking and it doesn't repro in skia's viewer tool.
,
Oct 31
Actually I get a similar result in viewer if I run it in ANGLE D3D11 mode.
,
Nov 13
Similarly, I get a repro in Chrome if I run with --use-gl=angle but not with --use-gl=desktop or --use-gl=swiftshader.
,
Nov 14
The difference seems to be related to the presence of dual source blending in non-ANGLE GLs. I get a repro if in regular GL if I disable dual source blending support in Skia.
,
Nov 16
The following revision refers to this bug: https://skia.googlesource.com/skia/+/09181ef04259c7ebafb4ea72f6a0e0ee45245522 commit 09181ef04259c7ebafb4ea72f6a0e0ee45245522 Author: Brian Salomon <bsalomon@google.com> Date: Fri Nov 16 19:24:04 2018 Fix dst copy bounds for aa draw contained within clip. Bug: chromium:892988 Change-Id: I615b60facec5724fb3a7c22a2eb59f72790156a3 Reviewed-on: https://skia-review.googlesource.com/c/171001 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com> [modify] https://crrev.com/09181ef04259c7ebafb4ea72f6a0e0ee45245522/gn/gm.gni [modify] https://crrev.com/09181ef04259c7ebafb4ea72f6a0e0ee45245522/src/gpu/GrRenderTargetContext.h [add] https://crrev.com/09181ef04259c7ebafb4ea72f6a0e0ee45245522/gm/crbug_892988.cpp [modify] https://crrev.com/09181ef04259c7ebafb4ea72f6a0e0ee45245522/src/gpu/GrRenderTargetContext.cpp
,
Nov 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6efc7a2bf8b43d5727cee986c806c0593f41c6c7 commit 6efc7a2bf8b43d5727cee986c806c0593f41c6c7 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Fri Nov 16 22:03:57 2018 Roll src/third_party/skia 07ee63d076e5..19ec80fb37ce (11 commits) https://skia.googlesource.com/skia.git/+log/07ee63d076e5..19ec80fb37ce git log 07ee63d076e5..19ec80fb37ce --date=short --no-merges --format='%ad %ae %s' 2018-11-16 bsalomon@google.com Discard ops that don't have a finite bounds. 2018-11-16 bsalomon@google.com Fix dst copy bounds for aa draw contained within clip. 2018-11-16 mtklein@google.com there are no POSTAMBLEs 2018-11-16 herb@google.com Link SubRuns to Runs, and Runs to Blobs. 2018-11-16 reed@google.com Revert "remove SK_SUPPORT_LEGACY_NESTED_HINTINGENUM from flutter" 2018-11-16 reed@google.com Revert "remove dead code around SK_SUPPORT_LEGACY_FONT_FLAGS" 2018-11-16 reed@google.com remove dead code around SK_SUPPORT_LEGACY_FONT_FLAGS 2018-11-16 reed@google.com remove SK_SUPPORT_LEGACY_NESTED_HINTINGENUM from flutter 2018-11-16 csmartdalton@google.com Prefer GrAAConvexPathRenderer over ccpr 2018-11-16 jvanverth@google.com Revert "Remove use of integers for atlas indexing" 2018-11-16 reed@google.com remove SK_SUPPORT_LEGACY_FONT_FLAGS from flutter Created with: gclient setdep -r src/third_party/skia@19ec80fb37ce The AutoRoll server is located here: https://autoroll.skia.org/r/skia-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel BUG= chromium:905782 , chromium:892988 ,chromium:860021 TBR=rmistry@chromium.org Change-Id: I7e4852fe7dc50d97201d734aa426e1e8dbfc22ba Reviewed-on: https://chromium-review.googlesource.com/c/1340574 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#608973} [modify] https://crrev.com/6efc7a2bf8b43d5727cee986c806c0593f41c6c7/DEPS
,
Nov 19
|
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by swarnasree.mukkala@chromium.org
, Oct 8