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

Issue 833083 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 1
Type: Bug-Regression

Blocking:
issue 803867



Sign in to add a comment

[SPv175] Repaint storm during animation with subpixel lengths

Project Member Reported by pdr@chromium.org, Apr 14 2018

Issue description

Looking at this graph:
https://chromeperf.appspot.com/report?sid=8ef91d5a4458f46817ab7676bba34409cd4a9d5d53289e9b634740bf9eb8c132&start_rev=527525&end_rev=550872

spv175 enabled - r537454 - graph goes up
spv175 disabled - r539401 - graph goes down
spv175 enabled - r543291 - graph goes up

It looks like a bot outage almost masks the regression but the regression is visible in several graphs. I think this is a real regression.
 
This might be the cause of frame_time regression in  bug 822865 .
Blocking: -771643 803867
Started https://pinpoint-dot-chromeperf.appspot.com/job/16ebc832c40000 to capture traces of r543290 and r543291, with "Frame Viewer" tracing categories (blink,cc,gpu,renderer.scheduler,v8,toplevel,disabled-by-default-cc.debug,disabled-by-default-cc.debug.picture,disabled-by-default-cc.debug.display_items).
Owner: wangxianzhu@chromium.org
Status: Assigned (was: Untriaged)
Assigning for investigation.
This page https://chromeperf.appspot.com/report?sid=dd640b1bae7640ab262b042ca6a729f21e9ea9695c8cac7bf5ca20f58f517bc4&start_rev=527525&end_rev=552057 contains all related tasks_per_frame and cpu_time_per_frame graphs. This might be a raster regression due to different paint ops.
Labels: -Pri-3 Pri-2
This is an over-raster-invalidation issue, instead of a paint ops issue.
Labels: -Type-Bug -Pri-2 M-67 Pri-1 Type-Bug-Regression
Reduced test case, based on http://jsfiddle.net/3yDKh/16. Needs --enable-prefer-compositing-to-lcd-text on low-dpi machine to reproduce.

Ideally, none of the moving elements should be invalidated because they are composited. On SPv1, we invalidate the first box (whose margin-top changes). On SPv175, we invalidate all of the boxes.
fiddle16.html
592 bytes View Download
Cc: -wangxianzhu@chromium.org pdr@chromium.org fmalita@chromium.org trchen@chromium.org chrishtr@chromium.org
The over-invalidation is caused by paint-offset change in sub-pixels.

For SPv1, we calculate visual rect in backing object coordinates which doesn't include backing object's sub-pixel accumulation. We add sub-pixel accumulation to the visual rect when we issue raster invalidation, and sub-pixel accumulation change of a composited layer doesn't trigger raster invalidation.

For SPv175, composited layer's sub-pixel accumulation is baked in paint offset of all descendants (unless the subpixel accumulation is discarded because of complex transform, etc.), so change of sub-pixel accumulation of the composited layer will cause paint offset change of all descendants. 

I'm not sure the correct/best way to handle paint offset change in sub-pixels. Fully invalidate (which is the current status of SPv175) is not acceptable because that slows down every movement animation of composited layers. Can we just ignore it for composited layers? It seems that change of sub-pixel accumulation can cause change of visual size of an sub-pixel sized object due to top-left corner and bottom-right corner can be pixel-snapped in different directions. However, this seems actually ignored for composited layers in SPv1. Perhaps we can just let SPv175 behaves like SPv1 at first?

Wdyt?
Cc: alancutter@chromium.org
Summary: [SPv175] Repaint storm during animation with subpixel lengths (was: thread_GPU_cpu_time_per_frame seems like a real spv175 regression)
Discussed the issue with trchen@ on Friday. The root cause seems that animation in subpixels is incompatible with pixel snapping, for composited animation. For example, a box with subpixel location and size can change pixel-snapped size when animating its location with subpixels, causing compositing-only animation not applicable.

Thinking of the following solutions:
1. Fix the root cause(?): round some interpolated values during animation.
   Pros:
     The root cause?
   Cons:
     Needs to change css animation code
     What if the start and end values are with subpixels?
     Doesn't work for javascript animations
 
2. Like SPv1, accept imperfection of pixel-snapping for composited layers with subpixel accumulation. That is, ignore pixel-snapped size change of a composited layer contents during animation:
  - visual rects are calculated with composited layer's subpixel accumulation excluded;
  - don't call EnclosingIntRect in PaintInvalidator::MapLocalRectToVisualRectInBacking() (unless some special cases)
  - add composited layer's subpixel accumulation to visual rects when we issue raster invalidations and send the visual rects to cc.

   Pros:
     Compatible with SPv1
     Can fix the regression quickly
   Cons (all existing in SPv1):
     Imperfection of pixel-snapping
     Needs to expose subpixel accumulation to platform.

