Closed
Bug 1387764
Opened 7 years ago
Closed 7 years ago
Perma widget/headless/tests/test_headless.js | application crashed [@ mozilla::gl::GLContextProviderGLX::CreateForCompositorWidget] on QuantumRender
Categories
(Firefox :: Headless, defect)
Tracking
()
RESOLVED
FIXED
Firefox 57
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox55 | --- | unaffected |
firefox56 | --- | unaffected |
firefox57 | --- | fixed |
People
(Reporter: aryx, Assigned: mismith)
References
Details
(Keywords: intermittent-failure, regression, Whiteboard: [stockwell fixed:product])
Attachments
(1 file)
https://treeherder.mozilla.org/logviewer.html#?job_id=121180121&repo=mozilla-central
Michael, could this be fallout from bug 1373739? This test only runs on autoland and started to fail with the merge of these changes.
[task 2017-08-05T11:08:47.330120Z] 11:08:47 INFO - TEST-START | widget/headless/tests/test_headless.js
[task 2017-08-05T11:08:48.407466Z] 11:08:48 WARNING - TEST-UNEXPECTED-FAIL | widget/headless/tests/test_headless.js | xpcshell return code: -11
[task 2017-08-05T11:08:48.407870Z] 11:08:48 INFO - TEST-INFO took 1076ms
[task 2017-08-05T11:08:48.412336Z] 11:08:48 INFO - >>>>>>>
[task 2017-08-05T11:08:48.414244Z] 11:08:48 INFO - (xpcshell/head.js) | test MAIN run_test pending (1)
[task 2017-08-05T11:08:48.416197Z] 11:08:48 INFO - (xpcshell/head.js) | test run_next_test 0 pending (2)
[task 2017-08-05T11:08:48.418102Z] 11:08:48 INFO - (xpcshell/head.js) | test MAIN run_test finished (2)
[task 2017-08-05T11:08:48.425641Z] 11:08:48 INFO - running event loop
[task 2017-08-05T11:08:48.427737Z] 11:08:48 INFO - widget/headless/tests/test_headless.js | Starting test_snapshot
[task 2017-08-05T11:08:48.429651Z] 11:08:48 INFO - (xpcshell/head.js) | test test_snapshot pending (2)
[task 2017-08-05T11:08:48.431581Z] 11:08:48 INFO - (xpcshell/head.js) | test run_next_test 0 finished (2)
[task 2017-08-05T11:08:48.433559Z] 11:08:48 INFO - "CONSOLE_MESSAGE: (info) No chrome package registered for chrome://branding/locale/brand.properties"
[task 2017-08-05T11:08:48.435660Z] 11:08:48 INFO - "CONSOLE_MESSAGE: (error) [JavaScript Error: "connection not specified or invalid." {file: "resource://gre/modules/Sqlite.jsm" line: 1080}]
[task 2017-08-05T11:08:48.438529Z] 11:08:48 INFO - wrapStorageConnection@resource://gre/modules/Sqlite.jsm:1080:11
[task 2017-08-05T11:08:48.443389Z] 11:08:48 INFO - @resource://gre/modules/PlacesUtils.jsm:2089:9
[task 2017-08-05T11:08:48.445351Z] 11:08:48 INFO - get@resource://gre/modules/XPCOMUtils.jsm:199:21
[task 2017-08-05T11:08:48.447469Z] 11:08:48 INFO - withConnectionWrapper@resource://gre/modules/PlacesUtils.jsm:1501:9
[task 2017-08-05T11:08:48.449388Z] 11:08:48 INFO - async*@resource://gre/modules/PlacesUtils.jsm:2307:3
[task 2017-08-05T11:08:48.451275Z] 11:08:48 INFO - get@resource://gre/modules/XPCOMUtils.jsm:199:21
[task 2017-08-05T11:08:48.453101Z] 11:08:48 INFO - @resource://gre/modules/PlacesUtils.jsm:1983:3
[task 2017-08-05T11:08:48.454995Z] 11:08:48 INFO - get@resource://gre/modules/XPCOMUtils.jsm:199:21
[task 2017-08-05T11:08:48.457141Z] 11:08:48 INFO - PCS_observe@jar:file:///home/worker/workspace/build/application/firefox/omni.ja!/components/PlacesCategoriesStarter.js:46:9
[task 2017-08-05T11:08:48.460584Z] 11:08:48 INFO - _do_main@/home/worker/workspace/build/tests/xpcshell/head.js:221:3
[task 2017-08-05T11:08:48.462497Z] 11:08:48 INFO - _execute_test@/home/worker/workspace/build/tests/xpcshell/head.js:544:5
[task 2017-08-05T11:08:48.464338Z] 11:08:48 INFO - @-e:1:1
[task 2017-08-05T11:08:48.467123Z] 11:08:48 INFO - "
[task 2017-08-05T11:08:48.469029Z] 11:08:48 INFO - TEST-PASS | widget/headless/tests/test_headless.js | test_snapshot - [test_snapshot : 60] 400 == 400
[task 2017-08-05T11:08:48.471089Z] 11:08:48 INFO - TEST-PASS | widget/headless/tests/test_headless.js | test_snapshot - [test_snapshot : 61] 300 == 300
[task 2017-08-05T11:08:48.472931Z] 11:08:48 INFO - PID 17288 | ExceptionHandler::GenerateDump cloned child 17322
[task 2017-08-05T11:08:48.474932Z] 11:08:48 INFO - PID 17288 | ExceptionHandler::SendContinueSignalToChild sent continue signal to child
[task 2017-08-05T11:08:48.476805Z] 11:08:48 INFO - PID 17288 | ExceptionHandler::WaitForContinueSignal waiting for continue signal...
[task 2017-08-05T11:08:48.478590Z] 11:08:48 INFO - <<<<<<<
[task 2017-08-05T11:08:48.480566Z] 11:08:48 INFO - mozcrash Downloading symbols from: https://queue.taskcluster.net/v1/task/Q911ZqBrTOC1zmf7mcOWpQ/artifacts/public/build/target.crashreporter-symbols.zip
[task 2017-08-05T11:09:04.187339Z] 11:09:04 INFO - mozcrash Copy/paste: /usr/local/bin/linux64-minidump_stackwalk /tmp/xpc-other-uVWFUp/70fe0850-460d-9af4-d28b-4b1a4e6f510e.dmp /tmp/tmpyzTeJS
[task 2017-08-05T11:09:23.237593Z] 11:09:23 INFO - mozcrash Saved minidump as /home/worker/workspace/build/blobber_upload_dir/70fe0850-460d-9af4-d28b-4b1a4e6f510e.dmp
[task 2017-08-05T11:09:23.239647Z] 11:09:23 INFO - mozcrash Saved app info as /home/worker/workspace/build/blobber_upload_dir/70fe0850-460d-9af4-d28b-4b1a4e6f510e.extra
[task 2017-08-05T11:09:23.241307Z] 11:09:23 WARNING - PROCESS-CRASH | widget/headless/tests/test_headless.js | application crashed [@ mozilla::gl::GLContextProviderGLX::CreateForCompositorWidget]
[task 2017-08-05T11:09:23.245579Z] 11:09:23 INFO - Crash dump filename: /tmp/xpc-other-uVWFUp/70fe0850-460d-9af4-d28b-4b1a4e6f510e.dmp
[task 2017-08-05T11:09:23.245870Z] 11:09:23 INFO - Operating system: Linux
[task 2017-08-05T11:09:23.247215Z] 11:09:23 INFO - 0.0.0 Linux 3.13.0-100-generic #147-Ubuntu SMP Tue Oct 18 16:48:51 UTC 2016 x86_64
[task 2017-08-05T11:09:23.247527Z] 11:09:23 INFO - CPU: amd64
[task 2017-08-05T11:09:23.247765Z] 11:09:23 INFO - family 6 model 62 stepping 4
[task 2017-08-05T11:09:23.249643Z] 11:09:23 INFO - 1 CPU
[task 2017-08-05T11:09:23.255616Z] 11:09:23 INFO - GPU: UNKNOWN
[task 2017-08-05T11:09:23.257517Z] 11:09:23 INFO - Crash reason: SIGSEGV
[task 2017-08-05T11:09:23.259371Z] 11:09:23 INFO - Crash address: 0x19
[task 2017-08-05T11:09:23.261246Z] 11:09:23 INFO - Process uptime: not available
[task 2017-08-05T11:09:23.263127Z] 11:09:23 INFO - Thread 23 (crashed)
[task 2017-08-05T11:09:23.265121Z] 11:09:23 INFO - 0 libxul.so!mozilla::gl::GLContextProviderGLX::CreateForCompositorWidget [GLContextProviderGLX.cpp:933a04a91ce3 : 816 + 0x16]
[task 2017-08-05T11:09:23.267188Z] 11:09:23 INFO - rax = 0x00007f0ef2e15020 rdx = 0x0000000000000001
[task 2017-08-05T11:09:23.272000Z] 11:09:23 INFO - rcx = 0x00007f0ef2e15020 rbx = 0x00007f0ed84fe3b0
[task 2017-08-05T11:09:23.273914Z] 11:09:23 INFO - rsi = 0x00007f0ed860b600 rdi = 0x00007f0ed84fe3b0
[task 2017-08-05T11:09:23.275821Z] 11:09:23 INFO - rbp = 0x00007f0ed84fe560 rsp = 0x00007f0ed84fe338
[task 2017-08-05T11:09:23.277682Z] 11:09:23 INFO - r8 = 0x0000000000000000 r9 = 0x00007f0ed84fe560
[task 2017-08-05T11:09:23.279504Z] 11:09:23 INFO - r10 = 0x0000000000000000 r11 = 0x0000000000000246
[task 2017-08-05T11:09:23.281408Z] 11:09:23 INFO - r12 = 0x00007f0ed7afc260 r13 = 0x00007f0edee06300
[task 2017-08-05T11:09:23.283487Z] 11:09:23 INFO - r14 = 0x0000000000000001 r15 = 0x00007f0ee05e3560
[task 2017-08-05T11:09:23.289281Z] 11:09:23 INFO - rip = 0x00007f0ef2e16cc6
[task 2017-08-05T11:09:23.292469Z] 11:09:23 INFO - Found by: given as instruction pointer in context
[task 2017-08-05T11:09:23.294435Z] 11:09:23 INFO - 1 libxul.so!mozilla::wr::NewRenderer::Run [WebRenderAPI.cpp:933a04a91ce3 : 63 + 0x11]
[task 2017-08-05T11:09:23.296291Z] 11:09:23 INFO - rbx = 0x00007f0ed84fe3b0 rbp = 0x00007f0ed84fe560
[task 2017-08-05T11:09:23.298122Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe340 r12 = 0x00007f0ed7afc260
[task 2017-08-05T11:09:23.299966Z] 11:09:23 INFO - r13 = 0x00007f0edee06300 r14 = 0x0000000000000001
[task 2017-08-05T11:09:23.301830Z] 11:09:23 INFO - r15 = 0x00007f0ee05e3560 rip = 0x00007f0ef305ff11
[task 2017-08-05T11:09:23.309670Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.311608Z] 11:09:23 INFO - 2 libxul.so!mozilla::wr::RenderThread::RunEvent [RenderThread.cpp:933a04a91ce3 : 187 + 0xc]
[task 2017-08-05T11:09:23.313476Z] 11:09:23 INFO - rbx = 0x00007f0ee05e3600 rbp = 0x00007f0ed84fe5a0
[task 2017-08-05T11:09:23.315326Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe570 r12 = 0x00007f0ed84fe5b0
[task 2017-08-05T11:09:23.317135Z] 11:09:23 INFO - r13 = 0x00007f0edee06300 r14 = 0x0000000000000001
[task 2017-08-05T11:09:23.318946Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef305abf0
[task 2017-08-05T11:09:23.320737Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.324409Z] 11:09:23 INFO - 3 libxul.so!mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> >), true, (mozilla::RunnableKind)0u, mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent, mozilla::DefaultDelete<mozilla::wr::RendererEvent> >&&>::Run [nsThreadUtils.h:933a04a91ce3 : 1122 + 0x6]
[task 2017-08-05T11:09:23.326562Z] 11:09:23 INFO - rbx = 0x00007f0ee05e3600 rbp = 0x00007f0ed84fe5c0
[task 2017-08-05T11:09:23.328737Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe5b0 r12 = 0x00007f0ed84fe740
[task 2017-08-05T11:09:23.330578Z] 11:09:23 INFO - r13 = 0x00007f0ed84fe628 r14 = 0x00007f0ed84fe690
[task 2017-08-05T11:09:23.332424Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef3059c41
[task 2017-08-05T11:09:23.334430Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.336493Z] 11:09:23 INFO - 4 libxul.so!MessageLoop::RunTask [message_loop.cc:933a04a91ce3 : 452 + 0x5]
[task 2017-08-05T11:09:23.341768Z] 11:09:23 INFO - rbx = 0x00007f0ee05e3600 rbp = 0x00007f0ed84fe5e0
[task 2017-08-05T11:09:23.343940Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe5d0 r12 = 0x00007f0ed84fe740
[task 2017-08-05T11:09:23.346110Z] 11:09:23 INFO - r13 = 0x00007f0ed84fe628 r14 = 0x00007f0ed84fe690
[task 2017-08-05T11:09:23.353936Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef27845cd
[task 2017-08-05T11:09:23.355983Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.358242Z] 11:09:23 INFO - 5 libxul.so!MessageLoop::DeferOrRunPendingTask [message_loop.cc:933a04a91ce3 : 460 + 0x5]
[task 2017-08-05T11:09:23.360234Z] 11:09:23 INFO - rbx = 0x00007f0ed84fe740 rbp = 0x00007f0ed84fe610
[task 2017-08-05T11:09:23.362083Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe5f0 r12 = 0x00007f0ed84fe620
[task 2017-08-05T11:09:23.363915Z] 11:09:23 INFO - r13 = 0x00007f0ed84fe628 r14 = 0x00007f0ed84fe690
[task 2017-08-05T11:09:23.365803Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef278d578
[task 2017-08-05T11:09:23.367624Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.369528Z] 11:09:23 INFO - 6 libxul.so!MessageLoop::DoWork [message_loop.cc:933a04a91ce3 : 535 + 0x5]
[task 2017-08-05T11:09:23.371351Z] 11:09:23 INFO - rbx = 0x00007f0ed84fe740 rbp = 0x00007f0ed84fe660
[task 2017-08-05T11:09:23.373352Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe620 r12 = 0x00007f0ed84fe620
[task 2017-08-05T11:09:23.375429Z] 11:09:23 INFO - r13 = 0x00007f0ed84fe628 r14 = 0x00007f0ed84fe690
[task 2017-08-05T11:09:23.377580Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef278db1c
[task 2017-08-05T11:09:23.379727Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.381954Z] 11:09:23 INFO - 7 libxul.so!base::MessagePumpDefault::Run [message_pump_default.cc:933a04a91ce3 : 36 + 0x9]
[task 2017-08-05T11:09:23.389813Z] 11:09:23 INFO - rbx = 0x00007f0ed84fe740 rbp = 0x00007f0ed84fe6f0
[task 2017-08-05T11:09:23.391670Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe670 r12 = 0x0000000000000000
[task 2017-08-05T11:09:23.393474Z] 11:09:23 INFO - r13 = 0x00007f0edcab2bb0 r14 = 0x00007f0ed84fe690
[task 2017-08-05T11:09:23.395322Z] 11:09:23 INFO - r15 = 0x00007f0edcab2bd0 rip = 0x00007f0ef278485c
[task 2017-08-05T11:09:23.397110Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.398973Z] 11:09:23 INFO - 8 libxul.so!MessageLoop::Run [message_loop.cc:933a04a91ce3 : 326 + 0x5]
[task 2017-08-05T11:09:23.400794Z] 11:09:23 INFO - rbx = 0x00007f0edcab2ac0 rbp = 0x00007f0ed84fe720
[task 2017-08-05T11:09:23.402598Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe700 r12 = 0x00007f0ed84fe740
[task 2017-08-05T11:09:23.404416Z] 11:09:23 INFO - r13 = 0x00007ffc4ac4bd2f r14 = 0x00007f0ed84ff9c0
[task 2017-08-05T11:09:23.406246Z] 11:09:23 INFO - r15 = 0x0000000000000001 rip = 0x00007f0ef27844a2
[task 2017-08-05T11:09:23.408043Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.410046Z] 11:09:23 INFO - 9 libxul.so!base::Thread::ThreadMain [thread.cc:933a04a91ce3 : 181 + 0x8]
[task 2017-08-05T11:09:23.411957Z] 11:09:23 INFO - rbx = 0x00007f0edcab2ac0 rbp = 0x00007f0ed84fe900
[task 2017-08-05T11:09:23.414080Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe730 r12 = 0x00007f0ed84fe740
[task 2017-08-05T11:09:23.416244Z] 11:09:23 INFO - r13 = 0x00007ffc4ac4bd2f r14 = 0x00007f0ed84ff9c0
[task 2017-08-05T11:09:23.421800Z] 11:09:23 INFO - r15 = 0x0000000000000001 rip = 0x00007f0ef27908ae
[task 2017-08-05T11:09:23.429852Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.431761Z] 11:09:23 INFO - 10 libxul.so!ThreadFunc [platform_thread_posix.cc:933a04a91ce3 : 38 + 0x3]
[task 2017-08-05T11:09:23.433605Z] 11:09:23 INFO - rbx = 0x0000000000000000 rbp = 0x00007f0ed84fe910
[task 2017-08-05T11:09:23.435501Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe910 r12 = 0x0000000000000000
[task 2017-08-05T11:09:23.437357Z] 11:09:23 INFO - r13 = 0x00007ffc4ac4bd2f r14 = 0x00007f0ed84ff9c0
[task 2017-08-05T11:09:23.439191Z] 11:09:23 INFO - r15 = 0x0000000000000001 rip = 0x00007f0ef2781aba
[task 2017-08-05T11:09:23.440990Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.442777Z] 11:09:23 INFO - 11 libpthread-2.23.so + 0x76ba
[task 2017-08-05T11:09:23.444591Z] 11:09:23 INFO - rbx = 0x0000000000000000 rbp = 0x0000000000000000
[task 2017-08-05T11:09:23.446499Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe920 r12 = 0x0000000000000000
[task 2017-08-05T11:09:23.448313Z] 11:09:23 INFO - r13 = 0x00007ffc4ac4bd2f r14 = 0x00007f0ed84ff9c0
[task 2017-08-05T11:09:23.450424Z] 11:09:23 INFO - r15 = 0x0000000000000001 rip = 0x00007f0ef82f86ba
[task 2017-08-05T11:09:23.452420Z] 11:09:23 INFO - Found by: call frame info
[task 2017-08-05T11:09:23.455654Z] 11:09:23 INFO - 12 libc-2.23.so + 0x10682d
[task 2017-08-05T11:09:23.457483Z] 11:09:23 INFO - rsp = 0x00007f0ed84fe9c0 rip = 0x00007f0eee6e582d
[task 2017-08-05T11:09:23.459294Z] 11:09:23 INFO - Found by: stack scanning
Flags: needinfo?(lists)
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Comment 2•7 years ago
|
||
It looks like the WebRender path is always trying to set up GPU acceleration without respect for whether the gfx::Feature::HW_COMPOSITING pref is disabled (as it is under headless mode, because we don't have GPU access). We could either add a specific case in NewRenderer::Run which fails if headless mode is detected, or try to change the WebRender path to respect gfx::Feature::HW_COMPOSITING. I'm not familiar enough with the WebRender code to know which approach would be right here.
Flags: needinfo?(lists)
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → lists
Assignee | ||
Updated•7 years ago
|
Status: NEW → ASSIGNED
Comment 4•7 years ago
|
||
(In reply to Michael Smith [:mismith] from comment #2)
> It looks like the WebRender path is always trying to set up GPU acceleration
> without respect for whether the gfx::Feature::HW_COMPOSITING pref is
> disabled (as it is under headless mode, because we don't have GPU access).
> We could either add a specific case in NewRenderer::Run which fails if
> headless mode is detected, or try to change the WebRender path to respect
> gfx::Feature::HW_COMPOSITING.
WebRender should probably respect Feature::HW_COMPOSITING.
Comment 5•7 years ago
|
||
Specifically you can add a check somewhere around [1] and set the feature to false if HW_COMPOSITING is off.
Comment 6•7 years ago
|
||
Comment 7•7 years ago
|
||
In case there was any doubt, I verified this perma-fail is a regression from bug 1373739.
https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&tochange=9c4e1d455e0dae135e857f2fd7b0572e5e65620b&fromchange=a3f35ca41ccea790e1e48186a40d4c4fa026dd50&filter-searchStr=qr%20xpcshell
Blocks: 1373739
Keywords: regression
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
Version: unspecified → 57 Branch
Comment hidden (mozreview-request) |
Assignee | ||
Comment 9•7 years ago
|
||
Comment 10•7 years ago
|
||
Sorry for the delay in reviewing. I just had some doubts after thinking about this some more - we have a "reftest no-accel" suite which is supposed to already be running with HW acceleration disabled, and that suite is passing on webrender-enabled builds. So that implies webrender runs fine without HW acceleration. But while investigating I also discovered bug 1388726. Still digging a bit to make sure I understand what's going on.
Comment 11•7 years ago
|
||
Ok, so it looks like both reftest and reftest-no-accel on Linux64 are currently running with HW acceleration disabled. This means that if this patch lands as-is, it effectively disables webrender on the linux64-qr reftest and reftest-no-accel suites. I verified by adding some reftest jobs to your try push in comment 9, and checking the logs. Landing as-is would eliminate reftest coverage for webrender entirely, so I don't think we want that.
I've kicked off a try push to enable HW acceleration on the linux64 and linux64-qr reftest suite (while leaving HW acceleration disabled on the corresponding reftest-no-accel suites). This has been off for about a year so I'm not optimistic that we'll have a green run. If we do, then we can land that change, and then land your patch on top of it, which will retain some webrender coverage. Otherwise we'll have to come up with another solution.
Comment 12•7 years ago
|
||
So the good news is that it should be pretty easy to enable acceleration by default in the linux64 reftest suite. The bad news is that I realized this is going to be a non-default configuration. So anybody that wants to run with WR enabled on Linux will have to force-enable acceleration as well as webrender. It's not the end of the world but we'll have to make sure everybody is aware of this change, because WR will silently be disabled for people otherwise.
I'll r+ your patch once bug 1388726 is landed.
Depends on: 1388726
Assignee | ||
Comment 13•7 years ago
|
||
If this creates too much of a headache on the WebRender side of things, I could switch to adding a special case for headless mode which bails early on the GL context creation.
I'm a bit confused about reftest-no-accel running with WebRender, as it appeared to me that WebRender always tries to use hardware acceleration / create a GL context [0] and fails to initialize the WebRenderAPI if this doesn't succeed [1]. Then reftest-no-accel may actually be using hardware acceleration when run with WebRender. If not, and there is a path to run WebRender without hardware acceleration, we could just use that here.
[0] http://searchfox.org/mozilla-central/source/gfx/webrender_bindings/WebRenderAPI.cpp#56-70
[1] http://searchfox.org/mozilla-central/source/gfx/webrender_bindings/WebRenderAPI.cpp#165-174
Flags: needinfo?(bugmail)
Comment 14•7 years ago
|
||
(In reply to Michael Smith [:mismith] from comment #13)
> Then reftest-no-accel may actually be using hardware
> acceleration when run with WebRender.
Yeah I think this is what was happening. I think your patch should be fine to land. Please land it on autoland so it goes on top of bug 1388726, or wait until that is merged to inbound if you plan on landing it on inbound.
Flags: needinfo?(bugmail)
Comment 15•7 years ago
|
||
mozreview-review |
Comment on attachment 8895127 [details]
Bug 1387764 - Disable WebRender if HW_COMPOSITING is disabled.
https://reviewboard.mozilla.org/r/166238/#review171808
Attachment #8895127 -
Flags: review?(bugmail) → review+
Comment 16•7 years ago
|
||
Pushed by michael@spinda.net:
https://hg.mozilla.org/integration/autoland/rev/20a3ffcebfd1
Disable WebRender if HW_COMPOSITING is disabled. r=kats
Updated•7 years ago
|
Whiteboard: [stockwell fixed:product]
Comment 17•7 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
status-firefox57:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 57
Comment 18•7 years ago
|
||
This makes WebRender disabled on linux except the following case.
- env['MOZ_ACCELERATED'] = '1'
- pref "layers.acceleration.force-enabled" is true.
It is because gfxPlatformGtk::AccelerateLayersByDefault() returns false. The returned value is used in the following. The function returns false to disable OpenGL Compositor's compositing on linux. It is for disabling OpenGL Compositor's compositing, but with this bug, it also used to disable WebRender.
https://dxr.mozilla.org/mozilla-central/source/gfx/thebes/gfxPlatform.cpp#2385
Updated•7 years ago
|
Flags: needinfo?(lists)
Updated•7 years ago
|
Flags: needinfo?(bugmail)
Comment 19•7 years ago
|
||
Yes, this is intentional. https://groups.google.com/forum/m/#!topic/mozilla.dev.tech.gfx/bTAyFPMS9C4
Flags: needinfo?(lists)
Flags: needinfo?(bugmail)
Comment 20•7 years ago
|
||
Thanks!
Updated•7 years ago
|
status-firefox55:
--- → unaffected
status-firefox56:
--- → unaffected
status-firefox-esr52:
--- → unaffected
Comment hidden (Intermittent Failures Robot) |
You need to log in
before you can comment on or make changes to this bug.
Description
•