Bug 223283 - REGRESSION (r274461): [macOS wk1] fast/repaint/canvas-object-fit.html is flakey text failing
Summary: REGRESSION (r274461): [macOS wk1] fast/repaint/canvas-object-fit.html is flak...
Status: REOPENED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Simon Fraser (smfr)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-03-16 14:53 PDT by Robert Jenner
Modified: 2021-05-04 14:16 PDT (History)
5 users (show)

See Also:


Attachments
Patch (2.40 KB, patch)
2021-03-16 16:49 PDT, Simon Fraser (smfr)
no flags Details | Formatted Diff | Diff
Patch (3.17 KB, patch)
2021-03-16 16:54 PDT, Simon Fraser (smfr)
no flags Details | Formatted Diff | Diff
Patch for landing (3.23 KB, patch)
2021-05-03 13:51 PDT, Ryan Haddad
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Jenner 2021-03-16 14:53:56 PDT
fast/repaint/canvas-object-fit.html

is a flakey text failure in macOS Catalina and BigSur in release and debug on Intel and Apple Silicon only in wk1. 


HISTORY URL:
https://results.webkit.org/?suite=layout-tests&test=fast%2Frepaint%2Fcanvas-object-fit.html&platform=mac

TEXT DIFF:
@@ -10,9 +10,6 @@
           (position 8.00 8.00)
           (bounds 202.00 102.00)
           (drawsContent 1)
-          (repaint rects
-            (rect 70.00 20.00 7.00 7.00)
-          )
         )
       )
     )

It is a flakey text failure, but the failures to appear to happen more often than not.
Comment 1 Radar WebKit Bug Importer 2021-03-16 14:54:25 PDT
<rdar://problem/75495803>
Comment 2 Robert Jenner 2021-03-16 15:08:57 PDT
Was able to reproduce and bisect to a regression point.


I reproduced the failure using the following test:
run-webkit-test fast/repaint/canvas-object-fit.html --iterations 100 -f -1

The test produced the text failure at ToT, and 274461. Failures did not occur at 274460. 

Changes in 274460 do appear to be related to the test that is failing. 
https://trac.webkit.org/changeset/274461/webkit
Comment 3 Robert Jenner 2021-03-16 15:45:08 PDT
Updated test expectations for this test in wk1 to Pass Failure while test is being reviewed: 
https://trac.webkit.org/changeset/274525/webkit
Comment 4 Simon Fraser (smfr) 2021-03-16 16:25:45 PDT
Bad:

16:23:02.570 41683   Page::updateRendering
16:23:02.570 41683   CanvasRenderingContext2DBase::didDraw
16:23:02.570 41683   HTMLCanvasElement::didDraw - 0.0,0.0 200.0x200.0
16:23:02.570 41683   CanvasRenderingContext2DBase::didDraw
16:23:02.570 41683   HTMLCanvasElement::didDraw - null rect
16:23:02.570 41683   Page::updateRendering
16:23:02.570 41683   HTMLCanvasElement 0x160430108 paint
16:23:02.570 41683   Page::updateRendering

Good:

16:23:02.499 41683   CanvasRenderingContext2DBase::didDraw
16:23:02.499 41683   HTMLCanvasElement::didDraw - 0.0,0.0 200.0x200.0
16:23:02.499 41683   HTMLCanvasElement 0x1609f2850 paint
16:23:02.499 41683   CanvasRenderingContext2DBase::didDraw
16:23:02.499 41683   HTMLCanvasElement::didDraw - 40.0,40.0 10.0x10.0
16:23:02.499 41683   Page::updateRendering
16:23:02.499 41683   HTMLCanvasElement 0x1609f2850 paint
16:23:02.499 41683   Page::updateRendering

