macOS Crash in [@ mozilla::wr::RenderCompositorNativeOGL::Bind]
Categories
(Core :: Graphics: WebRender, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox84 | --- | wontfix |
firefox85 | --- | wontfix |
firefox86 | --- | wontfix |
People
(Reporter: aryx, Assigned: bradwerth)
References
Details
(Keywords: crash)
Crash Data
Attachments
(1 file)
Crash report: https://crash-stats.mozilla.org/report/index/8de1b37d-8823-4dcf-bbda-f5cef0210105
MOZ_CRASH Reason: MOZ_RELEASE_ASSERT(fbo)
Top 10 frames of crashing thread:
0 XUL mozilla::wr::RenderCompositorNativeOGL::Bind gfx/webrender_bindings/RenderCompositorNative.cpp:559
1 XUL <webrender_bindings::bindings::WrCompositor as webrender::composite::Compositor>::bind gfx/webrender_bindings/src/bindings.rs:1305
2 XUL webrender::renderer::Renderer::draw_frame gfx/wr/webrender/src/renderer.rs:6026
3 XUL webrender::renderer::Renderer::render_impl gfx/wr/webrender/src/renderer.rs:3488
4 XUL webrender::renderer::Renderer::render gfx/wr/webrender/src/renderer.rs:3244
5 XUL wr_renderer_render gfx/webrender_bindings/src/bindings.rs:614
6 XUL mozilla::wr::RenderThread::UpdateAndRender gfx/webrender_bindings/RenderThread.cpp:493
7 XUL mozilla::wr::RenderThread::HandleFrameOneDoc gfx/webrender_bindings/RenderThread.cpp:327
8 XUL mozilla::detail::RunnableMethodImpl<mozilla::wr::RenderThread*, void xpcom/threads/nsThreadUtils.h:1201
9 XUL MessageLoop::DoWork ipc/chromium/src/base/message_loop.cc:548
Assignee | ||
Comment 1•3 years ago
|
||
Failure is at https://searchfox.org/mozilla-central/rev/519f913527b0d9d5097d290d5731cff6b2991fe0/gfx/webrender_bindings/RenderCompositorNative.cpp#530. If we're going to treat the return value of NextSurfaceAsFramebuffer
as a release assert, we should hoist that assert into the implementation of the function itself, so we can understand the failure better. I'll prepare a patch that does that, and we can keep this bug open.
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 2•3 years ago
|
||
This turns a browser crash into rendering blank spots. The sources of failure
have multiple callers, so hoisting release asserts to those functions could
expand the crashes to more cases.
Assignee | ||
Comment 3•3 years ago
|
||
(In reply to Brad Werth [:bradwerth] from comment #2)
This turns a browser crash into rendering blank spots. The sources of failure
have multiple callers, so hoisting release asserts to those functions could
expand the crashes to more cases.
I couldn't find a way to hoist the assert earlier without expanding the cases where the crash might occur, so I instead opted to make it not crash. It would be very helpful to have Steps to Reproduce so we can check the debug logs that indicate why this is happening (empty texture size? ObtainSurfaceFromPool
returning null?)
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Pushed by bwerth@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b9665e89a3b4 Hoist release asserts in RenderCompositorNativeOGL::Bind to crash earlier. r=jrmuizel
Comment 5•3 years ago
|
||
bugherder |
Comment 6•3 years ago
|
||
Are there some steps to reproduce in order to reproduce, check tracking flags and verify the possible fix?
Assignee | ||
Comment 7•3 years ago
|
||
(In reply to Bodea Daniel [:danibodea] from comment #6)
Are there some steps to reproduce in order to reproduce, check tracking flags and verify the possible fix?
I don't have steps to reproduce. The patch that's been landed is largely an effort to give us a better signature to help create a testcase.
Assignee | ||
Comment 8•3 years ago
|
||
We've changed the signature enough (for example, in Bug 1707832, also patched) that this bug doesn't need to remain open.
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Description
•