I'm inclined to approach 2. Wdyt?

We still need to find a good solution for SPv2.

I think equivalent CSS and Javascript animations invoke identical layout and paint behaviour when possible so I'm in favour of option 2 despite not fully understanding the paint concepts involved.
*should invoke identical layout and paint behaviour
One comment: composited layers do invalidate on subpixel accumulation
change, if the composited layer had no direct compositing reason.

See CompositedLayerMapping::ComputeBoundsOfOwningLayer:

https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/paint/compositing/composited_layer_mapping.cc?type=cs&q=CompositedLayerMapping::ComputeBoundsOfOwningLayer&sq=package:chromium&l=949
Also: compositing and subpixel positioning are fundamentally at odds. This is because
compositing is a texture caching strategy. "Subpixel" positioning is a technique
to simulate some aspects of higher resolution screens by blending and rounding in clever
ways. Invalidating the texture and re-computing optimal positions on subpixel change
works, but that defeats the performance advantage of compositing. This is the reason
for the special-case code mentioned in comment 12.

This is the same class of issue that leads to performance/quality tradeoffs such as that
involved in the discussions of the behavior of will-change: transform w.r.t. raster
behavior.

However, note that there are multiple fast paths here:

(1) change of composited transform
(2) change of composited layer subpixel position

The code linked to in comment 12 is for use-case (2).
I had read #c12 code before making https://chromium-review.googlesource.com/c/chromium/src/+/1023606 but didn't notice it's limited direct composited layers. Is it to avoid the chicken-and-egg issue or we just want to limit to direct composited layers? My CL can be simplified if we still limit to direct composited layers.
The reason for the limit to directly composited layers was to address the tradeoff
between quality and performance, similar to will-change: transform. If a composited
layer is not direct, the code assumes that the developer prefers quality over
performance.

See:

https://chromium-review.googlesource.com/c/chromium/src/+/549092#message-d3f68e3578d87f9f763d9d861a7c96721616cd0d


For such composited layers, isn't the subpixel accumulation baked into the paint offset transform?
Re #c16 No. I think a whole blurry layer is much worse than some non-noticeable pixel-snapping differences of sub-pixel-sized boxes in the sub-pixel-positioned composited layer.
Oh right, now I recall that subpixel accumulation is explicitly excluded from the paint offset transform.

Anyway, I think comment 9 option (2), restricted to directly composited, would be good.
Project Member

Comment 19 by bugdroid1@chromium.org, Apr 25 2018

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

commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Wed Apr 25 07:49:19 2018

[SPv175] Avoid full layer invalidation for composited animation with subpixels

It's unfortunate that composited animation with subpixels is
incompatible with pixel snapping. We have to accept some imperfection
of pixel snapping to achieve high performance composited animation
with subpixels, otherwise each step of the animation might cause
full layer raster invalidation.

SPv175 lost the imperfect optimization and this CL brings it back by
- excluding the subpixel accumulation of the composited layer from
  the visual rects of composted layer contents, if there is no non-
  translation transform between the composited layer and the object.
- adding the subpixel accumulation back to the final visual rects
  when generating raster invalidations and convert to cc display
  item list.

Bug:  833083 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
Reviewed-on: https://chromium-review.googlesource.com/1023606
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553479}
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[add] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[add] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/801d8f04920f3bf226c6aaeba93f1c9100fda3c7/third_party/blink/renderer/platform/graphics/graphics_layer.h

Project Member

Comment 20 by bugdroid1@chromium.org, Apr 26 2018

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

commit da6511ca6f9d72fd403b395fb42cbaedba2468db
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Apr 26 17:31:58 2018

Revert "[SPv175] Avoid full layer invalidation for composited animation with subpixels"

This reverts commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7.

Reason for revert: null pointer crash (crbug.com/837226).