Note the "HTMLCanvasElement 0x1609f2850 paint" is missing in the bad case.
Comment 5 Simon Fraser (smfr) 2021-03-16 16:37:58 PDT
Bad:
16:36:19.749 46316   WebViewLayerFlushScheduler::schedule()
16:36:19.749 46316   WebViewLayerFlushScheduler::layerFlushCallback()
16:36:19.749 46316   LayerFlushController::flushLayers()
16:36:19.749 46316   WebView 0x7f800b40bec0 _updateRendering
16:36:19.750 46316   Page::updateRendering
16:36:19.750 46316   CanvasRenderingContext2DBase::didDraw
16:36:19.750 46316   HTMLCanvasElement::didDraw - 0.0,0.0 200.0x200.0
16:36:19.750 46316   CanvasRenderingContext2DBase::didDraw
16:36:19.750 46316   HTMLCanvasElement::didDraw - null rect
16:36:19.750 46316   WebViewLayerFlushScheduler::schedule()
16:36:19.750 46316   _forceRepaintForTesting
16:36:19.750 46316   WebView 0x7f800b40bec0 _updateRendering
16:36:19.750 46316   Page::updateRendering
16:36:19.750 46316   _forceRepaintForTesting - flushing
16:36:19.750 46316   WebSimpleLayer display
16:36:19.750 46316   HTMLCanvasElement 0x15df38210 paint
16:36:19.750 46316   WebViewLayerFlushScheduler::layerFlushCallback()
16:36:19.750 46316   LayerFlushController::flushLayers()
16:36:19.750 46316   WebView 0x7f800b40bec0 _updateRendering
16:36:19.750 46316   Page::updateRendering

Good:
16:36:19.675 46316   WebViewLayerFlushScheduler::schedule()
16:36:19.675 46316   CanvasRenderingContext2DBase::didDraw
16:36:19.675 46316   HTMLCanvasElement::didDraw - 0.0,0.0 200.0x200.0
16:36:19.675 46316   WebSimpleLayer display
16:36:19.675 46316   HTMLCanvasElement 0x15df38108 paint
16:36:19.675 46316   WebViewLayerFlushScheduler::schedule()
16:36:19.675 46316   CanvasRenderingContext2DBase::didDraw
16:36:19.675 46316   HTMLCanvasElement::didDraw - 40.0,40.0 10.0x10.0
16:36:19.675 46316   WebViewLayerFlushScheduler::schedule()
16:36:19.675 46316   _forceRepaintForTesting
16:36:19.675 46316   WebView 0x7f800b40bec0 _updateRendering
16:36:19.675 46316   Page::updateRendering
16:36:19.675 46316   _forceRepaintForTesting - flushing
16:36:19.675 46316   WebSimpleLayer display
16:36:19.675 46316   HTMLCanvasElement 0x15df38108 paint
16:36:19.675 46316   WebViewLayerFlushScheduler::layerFlushCallback()
16:36:19.675 46316   LayerFlushController::flushLayers()
16:36:19.675 46316   WebView 0x7f800b40bec0 _updateRendering
16:36:19.675 46316   Page::updateRendering
Comment 6 Simon Fraser (smfr) 2021-03-16 16:49:28 PDT
Created attachment 423413 [details]
Patch
Comment 7 Simon Fraser (smfr) 2021-03-16 16:54:43 PDT
Created attachment 423416 [details]
Patch
Comment 8 Ryan Haddad 2021-04-19 15:03:24 PDT
Is this good to land?
Comment 9 EWS 2021-04-19 15:11:10 PDT
Tools/Scripts/svn-apply failed to apply attachment 423416 [details] to trunk.
Please resolve the conflicts and upload a new patch.
Comment 10 Ryan Haddad 2021-05-03 13:51:22 PDT
Created attachment 427600 [details]
Patch for landing
Comment 11 EWS 2021-05-03 14:22:06 PDT
Committed r276924 (237266@main): <https://commits.webkit.org/237266@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 427600 [details].
Comment 12 Truitt Savell 2021-05-04 14:16:43 PDT
This change https://trac.webkit.org/changeset/276924/webkit

unfortunately did not fix this test. History still shows flaky failures and the same diff.