Crash in [@ mozilla::layers::AsyncImagePipelineManager::ApplyAsyncImageForPipeline]
Categories
(Core :: Graphics: Layers, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox85 | --- | affected |
firefox86 | --- | affected |
firefox87 | --- | affected |
People
(Reporter: aryx, Unassigned)
References
(Blocks 3 open bugs)
Details
(Keywords: crash)
Crash Data
~70 crashes and 1 crash per installation, all crashes with intel cpus. Oldest crashes with Gecko 83, none with 84, then again with 85+.
Crash report: https://crash-stats.mozilla.org/report/index/2dc5a79e-9452-44a0-8f3d-e9e850210204
Reason: EXC_BAD_ACCESS / KERN_INVALID_ADDRESS
Top 10 frames of crashing thread:
0 XUL mozilla::layers::AsyncImagePipelineManager::ApplyAsyncImageForPipeline gfx/layers/wr/AsyncImagePipelineManager.cpp:500
1 XUL mozilla::layers::WebRenderBridgeParent::ProcessWebRenderParentCommands gfx/layers/wr/WebRenderBridgeParent.cpp:1405
2 XUL mozilla::layers::WebRenderBridgeParent::RecvSetDisplayList gfx/layers/wr/WebRenderBridgeParent.cpp:1163
3 XUL mozilla::layers::PWebRenderBridgeParent::OnMessageReceived ipc/ipdl/PWebRenderBridgeParent.cpp:403
4 XUL mozilla::layers::PCompositorManagerParent::OnMessageReceived ipc/ipdl/PCompositorManagerParent.cpp:205
5 XUL mozilla::ipc::MessageChannel::DispatchMessage ipc/glue/MessageChannel.cpp:2077
6 XUL mozilla::ipc::MessageChannel::MessageTask::Run ipc/glue/MessageChannel.cpp:1956
7 XUL nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1165
8 XUL mozilla::ipc::MessagePumpForNonMainThreads::Run ipc/glue/MessagePump.cpp:332
9 XUL MessageLoop::Run ipc/chromium/src/base/message_loop.cc:310
Comment 1•4 years ago
|
||
Andrew (calling because you know this code well), I wonder why we aren't seeing them on nightly. Was there a fix there that we forgot to uplift to release?
Comment 2•4 years ago
|
||
Looking through change history, the most related one appears to be https://phabricator.services.mozilla.com/D93179, which touches ApplyAsyncImageForPipeline
, is specifically aimed at macOS, and the date (October 2020) seems right about the start of the crashstats graph.
Matt, can this change be related?
Updated•4 years ago
|
Comment 3•4 years ago
|
||
Updated•4 years ago
|
Comment 4•4 years ago
|
||
(In reply to Dzmitry Malyshau [:kvark] from comment #2)
Looking through change history, the most related one appears to be https://phabricator.services.mozilla.com/D93179, which touches
ApplyAsyncImageForPipeline
, is specifically aimed at macOS, and the date (October 2020) seems right about the start of the crashstats graph.
Matt, can this change be related?
D93179 changed how flags are handled. Then it seems not related to the crash. Crash reports did not show correct place of the crash :(
Comment 5•4 years ago
|
||
By looking into m-c, found that, MacIOSurfaceTextureHostOGL does not handle MacIOSurface look up failure. Bug 1694089
Comment 6•4 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro] from comment #5)
By looking into m-c, found that, MacIOSurfaceTextureHostOGL does not handle MacIOSurface look up failure. Bug 1694089
Do you have an idea of how that failure would cause this crash?
Comment 7•4 years ago
|
||
My guess was that the line in the crash report is pointing to the destructor of one of the stack RAII variables.
Possibly mAPI was nullptr? I can't see how that could happen though.
Comment 8•4 years ago
|
||
(In reply to Matt Woodrow (:mattwoodrow) from comment #6)
(In reply to Sotaro Ikeda [:sotaro] from comment #5)
By looking into m-c, found that, MacIOSurfaceTextureHostOGL does not handle MacIOSurface look up failure. Bug 1694089
Do you have an idea of how that failure would cause this crash?
I thought that the following might cause a crash if mSurface is not valid.
https://searchfox.org/mozilla-central/rev/f47a4b67643b3048ef9a2e2ac0c34edf6d1ebff3/gfx/layers/opengl/MacIOSurfaceTextureHostOGL.cpp#200
Updated•4 years ago
|
Comment 9•4 years ago
|
||
deleted
Updated•4 years ago
|
Comment 10•4 years ago
|
||
Crash did not happen since 87.
Description
•