Original change's description:
> [SPv175] Avoid full layer invalidation for composited animation with subpixels
> 
> It's unfortunate that composited animation with subpixels is
> incompatible with pixel snapping. We have to accept some imperfection
> of pixel snapping to achieve high performance composited animation
> with subpixels, otherwise each step of the animation might cause
> full layer raster invalidation.
> 
> SPv175 lost the imperfect optimization and this CL brings it back by
> - excluding the subpixel accumulation of the composited layer from
>   the visual rects of composted layer contents, if there is no non-
>   translation transform between the composited layer and the object.
> - adding the subpixel accumulation back to the final visual rects
>   when generating raster invalidations and convert to cc display
>   item list.
> 
> Bug:  833083 
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
> Reviewed-on: https://chromium-review.googlesource.com/1023606
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#553479}

TBR=wangxianzhu@chromium.org,trchen@chromium.org,chrishtr@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug:  833083 , 837226
Change-Id: Ib4b7219eee07e3b0115b75a9be28cfe6c381f82c
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/1030710
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#554065}
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[delete] https://crrev.com/c63d7cda22ea96f712b41bbedc2421ba788addbd/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[delete] https://crrev.com/c63d7cda22ea96f712b41bbedc2421ba788addbd/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[delete] https://crrev.com/c63d7cda22ea96f712b41bbedc2421ba788addbd/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[delete] https://crrev.com/c63d7cda22ea96f712b41bbedc2421ba788addbd/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/da6511ca6f9d72fd403b395fb42cbaedba2468db/third_party/blink/renderer/platform/graphics/graphics_layer.h

Project Member

Comment 21 by bugdroid1@chromium.org, Apr 26 2018

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

commit df68f1a419d61a979688190d85ec3e4773790ec9
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Apr 26 18:01:37 2018

Reland "[SPv175] Avoid full layer invalidation for composited animation with subpixels"

This reverts commit da6511ca6f9d72fd403b395fb42cbaedba2468db.

Add null pointer checks.

Original change's description:
> Revert "[SPv175] Avoid full layer invalidation for composited animation with subpixels"
> 
> This reverts commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7.
> 
> Reason for revert: null pointer crash (crbug.com/837226).
> 
> Original change's description:
> > [SPv175] Avoid full layer invalidation for composited animation with subpixels
> > 
> > It's unfortunate that composited animation with subpixels is
> > incompatible with pixel snapping. We have to accept some imperfection
> > of pixel snapping to achieve high performance composited animation
> > with subpixels, otherwise each step of the animation might cause
> > full layer raster invalidation.
> > 
> > SPv175 lost the imperfect optimization and this CL brings it back by
> > - excluding the subpixel accumulation of the composited layer from
> >   the visual rects of composted layer contents, if there is no non-
> >   translation transform between the composited layer and the object.
> > - adding the subpixel accumulation back to the final visual rects
> >   when generating raster invalidations and convert to cc display
> >   item list.
> > 
> > Bug:  833083 
> > Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> > Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
> > Reviewed-on: https://chromium-review.googlesource.com/1023606
> > Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> > Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#553479}
> 
> TBR=wangxianzhu@chromium.org,trchen@chromium.org,chrishtr@chromium.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug:  833083 , 837226
> Change-Id: Ib4b7219eee07e3b0115b75a9be28cfe6c381f82c
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Reviewed-on: https://chromium-review.googlesource.com/1030710
> Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#554065}

TBR=wangxianzhu@chromium.org,trchen@chromium.org,chrishtr@chromium.org

Change-Id: I66042496f138a4ab4f17115051639f295a985af7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  833083 , 837226
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/1030783
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#554079}
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[add] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[add] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/df68f1a419d61a979688190d85ec3e4773790ec9/third_party/blink/renderer/platform/graphics/graphics_layer.h

Project Member

Comment 22 by bugdroid1@chromium.org, Apr 26 2018

Labels: merge-merged-3409
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e42543e1aabbd8104b7fc7b24de70da333b4bfbc

commit e42543e1aabbd8104b7fc7b24de70da333b4bfbc
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Apr 26 20:32:58 2018

Revert "[SPv175] Avoid full layer invalidation for composited animation with subpixels"

This reverts commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7.

Reason for revert: null pointer crash (crbug.com/837226).

Original change's description:
> [SPv175] Avoid full layer invalidation for composited animation with subpixels
>
> It's unfortunate that composited animation with subpixels is
> incompatible with pixel snapping. We have to accept some imperfection
> of pixel snapping to achieve high performance composited animation
> with subpixels, otherwise each step of the animation might cause
> full layer raster invalidation.
>
> SPv175 lost the imperfect optimization and this CL brings it back by
> - excluding the subpixel accumulation of the composited layer from
>   the visual rects of composted layer contents, if there is no non-
>   translation transform between the composited layer and the object.
> - adding the subpixel accumulation back to the final visual rects
>   when generating raster invalidations and convert to cc display
>   item list.
>
> Bug:  833083 
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
> Reviewed-on: https://chromium-review.googlesource.com/1023606
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#553479}

