Closed Bug 1417358 Opened 7 years ago Closed 6 years ago

Intermittent display-list/retained-dl-async-scrolled-1.html == display-list/retained-dl-async-scrolled-1-ref.html | failed reftest-no-display-list

Categories

(Core :: Web Painting, defect, P5)

defect

Tracking

()

RESOLVED FIXED
mozilla60
Tracking Status
firefox60 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: tnikkel)

Details

(Keywords: intermittent-failure, Whiteboard: [stockwell fixed:product])

Attachments

(1 file)

Component: Build Config → Layout
This bug has been filed 9 days ago. 
There have been 36 total failures in the last week, according to Orange Factor.
 
 Occurrences per platform:
 - 10 linux x64
 - 9 linux 
 - 9 linux64-qr
 - 3 windows 7
 - 2 linux64-stylo-disabled
 - 2 OS X 10.10
 - 1 linux32-stylo-disabled
 
 Occurrences per build type:
 - 33 debug
 - 2 opt	
 - 1 asan
  
Here is a relevant recent log: 
https://treeherder.mozilla.org/logviewer.html#?repo=mozilla-inbound&job_id=147264827&lineNumber=21728

and a snippet from it:
  
[task 2017-11-23T23:58:07.128Z] 23:58:07     INFO - REFTEST TEST-START | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1.html == file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1-ref.html
21724
[task 2017-11-23T23:58:07.131Z] 23:58:07     INFO - REFTEST TEST-LOAD | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1.html | 1950 / 1964 (99%)
21725
[task 2017-11-23T23:58:07.154Z] 23:58:07     INFO - ++DOMWINDOW == 197 (0x7fbef785c800) [pid = 1050] [serial = 5089] [outer = 0x7fbf0037d470]
21726
[task 2017-11-23T23:58:07.335Z] 23:58:07     INFO - REFTEST TEST-LOAD | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1-ref.html | 1950 / 1964 (99%)
21727
[task 2017-11-23T23:58:07.344Z] 23:58:07     INFO - ++DOMWINDOW == 198 (0x7fbef7975c00) [pid = 1050] [serial = 5090] [outer = 0x7fbf0037d470]
21728
[task 2017-11-23T23:58:07.405Z] 23:58:07     INFO - REFTEST TEST-UNEXPECTED-FAIL | file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1.html == file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1-ref.html | failed reftest-no-display-list
21729
[task 2017-11-23T23:58:07.407Z] 23:58:07     INFO - REFTEST INFO | Saved log: START file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1.html
21730
[task 2017-11-23T23:58:07.407Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] Setting displayport to <x=0, y=0, w=800, h=2000>
21731
[task 2017-11-23T23:58:07.409Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] OnDocumentLoad triggering WaitForTestEnd
21732
[task 2017-11-23T23:58:07.410Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] WaitForTestEnd: Adding listeners
21733
[task 2017-11-23T23:58:07.411Z] 23:58:07     INFO - REFTEST INFO | Saved log: Initializing canvas snapshot
21734
[task 2017-11-23T23:58:07.411Z] 23:58:07     INFO - REFTEST INFO | Saved log: DoDrawWindow 0,0,800,1000
21735
[task 2017-11-23T23:58:07.413Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] MakeProgress: STATE_WAITING_TO_FIRE_INVALIDATE_EVENT
21736
[task 2017-11-23T23:58:07.415Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] MakeProgress: waiting for MozAfterPaint
21737
[task 2017-11-23T23:58:07.418Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] AfterPaintListener in file:///builds/worker/workspace/build/tests/reftest/tests/layout/reftests/display-list/retained-dl-async-scrolled-1.html
21738
[task 2017-11-23T23:58:07.421Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] SendUpdateCanvasForEvent with 1 rects
21739
[task 2017-11-23T23:58:07.423Z] 23:58:07     INFO - REFTEST INFO | Saved log: [CONTENT] Rect: 0 0 800 1000
21740
[task 2017-11-23T23:58:07.424Z] 23:58:07     INFO - REFTEST INFO | Saved log: Updating canvas for invalidation

:jet, could you please take a look at this?
Flags: needinfo?(bugs)
Whiteboard: [stockwell needswork]
Component: Layout → Layout: Web Painting
Flags: needinfo?(bugs)
:mattwoodrow, this was in the wrong bug component initially- can you take a look at this frequent intermittent?
Flags: needinfo?(matt.woodrow)
This bug has failed 31 times in the last 7 days. It occured on Linux, Windows 7, OS X 10.10, affecting debug and asan build types.
Failing test types: debug-reftest-e10, debug-reftest-no-accel-e10, opt-reftest-e10.

Link to a recent log:
https://treeherder.mozilla.org/logviewer.html#?repo=autoland&job_id=153645877&lineNumber=22956



:mattwoodrow Do you have any update on this?
Whiteboard: [stockwell unknown] → [stockwell needswork]
Not at the moment sorry, still tracking down crash/correctness issues with retained-dl.

Tim, do you have any guesses as to what might be timing dependent in this test?
Flags: needinfo?(matt.woodrow) → needinfo?(tnikkel)
There are 43 failures associated to this bug bug in the last 7 days, if this trend continues it will be disabled soon.

:tnikkel :mattwoodrow any updates on this?
Sorry, didn't get a chance to look at this this week, hopefully next week.
What happens here is a displayport is set, we set the DisplayListBuildingDisplayPortRect property to the whole displayport. The next paint tries a partial update of the display list, but that fails because the viewport frame is in the modified list. We only clear overriden dirty region properties on frames if we encounter those frames in ComputeRebuildRegion, which we don't call here at all. So the next partial paint uses the overly large overridden dirty rect. I guess we'll have to track these frames the same way we track modified frames.
Assignee: nobody → tnikkel
Flags: needinfo?(tnikkel)
Attachment #8944573 - Flags: review?(matt.woodrow)
Attachment #8944573 - Flags: review?(matt.woodrow) → review+
Pushed by tnikkel@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/f8b2a629a26f
Make sure that the override dirty rect that we set when a displayport changes gets cleared even if we don't perform a partial display list update. r=mattwoodrow
https://hg.mozilla.org/mozilla-central/rev/f8b2a629a26f
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla60
Whiteboard: [stockwell needswork] → [stockwell fixed:product]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: