Closed Bug 1457443 Opened Last year Closed Last year

Intermittent gfx/tests/mochitest/test_acceleration.html | Advanced Layers disabled on Windows - got 1, expected +0

Categories

(Core :: Graphics, defect, P5)

defect

Tracking

()

VERIFIED FIXED
mozilla61
Tracking Status
firefox61 --- verified

People

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

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

Filed by: csabou [at] mozilla.com

https://treeherder.mozilla.org/logviewer.html#?job_id=175959069&repo=try

https://queue.taskcluster.net/v1/task/bGi7ewAYRSmi55UmPMN-Og/runs/0/artifacts/public/logs/live_backing.log

Central as beta simulation: https://treeherder.mozilla.org/#/jobs?repo=try&revision=77d3895bea88927239057edd905422b5cc9708d7&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-resultStatus=retry&filter-resultStatus=usercancel&filter-resultStatus=runnable&filter-searchStr=gpu&selectedJob=175920940

Log: https://treeherder.mozilla.org/logviewer.html#?job_id=175959069&repo=try&lineNumber=3077

12:18:07     INFO -  68 INFO TEST-START | gfx/tests/mochitest/test_acceleration.html
12:18:07     INFO -  GECKO(3464) | ++DOMWINDOW == 7 (0000018FE3AD9400) [pid = 1028] [serial = 7] [outer = 0000018FE4553000]
12:18:08     INFO -  GECKO(3464) | ++DOMWINDOW == 8 (0000018FE3AD7800) [pid = 1028] [serial = 8] [outer = 0000018FE4553000]
12:18:08     INFO -  GECKO(3464) | --DOMWINDOW == 7 (0000018FE4936000) [pid = 1028] [serial = 6] [outer = 0000000000000000] [url = about:blank]
12:18:08     INFO -  GECKO(3464) | --DOMWINDOW == 6 (0000018FDDD99400) [pid = 1028] [serial = 2] [outer = 0000000000000000] [url = about:blank]
12:18:08     INFO -  GECKO(3464) | [Child 1028, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file z:/build/build/src/xpcom/base/nsSystemInfo.cpp, line 119
12:18:08     INFO -  TEST-INFO | started process screenshot
12:18:09     INFO -  TEST-INFO | screenshot: exit 0
12:18:09     INFO -  Buffered messages logged at 12:18:08
12:18:09     INFO -  69 INFO TEST-PASS | gfx/tests/mochitest/test_acceleration.html | Acceleration enabled on Windows XP or newer
12:18:09     INFO -  70 INFO TEST-PASS | gfx/tests/mochitest/test_acceleration.html | Direct2D enabled on Windows 8 or newer
12:18:09     INFO -  71 INFO TEST-PASS | gfx/tests/mochitest/test_acceleration.html | DirectWrite enabled on Windows 7 or newer
12:18:09     INFO -  Buffered messages finished
12:18:09    ERROR -  72 INFO TEST-UNEXPECTED-FAIL | gfx/tests/mochitest/test_acceleration.html | Advanced Layers disabled on Windows - got 1, expected +0
12:18:09     INFO -      SimpleTest.is@SimpleTest/SimpleTest.js:312:5
12:18:09     INFO -      runTest@gfx/tests/mochitest/test_acceleration.html:138:9
12:18:09     INFO -  Not taking screenshot here: see the one that was previously logged
12:18:09    ERROR -  73 INFO TEST-UNEXPECTED-FAIL | gfx/tests/mochitest/test_acceleration.html | WebRender enabled on Windows - didn't expect +0, but got it
12:18:09     INFO -      SimpleTest.isnot@SimpleTest/SimpleTest.js:324:5
12:18:09     INFO -      runTest@gfx/tests/mochitest/test_acceleration.html:142:9
12:18:09     INFO -  GECKO(3464) | MEMORY STAT | vsize 2098683MB | vsizeMaxContiguous 130441625MB | residentFast 91MB | heapAllocated 11MB
12:18:09     INFO -  74 INFO TEST-OK | gfx/tests/mochitest/test_acceleration.html | took 1479ms
12:18:09     INFO -  75 INFO None76 INFO TEST-START | Shutdown
12:18:09     INFO -  77 INFO Passed:  3
12:18:09  WARNING -  78 INFO Failed:  2
12:18:09  WARNING -  One or more unittests failed.
12:18:09     INFO -  79 INFO Todo:    0
12:18:09     INFO -  80 INFO Mode:    e10s
12:18:09     INFO -  81 INFO Slowest: 1479ms - /tests/gfx/tests/mochitest/test_acceleration.html
12:18:09     INFO -  82 INFO SimpleTest FINISHED
12:18:09     INFO -  83 INFO TEST-INFO | Ran 1 Loops
12:18:09     INFO -  84 INFO SimpleTest FINISHED
Flags: needinfo?(milan)
We should probably change the test so that we only check the advanced layers logic if WebRender is not enabled?  Or am I misreading the test and the results?  This was a WebRender enabled run, right?
Flags: needinfo?(milan) → needinfo?(bugmail)
I think the problem here is that the isWebRenderRequested check at https://searchfox.org/mozilla-central/rev/78dbe34925f04975f16cb9a5d4938be714d41897/gfx/tests/mochitest/test_acceleration.html#117 should only return true on Nightly, because on beta those prefs are ignored. That will automatically make shouldGetAL true and the test should pass. Presumably this didn't happen when 60 went to beta because we didn't have this test enabled with WR back then.
Assignee: nobody → bugmail
Flags: needinfo?(bugmail)
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #2)
> Presumably this didn't happen when 60 went to beta
> because we didn't have this test enabled with WR back then.

Actually that's not true. This probably did happen when 60 went to beta. But the QR tests are not enabled on the actual beta tree, so although this is failing in the trunk-as-beta try push, it wouldn't actually fail on beta.

But whatever, it's a simple fix.
Comment on attachment 8971638 [details]
Bug 1457443 - Don't expect WebRender windows if WebRender isn't built.

https://reviewboard.mozilla.org/r/240400/#review246490

::: dom/base/nsDOMWindowUtils.cpp:2305
(Diff revision 1)
>  }
>  
>  NS_IMETHODIMP
>  nsDOMWindowUtils::GetIsWebRenderRequested(bool* retval)
>  {
> +#ifdef MOZ_BUILD_WEBRENDER

Would it make more sense to have the #ifdef inside these two calls, perhaps even making the underlying prefs themselves as "Skip" and set to false if this #ifdef is not there?
Attachment #8971638 - Flags: review?(milan) → review+
Comment on attachment 8971638 [details]
Bug 1457443 - Don't expect WebRender windows if WebRender isn't built.

https://reviewboard.mozilla.org/r/240400/#review246516

::: dom/base/nsDOMWindowUtils.cpp:2305
(Diff revision 1)
>  }
>  
>  NS_IMETHODIMP
>  nsDOMWindowUtils::GetIsWebRenderRequested(bool* retval)
>  {
> +#ifdef MOZ_BUILD_WEBRENDER

I'm not sure if there's much value in doing that. We'll end up with ifdefs in more places which is less nice. And it will result in a "loss of information" because for example on about:support and in crash reports it won't indicate the status of the pref if the build doesn't have WR. Instead of getting about:support with "Enabled by pref; Build doesn't include WebRender" we'd just get "Build doesn't include WebRender". Similarly on crash reports we'd end up with WR? instead of WR! for beta crashes even if the user had the pref enabled. Arguably these pieces of information aren't that useful but in general I don't like losing information unless there's a strong argument in favor of it, and I don't see that here.

I think a better approach might be to add another DOMWindowUtils method GetIsWebRenderBuilt and use that in the test in combination with GetIsWebRenderRequested, which would be conceptually more correct.
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/cd4f166ad570
Don't expect WebRender windows if WebRender isn't built. r=milan
https://hg.mozilla.org/mozilla-central/rev/cd4f166ad570
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
You need to log in before you can comment on or make changes to this bug.