TBR=chrishtr@chromium.org, trchen@chromium.org, wangxianzhu@chromium.org


(cherry picked from commit da6511ca6f9d72fd403b395fb42cbaedba2468db)

Bug:  833083 , 837226
Change-Id: Ib4b7219eee07e3b0115b75a9be28cfe6c381f82c
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/1030710
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#554065}
Reviewed-on: https://chromium-review.googlesource.com/1031201
Cr-Commit-Position: refs/branch-heads/3409@{#2}
Cr-Branched-From: 14c5d49cfb5674793fe0d5223cc4cf257732a8ff-refs/heads/master@{#553714}
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[delete] https://crrev.com/c4b149e8e5b6c25f722c56876a5b27aac0104d4a/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[delete] https://crrev.com/c4b149e8e5b6c25f722c56876a5b27aac0104d4a/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[delete] https://crrev.com/c4b149e8e5b6c25f722c56876a5b27aac0104d4a/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[delete] https://crrev.com/c4b149e8e5b6c25f722c56876a5b27aac0104d4a/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/e42543e1aabbd8104b7fc7b24de70da333b4bfbc/third_party/blink/renderer/platform/graphics/graphics_layer.h

Project Member

Comment 23 by bugdroid1@chromium.org, Apr 26 2018

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

commit 159723889866114e2778efcf9edacde873e5449e
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Apr 26 20:34:15 2018

Reland "[SPv175] Avoid full layer invalidation for composited animation with subpixels"

This reverts commit da6511ca6f9d72fd403b395fb42cbaedba2468db.

Add null pointer checks.

Original change's description:
> Revert "[SPv175] Avoid full layer invalidation for composited animation with subpixels"
>
> This reverts commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7.
>
> Reason for revert: null pointer crash (crbug.com/837226).
>
> Original change's description:
> > [SPv175] Avoid full layer invalidation for composited animation with subpixels
> >
> > It's unfortunate that composited animation with subpixels is
> > incompatible with pixel snapping. We have to accept some imperfection
> > of pixel snapping to achieve high performance composited animation
> > with subpixels, otherwise each step of the animation might cause
> > full layer raster invalidation.
> >
> > SPv175 lost the imperfect optimization and this CL brings it back by
> > - excluding the subpixel accumulation of the composited layer from
> >   the visual rects of composted layer contents, if there is no non-
> >   translation transform between the composited layer and the object.
> > - adding the subpixel accumulation back to the final visual rects
> >   when generating raster invalidations and convert to cc display
> >   item list.
> >
> > Bug:  833083 
> > Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> > Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
> > Reviewed-on: https://chromium-review.googlesource.com/1023606
> > Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> > Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#553479}
>
> TBR=wangxianzhu@chromium.org,trchen@chromium.org,chrishtr@chromium.org
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Bug:  833083 , 837226
> Change-Id: Ib4b7219eee07e3b0115b75a9be28cfe6c381f82c
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Reviewed-on: https://chromium-review.googlesource.com/1030710
> Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#554065}

TBR=chrishtr@chromium.org, trchen@chromium.org, wangxianzhu@chromium.org

(cherry picked from commit df68f1a419d61a979688190d85ec3e4773790ec9)

Change-Id: I66042496f138a4ab4f17115051639f295a985af7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  833083 , 837226
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/1030783
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#554079}
Reviewed-on: https://chromium-review.googlesource.com/1031189
Cr-Commit-Position: refs/branch-heads/3409@{#3}
Cr-Branched-From: 14c5d49cfb5674793fe0d5223cc4cf257732a8ff-refs/heads/master@{#553714}
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[add] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[add] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/159723889866114e2778efcf9edacde873e5449e/third_party/blink/renderer/platform/graphics/graphics_layer.h

Labels: Merge-Request-67
Request merge of https://chromium-review.googlesource.com/1030783.
Project Member

Comment 25 by sheriffbot@chromium.org, Apr 27 2018

Labels: -Merge-Request-67 Merge-Review-67 Hotlist-Merge-Review
This bug requires manual review: Reverts referenced in bugdroid comments after merge request.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: OS-Chrome OS-Linux OS-Mac OS-Windows
About the CLs:
- r553479: the original CL which caused null pointer crashes;
- r554065: revert of r553479
- r554079: reland of r553479 with the null pointer issue fixed.

Only r554079 needs merge into M67.
r554079 is large CL. Could you pls justify M67 merge? Why it is needed and how safe it is?
Justifications:

- The bug is a major performance regression of SlimmingPaintV175 (enabled in M67). The CL will fix the regression.

- The CL looks big, but many lines are just for plumbing and for limiting the real functional code to safe cases only. Compared to r553479, r554079 also adds code to avoid possible failing cases.

- The same mechanism has been verified in SlimmingPaintV1 (before M67) in many milestones.
Labels: -Merge-Review-67 Merge-Approved-67
Approving merge for cl r554079 to M67 branch 3396 based on comment #29. Please merge ASAP. 
Project Member

Comment 31 by bugdroid1@chromium.org, Apr 27 2018

Labels: -merge-approved-67 merge-merged-3396
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/23f9a1e5a9d1e629dfeee5792080687409fc4f63

commit 23f9a1e5a9d1e629dfeee5792080687409fc4f63
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Fri Apr 27 21:28:04 2018

Reland "[SPv175] Avoid full layer invalidation for composited animation with subpixels"

This reverts commit da6511ca6f9d72fd403b395fb42cbaedba2468db.

Add null pointer checks.

Original change's description:
> Revert "[SPv175] Avoid full layer invalidation for composited animation with subpixels"
>
> This reverts commit 801d8f04920f3bf226c6aaeba93f1c9100fda3c7.
>
> Reason for revert: null pointer crash (crbug.com/837226).
>
> Original change's description:
> > [SPv175] Avoid full layer invalidation for composited animation with subpixels
> >
> > It's unfortunate that composited animation with subpixels is
> > incompatible with pixel snapping. We have to accept some imperfection
> > of pixel snapping to achieve high performance composited animation
> > with subpixels, otherwise each step of the animation might cause
> > full layer raster invalidation.
> >
> > SPv175 lost the imperfect optimization and this CL brings it back by
> > - excluding the subpixel accumulation of the composited layer from
> >   the visual rects of composted layer contents, if there is no non-
> >   translation transform between the composited layer and the object.
> > - adding the subpixel accumulation back to the final visual rects
> >   when generating raster invalidations and convert to cc display
> >   item list.
> >
> > Bug:  833083 
> > Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> > Change-Id: Ie8cfb3712bf7839a60b2a3187fd792b0fa4fe4d2
> > Reviewed-on: https://chromium-review.googlesource.com/1023606
> > Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> > Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#553479}
>
> TBR=wangxianzhu@chromium.org,trchen@chromium.org,chrishtr@chromium.org
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> Bug:  833083 , 837226
> Change-Id: Ib4b7219eee07e3b0115b75a9be28cfe6c381f82c
> Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
> Reviewed-on: https://chromium-review.googlesource.com/1030710
> Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#554065}

TBR=chrishtr@chromium.org, trchen@chromium.org, wangxianzhu@chromium.org

(cherry picked from commit df68f1a419d61a979688190d85ec3e4773790ec9)

Change-Id: I66042496f138a4ab4f17115051639f295a985af7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  833083 , 837226
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Reviewed-on: https://chromium-review.googlesource.com/1030783
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#554079}
Reviewed-on: https://chromium-review.googlesource.com/1033329
Cr-Commit-Position: refs/branch-heads/3396@{#360}
Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428}
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/fast/sub-pixel/repaint-subpixel-layer-in-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/fast/sub-pixel/should-not-repaint-subpixel-composited-layer-expected.txt
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.html
[add] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[add] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/paint/invalidation/compositing/composited-layers-move-in-subpixels.html
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/paint/invalidation/transform/subpixel-offset-scaled-transform-expected.txt
[add] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/compositing/composited-layers-move-in-subpixels-expected.txt
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/layout/layout_object.h
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/paint/box_paint_invalidator_test.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/paint/object_paint_invalidator.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/paint/paint_invalidator.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/paint/paint_invalidator.h
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/chunk_to_layer_mapper.h
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/composited_layer_raster_invalidator.h
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer.h
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/compositing/paint_chunks_to_cc_layer_test.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/graphics_layer.cc
[modify] https://crrev.com/23f9a1e5a9d1e629dfeee5792080687409fc4f63/third_party/blink/renderer/platform/graphics/graphics_layer.h

Status: Fixed (was: Assigned)

Sign in to add a comment