Update ANGLE for Fx112
Categories
(Core :: Graphics: CanvasWebGL, task)
Tracking
()
People
(Reporter: jgilbert, Assigned: ErichDonGubler, Mentored)
References
(Blocks 1 open bug, Regressed 1 open bug)
Details
Attachments
(10 files, 3 obsolete files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Reporter | ||
Updated•2 years ago
|
Reporter | ||
Comment 1•2 years ago
|
||
Comment 2•2 years ago
|
||
There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:jgilbert, could you have a look please?
If you still have some work to do, you can add an action "Plan Changes" in Phabricator.
For more information, please visit auto_nag documentation.
Updated•2 years ago
|
Reporter | ||
Updated•2 years ago
|
Reporter | ||
Comment 3•2 years ago
|
||
[task 2022-03-29T00:36:44.381Z] 00:36:44 INFO - GECKO(6252) | [GFX1]: Failed to create Pbuffer of back buffer error: 0x3004 Size : Size(160,234)
[task 2022-03-29T00:36:44.381Z] 00:36:44 INFO - GECKO(6252) | Assertion failure: [GFX1]: Failed to create Pbuffer of back buffer error: 0x3004 Size : Size(160,234), at /builds/worker/workspace/obj-build/dist/include/mozilla/gfx/Logging.h:754
[task 2022-03-29T00:36:44.487Z] 00:36:44 INFO - Initializing stack-fixing for the first stack frame, this may take a while...
[task 2022-03-29T00:36:48.287Z] 00:36:48 INFO - runtests.py | Waiting for browser...
[task 2022-03-29T00:36:56.194Z] 00:36:56 INFO - GECKO(6252) | #01: mozilla::gfx::Log<1,mozilla::gfx::CriticalLogger>::WriteLog(std::basic_string<char,std::char_traits<char>,std::allocator<char> > const&) [gfx/2d/Logging.h:755]
[task 2022-03-29T00:36:56.194Z] 00:36:56 INFO - GECKO(6252) | #02: mozilla::gfx::Log<1,mozilla::gfx::CriticalLogger>::Flush() [gfx/2d/Logging.h:279]
[task 2022-03-29T00:36:56.195Z] 00:36:56 INFO - GECKO(6252) | #03: mozilla::wr::RenderCompositorANGLE::CreateEGLSurface() [gfx/webrender_bindings/RenderCompositorANGLE.cpp:671]
[task 2022-03-29T00:36:56.195Z] 00:36:56 INFO - GECKO(6252) | #04: mozilla::wr::RenderCompositorANGLE::ResizeBufferIfNeeded() [gfx/webrender_bindings/RenderCompositorANGLE.cpp:601]
[task 2022-03-29T00:36:56.196Z] 00:36:56 INFO - GECKO(6252) | #05: mozilla::wr::RenderCompositorANGLE::CreateSwapChain(nsTSubstring<char>&) [gfx/webrender_bindings/RenderCompositorANGLE.cpp:320]
[task 2022-03-29T00:36:56.196Z] 00:36:56 INFO - GECKO(6252) | #06: mozilla::wr::RenderCompositorANGLE::Initialize(nsTSubstring<char>&) [gfx/webrender_bindings/RenderCompositorANGLE.cpp:166]
[task 2022-03-29T00:36:56.197Z] 00:36:56 INFO - GECKO(6252) | #07: static mozilla::wr::RenderCompositorANGLE::Create(RefPtr<mozilla::widget::CompositorWidget> const&, nsTSubstring<char>&) [gfx/webrender_bindings/RenderCompositorANGLE.cpp:62]
[task 2022-03-29T00:36:56.197Z] 00:36:56 INFO - GECKO(6252) | #08: static mozilla::wr::RenderCompositor::Create(RefPtr<mozilla::widget::CompositorWidget> const&, nsTSubstring<char>&) [gfx/webrender_bindings/RenderCompositor.cpp:191]
[task 2022-03-29T00:36:56.198Z] 00:36:56 INFO - GECKO(6252) | #09: mozilla::wr::NewRenderer::Run(mozilla::wr::RenderThread&, mozilla::wr::WrWindowId) [gfx/webrender_bindings/WebRenderAPI.cpp:96]
[task 2022-03-29T00:36:56.198Z] 00:36:56 INFO - GECKO(6252) | #10: mozilla::wr::RenderThread::RunEvent(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent,mozilla::DefaultDelete<mozilla::wr::RendererEvent> >) [gfx/webrender_bindings/RenderThread.cpp:458]
[task 2022-03-29T00:36:56.199Z] 00:36:56 INFO - GECKO(6252) | #11: mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread *,void (mozilla::wr::RenderThread::*)(mozilla::wr::WrWindowId, mozilla::UniquePtr<mozilla::wr::RendererEvent,mozilla::DefaultDelete<mozilla::wr::RendererEvent> >),1,mozilla::RunnableKind::Standard,mozilla::wr::WrWindowId,mozilla::UniquePtr<mozilla::wr::RendererEvent,mozilla::DefaultDelete<mozilla::wr::RendererEvent> > &&>::Run() [xpcom/threads/nsThreadUtils.h:1203]
[task 2022-03-29T00:36:56.200Z] 00:36:56 INFO - GECKO(6252) | #12: nsThread::ProcessNextEvent(bool, bool*) [xpcom/threads/nsThread.cpp:1167]
const EGLint pbuffer_attribs[]{
LOCAL_EGL_WIDTH,
size.width,
LOCAL_EGL_HEIGHT,
size.height,
LOCAL_EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE,
LOCAL_EGL_TRUE,
LOCAL_EGL_NONE};
jgilbert@osiris : /c/dev/mozilla/gecko7 071acaf6c08c angle-99
$ git grep -nrE EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED gfx/angle
[17:48:33] $? -> 1
jgilbert@osiris : /c/dev/mozilla/gecko7 071acaf6c08c angle-99
$
jgilbert@osiris : /c/dev/angle b4b5b64f0 firefox-99
$ git log src/libANGLE/Surface.cpp
[...]
commit ad8e4d99a977073074a36fe231477398843f1501
Author: Geoff Lang <geofflang@google.com>
Date: Tue Sep 28 11:48:46 2021 -0400
Remove EGL_ANGLE_flexible_surface_compatibility
This extension has been superseded by EGL_KHR_no_config_context.
Bug: chromium:1253930
Change-Id: Ie299c34baa84e9f47c73ddb5a0636536bf510d72
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3190612
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
[...]
So we need to switch from the now-removed EGL_ANGLE_flexible_surface_compatibility to EGL_KHR_no_config_context.
Reporter | ||
Updated•1 year ago
|
Updated•1 year ago
|
Reporter | ||
Updated•1 year ago
|
Assignee | ||
Comment 4•1 year ago
|
||
Assignee | ||
Comment 5•1 year ago
|
||
Depends on D162632
Assignee | ||
Comment 6•1 year ago
|
||
Reporter | ||
Updated•1 year ago
|
Assignee | ||
Comment 7•1 year ago
|
||
Assignee | ||
Comment 8•1 year ago
|
||
Depends on D164253
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 9•1 year ago
|
||
This lets us omit implementation details in a header, and avoid needing to pass some arguments when
only the decision to try using GLES changes.
Split out from @jgilbert's D164308.
Assignee | ||
Comment 10•1 year ago
|
||
This is basically an implementation detail that the only existing caller doesn't really need to
know. Factor it out.
Split out from @jgilbert's D164308.
Depends on D166706
Assignee | ||
Comment 11•1 year ago
|
||
When available, we should use the EGL_KHR_no_config_context
extension inside of
GLContextEGL::CreateEGLPBufferOffscreenContext
. The usage of this extension will be necessary to
accommodate incoming upstream changes in ANGLE, which have migrated away from
our usage of EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE
in
gfx/webrender_bindings/RenderCompositorANGLE.cpp
in favor of this standard
extension. Luckily it's forwards-compatible to start consuming it now!
This revision changes a few things that are linked:
- Separate assignment and usage of a surface context from that of a context.
- Rename
GLContextEGL::mConfig
tomSurfaceConfig
to better reflect its usage; it's only ever
used to create surfaces, not contexts.
Split out from @jgilbert's D164308 and D164309.
Depends on D166707
Assignee | ||
Comment 12•1 year ago
|
||
This was interesting enough that @jgilbert wanted this, so I'm including this for completeness in
the current patch stack.
Split out from @jgilbert's D164308.
Depends on D166708
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Comment 13•1 year ago
|
||
Depends on D164253
Assignee | ||
Comment 14•1 year ago
|
||
Now that we're using EGL_KHR_no_config_context
from a previous change, this attribute request is
no longer necessary. Even worse, support for it already been removed by upstream ANGLE. So, let's
nip this in the bud before we try to upgrade ANGLE.
Depends on D167037
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Updated•1 year ago
|
Comment 15•1 year ago
|
||
Pushed by egubler@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1ad75c8ea7a4 (1/9): refactor: inline `GLContextEGL::CreateEGLPBufferOffscreenContext` into `WithUseGles` closure r=jgilbert https://hg.mozilla.org/integration/autoland/rev/1b71f995ae95 (2/9): refactor: inline `size` argument to `GLContextEGL::CreateEGLPBufferOffscreenContext` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/bed90cd9beb6 (3/9): feat(gfx): use `EGL_KHR_no_config_context` in `CreateEGLPBufferOffscreenContext` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/cbb9e6545343 (4/9): refactor: rename `CreateEGLPBufferOffscreenContext` to `CreateWithoutSurface` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/556557955d59 (5/9): docs: align `update-angle.py` instructions to actual usage r=jgilbert https://hg.mozilla.org/integration/autoland/rev/2043cc15deec (6/9): fix: increase `CanvasRendererThread` stack size to 4k r=jgilbert,gfx-reviewers https://hg.mozilla.org/integration/autoland/rev/0ffcaedc8046 (7/9): refactor(gfx): stop using `LOCAL_EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE` r=jgilbert,gfx-reviewers https://hg.mozilla.org/integration/autoland/rev/28e0175becf4 (8/9): build(gfx): update ANGLE vendoring config. r=jgilbert https://hg.mozilla.org/integration/autoland/rev/84a5f26fe60b (9/9): chore: update ANGLE to our fork's `firefox-111` branch r=jgilbert
Comment 16•1 year ago
|
||
Backed out for multiple PoolAlloc.cpp related failures on Linux 18.04 x64 WebRender asan opt.
- Backout link
- Push with failures - this is to show the problem is from here and this is the push with all PoolAlloc.cpp failures related.
- Failure Log
- Failure line: SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /builds/worker/checkouts/gecko/gfx/angle/checkout/src/common/PoolAlloc.cpp:348:71 in
Comment 17•1 year ago
|
||
Pushed by egubler@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4381cb30198b (1/9): refactor: inline `GLContextEGL::CreateEGLPBufferOffscreenContext` into `WithUseGles` closure r=jgilbert https://hg.mozilla.org/integration/autoland/rev/1e30feb6482b (2/9): refactor: inline `size` argument to `GLContextEGL::CreateEGLPBufferOffscreenContext` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/1c9aa0d7be69 (3/9): feat(gfx): use `EGL_KHR_no_config_context` in `CreateEGLPBufferOffscreenContext` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/0a5945b7de6a (4/9): refactor: rename `CreateEGLPBufferOffscreenContext` to `CreateWithoutSurface` r=jgilbert https://hg.mozilla.org/integration/autoland/rev/70cfe77de2aa (5/9): docs: align `update-angle.py` instructions to actual usage r=jgilbert https://hg.mozilla.org/integration/autoland/rev/632e0acf23f3 (6/9): fix: increase `CanvasRendererThread` stack size to 4k r=jgilbert,gfx-reviewers https://hg.mozilla.org/integration/autoland/rev/96f30dc79ae6 (7/9): refactor(gfx): stop using `LOCAL_EGL_FLEXIBLE_SURFACE_COMPATIBILITY_SUPPORTED_ANGLE` r=jgilbert,gfx-reviewers
Comment 18•1 year ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/4381cb30198b
https://hg.mozilla.org/mozilla-central/rev/1e30feb6482b
https://hg.mozilla.org/mozilla-central/rev/1c9aa0d7be69
https://hg.mozilla.org/mozilla-central/rev/0a5945b7de6a
https://hg.mozilla.org/mozilla-central/rev/70cfe77de2aa
https://hg.mozilla.org/mozilla-central/rev/632e0acf23f3
https://hg.mozilla.org/mozilla-central/rev/96f30dc79ae6
Assignee | ||
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Comment 19•1 year ago
|
||
The last two patches in the patch stack resolving this haven't landed yet, due to regressions detected in autoland
builds. Currently working on getting these two; for now, I've merged the first 7 of 9, which should work independently of the actual ANGLE vendoring update.
Assignee | ||
Updated•1 year ago
|
Comment 20•1 year ago
|
||
Pushed by egubler@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/06d250c819ee (8/9): build(gfx): update ANGLE vendoring config. r=jgilbert https://hg.mozilla.org/integration/autoland/rev/94699211d97b (9/9): chore: update ANGLE to our fork's `firefox-111` branch r=jgilbert
Comment 21•1 year ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/06d250c819ee
https://hg.mozilla.org/mozilla-central/rev/94699211d97b
Comment 22•1 year ago
|
||
Just FTR, after rebasing to latest m-c today, I started hitting a build failure locally:
18:01.79 make[4]: *** No rule to make target `/Users/jkew/mozdev/mozilla-unified/gfx/angle/checkout/src/compiler/translator/tree_ops/gl/RecordConstantPrecision.cpp', needed by `RecordConstantPrecision.o'. Stop.
I've clobbered my build, and expect it to complete OK now, but it looks like it would've been good to touch the CLOBBER file to deal with the fact that the update here moved some files around within the ANGLE tree, meaning it's necessary to at least re-run configure.
Assignee | ||
Comment 23•1 year ago
|
||
Assignee | ||
Comment 24•1 year ago
|
||
:jfkthame, requested to land a touch of the CLOBBER
file (see previous comment). Sorry about that! Thanks for the heads-up.
Comment 25•1 year ago
|
||
Pushed by egubler@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fd1bf105314f (10 of 9): build: touch `CLOBBER` for ANGLE rebase (sorry!) r=jgilbert,gfx-reviewers DONTBUILD
Comment 26•1 year ago
|
||
bugherder |
Comment 27•1 year ago
|
||
This appears to have removed the changes made for snap in bug 1727087 so snap builds are failing again.
/root/parts/firefox/build/gfx/angle/checkout/src/compiler/translator/SymbolTable_ESSL_autogen.cpp:4337:50: error: no member named 'isnan' in namespace 'sh::BuiltInName'
BuiltInName::isnan,
Can we upstream the snap changes?
Assignee | ||
Updated•1 year ago
|
Updated•1 year ago
|
Comment 30•1 year ago
|
||
This was reverted from Fx111 during the Beta cycle over in bug 1817240. It's planned to ride the Fx112 train to release.
Comment 31•1 year ago
|
||
This was backed out of 111 beta. See bug 1817240 comment 17
Description
•