New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 765297 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

Black lines on zillow when the screen resolution is increased on Chrome OS

Project Member Reported by esprehn@chromium.org, Sep 14 2017

Issue description

Google Chrome	61.0.3163.80 (Official Build) beta (64-bit)
Revision	0
Platform	9765.53.0 (Official Build) beta-channel chell
Firmware Version	Google_Chell.7820.253.0

What steps will reproduce the problem?
(1) Go to zillow.com
(2) Increase the screen to 1280x720
(3) Hover the menus at the top back and forth.

What is the expected result?

No black lines.

What happens instead?

Horizontal and vertical black lines. Not all of them are captured in the screenshot either.
 
gpu.zip
12.8 KB Download
zillow-lines.png
264 KB View Download
zillow-lines-2.png
24.6 KB View Download
zillow-lines-3.png
80.8 KB View Download
Components: -Blink>Paint Internals>Compositing
Does this only happen on the specific device? I can't repro on Linux with a large display.

We're not painting the lines, and it's not layout related, so I have to say it's compositor tiling or some other GPU artifact.

Comment 3 by pdr@chromium.org, Sep 14 2017

Thanks for taking the time to file this. What device is this? Googling for Google_Chell.7820.253.0.. "HP Chromebook 13"?

Comment 4 by ericrk@chromium.org, Sep 15 2017

Cc: enne@chromium.org ericrk@chromium.org
Owner: vmp...@chromium.org
Status: Assigned (was: Untriaged)
It seems possible that this is an issue where display scaling leads to rounding and seams between tiles (or incorrect clip rects for raster). Probably need to hit the exact display resolution/scaling in question. We should try to get one of these devices from the CrOS team and repro.

vmpstr@, I'm working remotely the next couple weeks, if you're around, can you see if ejcaruso@ has any of these devices (or knows someone who does) and try to repro?

Comment 5 by vmp...@chromium.org, Sep 15 2017

Cc: ejcaruso@chromium.org
It does reproduce on HP Chromebook 13. The seam happens at exactly the tile border. Disabling gpu raster seems to fix it but it might just be that we're using different tile sizes there. Unfortunately the only device we have isn't a dev device, but I will see if I can find a dev one.

Comment 6 by enne@chromium.org, Sep 18 2017

I haven't debugged this directly, but sounds similar to issue 623198.

Comment 7 by vmp...@chromium.org, Sep 26 2017

I've reduced the page to the following:

<body style="background-color:blue">
  <div style="will-change: transform; position: absolute; top: 0px;">
    <div style="background-color: rgb(0, 255, 255); bottom: -256px; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 2px 0px; height: 255px; position: absolute; top: 50px; width: 500px;">
    </div>
    <div style="box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 2px 0px; position: absolute; top: 50px; transform: matrix(1, 0, 0, 1, 0, -9999);">
    </div>
  </div>
</body>

The expected result is to see a cyan div on a blue background. The actual result on HP Chromebook 13 with that specific screen resolution is a cyan div with a blue line running through it. I'm going to try and reproduce this on a linux chromeos build (fwiw, regular linux desktop and mac desktop all render the page correctly)
Project Member

Comment 8 by bugdroid1@chromium.org, Sep 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/88f611ff8f295b4b75943a0932f357c0677e7b8a

commit 88f611ff8f295b4b75943a0932f357c0677e7b8a
Author: Vladimir Levin <vmpstr@chromium.org>
Date: Fri Sep 29 17:54:15 2017

cc: Shift far scrolled quads up in order to avoid floating inprecision.

In the situations when the visible rect is scrolled far enough away,
we can start experiencing floating point precision issues in the aa
path of the gl renderer. To avoid this, this patch shifts the quads
up and adjusts the quad_to_target_transform in the opposite direction.

In effect, the quads still appear in the same place, but the absolute
numbers involved in the calculation are smaller thus avoiding floating
point problems.

R=enne@chromium.org

Bug: 765297
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ib93ddc0fa367116d53b4d471c9523fcce518e0bd
Reviewed-on: https://chromium-review.googlesource.com/690848
Reviewed-by: enne <enne@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#505418}
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/layer_impl.h
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/nine_patch_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/painted_overlay_scrollbar_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/painted_scrollbar_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/picture_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/picture_layer_impl_unittest.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/solid_color_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/solid_color_scrollbar_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/texture_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/ui_resource_layer_impl.cc
[modify] https://crrev.com/88f611ff8f295b4b75943a0932f357c0677e7b8a/cc/layers/video_layer_impl.cc

Sign in to add a comment