Closed Bug 1605893 Opened 4 years ago Closed 4 years ago

[Wayland] eglMakeCurrent crash when opening popovers, middle button autoscrolling, etc (introduced by bug 1597861)

Categories

(Core :: Graphics, defect)

Desktop
FreeBSD
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1605906
Tracking Status
firefox73 --- fixed

People

(Reporter: val, Unassigned)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

eglMakeCurrent crashes that mostly occur when clicking extension buttons that open popups and clicking the middle mouse button to autoscroll. Seems like a regression introduced by Bug 1597861, reverting that change seems to help — mashing the extensions' buttons right now and it's fine.

* thread #1, name = 'Compositor', stop reason = signal SIGSEGV
  * frame #0: 0x00000008013df4ea libc.so.7`__sys_thr_kill at thr_kill.S:4
    frame #1: 0x00000008013dee94 libc.so.7`__raise(s=11) at raise.c:52
    frame #2: 0x000000080812ce12 libxul.so`nsProfileLock::FatalSignalHandler(signo=11, info=0x00007fffde5eec70, context=0x00007fffde5ee900) at nsProfileLock.cpp:169
    frame #3: 0x0000000808a7e79f libxul.so`WasmTrapHandler(signum=11, info=<unavailable>, context=0x00007fffde5ee900) at WasmSignalHandlers.cpp:963
    frame #4: 0x000000080120f39e libthr.so.3`handle_signal(actp=0x00007fffde5ee880, sig=11, info=0x00007fffde5eec70, ucp=0x00007fffde5ee900) at thr_sig.c:246
    frame #5: 0x000000080120e95f libthr.so.3`thr_sighandler(sig=11, info=0x00007fffde5eec70, _ucp=0x00007fffde5ee900) at thr_sig.c:191
    frame #6: 0x00007fffffffe003
    frame #7: 0x00000008033b3525 libEGL.so.1`___lldb_unnamed_symbol344$$libEGL.so.1 + 21
    frame #8: 0x0000000815048086 radeonsi_dri.so`___lldb_unnamed_symbol11083$$radeonsi_dri.so + 1062
    frame #9: 0x0000000814e75c04 radeonsi_dri.so`___lldb_unnamed_symbol6860$$radeonsi_dri.so + 692
    frame #10: 0x0000000814e77767 radeonsi_dri.so`___lldb_unnamed_symbol6882$$radeonsi_dri.so + 135
    frame #11: 0x0000000814e782f5 radeonsi_dri.so`___lldb_unnamed_symbol6891$$radeonsi_dri.so + 117
    frame #12: 0x0000000815045ac9 radeonsi_dri.so`___lldb_unnamed_symbol11046$$radeonsi_dri.so + 137
    frame #13: 0x0000000814af61a6 radeonsi_dri.so`___lldb_unnamed_symbol43$$radeonsi_dri.so + 54
    frame #14: 0x00000008033aa348 libEGL.so.1`___lldb_unnamed_symbol166$$libEGL.so.1 + 744
    frame #15: 0x000000080339c9eb libEGL.so.1`eglMakeCurrent + 587
    frame #16: 0x0000000805e36844 libxul.so`mozilla::gl::GLContextEGL::MakeCurrentImpl() const [inlined] mozilla::gl::GLLibraryEGL::fMakeCurrent(this=<unavailable>, dpy=<unavailable>, draw=<unavailable>, read=<unavailable>, ctx=<unavailable>) const at GLLibraryEGL.h:167
    frame #17: 0x0000000805e3683e libxul.so`mozilla::gl::GLContextEGL::MakeCurrentImpl(this=0x000000082c948000) const at GLContextProviderEGL.cpp:441
    frame #18: 0x0000000805e21630 libxul.so`mozilla::gl::GLContext::MakeCurrent(this=0x000000082c948000, aForce=<unavailable>) const at GLContext.cpp:2729
    frame #19: 0x0000000805eccb0f libxul.so`mozilla::layers::TextureImageTextureSourceOGL::Update(this=0x0000000828e919d0, aSurface=0x0000000829d9b760, aDestRegion=0x000000081ed3a838, aSrcOffset=0x0000000000000000) at TextureHostOGL.cpp:157
    frame #20: 0x0000000805fc3607 libxul.so`mozilla::layers::BufferTextureHost::Upload(this=0x000000081ed3a7a0, aRegion=<unavailable>) at TextureHost.cpp:1078
    frame #21: 0x0000000805fc21c3 libxul.so`mozilla::layers::BufferTextureHost::MaybeUpload(this=0x000000081ed3a7a0, aRegion=<unavailable>) at TextureHost.cpp:947
    frame #22: 0x0000000805fc2053 libxul.so`mozilla::layers::BufferTextureHost::UpdatedInternal(this=0x000000081ed3a7a0, aRegion=<unavailable>) at TextureHost.cpp:536
    frame #23: 0x0000000805f9fff6 libxul.so`mozilla::layers::ContentHostSingleBuffered::UpdateThebes(this=<unavailable>, aData=<unavailable>, aUpdated=<unavailable>, aOldValidRegionBack=<unavailable>) at ContentHost.cpp:370
    frame #24: 0x0000000805fcf6c3 libxul.so`mozilla::layers::CompositableParentManager::ReceiveCompositableUpdate(this=<unavailable>, aDetail=<unavailable>, aCompositable=<unavailable>) at CompositableTransactionParent.cpp:100
    frame #25: 0x0000000805fcebf1 libxul.so`mozilla::layers::CompositableParentManager::ReceiveCompositableUpdate(this=0x000000081f903340, aEdit=<unavailable>) at CompositableTransactionParent.cpp:70
    frame #26: 0x0000000805ff43a1 libxul.so`mozilla::layers::LayerTransactionParent::RecvUpdate(this=<unavailable>, aInfo=0x00007fffde5ef9f8) at LayerTransactionParent.cpp:444
    frame #27: 0x0000000805a76c41 libxul.so`mozilla::layers::PLayerTransactionParent::OnMessageReceived(this=0x000000081f903340, msg__=0x000000082ee6b4b8) at PLayerTransactionParent.cpp:125
    frame #28: 0x00000008059ba2f1 libxul.so`mozilla::layers::PCompositorManagerParent::OnMessageReceived(this=0x00000008109f3300, msg__=0x000000082ee6b4b8) at PCompositorManagerParent.cpp:197
    frame #29: 0x0000000805935527 libxul.so`mozilla::ipc::MessageChannel::DispatchAsyncMessage(this=0x00000008109f33e0, aProxy=0x000000080f730000, aMsg=0x000000082ee6b4b8) at MessageChannel.cpp:2212
    frame #30: 0x0000000805934370 libxul.so`mozilla::ipc::MessageChannel::DispatchMessage(this=0x00000008109f33e0, aMsg=0x000000082ee6b4b8) at MessageChannel.cpp:2134
    frame #31: 0x0000000805934e2e libxul.so`mozilla::ipc::MessageChannel::MessageTask::Run(this=0x000000082ee6b460) at MessageChannel.cpp:2004
    frame #32: 0x00000008059009d4 libxul.so`MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask&&) [inlined] MessageLoop::RunTask(this=0x00007fffde5efe40, aTask=<unavailable>) at message_loop.cc:442
    frame #33: 0x00000008059009c3 libxul.so`MessageLoop::DeferOrRunPendingTask(this=0x00007fffde5efe40, pending_task=0x00007fffde5efd38) at message_loop.cc:450
    frame #34: 0x0000000805900ceb libxul.so`MessageLoop::DoWork(this=0x00007fffde5efe40) at message_loop.cc:523
    frame #35: 0x0000000805901341 libxul.so`base::MessagePumpDefault::Run(this=0x000000080f731030, delegate=0x00007fffde5efe40) at message_pump_default.cc:35
    frame #36: 0x00000008059004a7 libxul.so`MessageLoop::Run() [inlined] MessageLoop::RunInternal(this=<unavailable>) at message_loop.cc:315
    frame #37: 0x000000080590049b libxul.so`MessageLoop::Run() [inlined] MessageLoop::RunHandler(this=<unavailable>) at message_loop.cc:308
    frame #38: 0x000000080590049b libxul.so`MessageLoop::Run(this=<unavailable>) at message_loop.cc:290
    frame #39: 0x000000080590a01e libxul.so`base::Thread::ThreadMain(this=0x000000080b69d7c0) at thread.cc:192
    frame #40: 0x000000080590605a libxul.so`ThreadFunc(closure=<unavailable>) at platform_thread_posix.cc:40
    frame #41: 0x0000000801209716 libthr.so.3`thread_start(curthread=0x000000080e79fb00) at thr_create.c:291
* thread #1, name = 'Compositor', stop reason = signal SIGSEGV
  * frame #0: 0x00000008013fcd3a libc.so.7`__sys_thr_kill at thr_kill.S:4
    frame #1: 0x00000008013fc6f4 libc.so.7`__raise(s=11) at raise.c:52:10
    frame #2: 0x0000000807f06572 libxul.so`nsProfileLock::FatalSignalHandler(int, __siginfo*, void*) + 290
    frame #3: 0x000000080885b41f libxul.so`WasmTrapHandler(int, __siginfo*, void*) + 335
    frame #4: 0x00000008012103ae libthr.so.3`___lldb_unnamed_symbol103$$libthr.so.3 + 222
    frame #5: 0x000000080120f96f libthr.so.3`___lldb_unnamed_symbol84$$libthr.so.3 + 319
    frame #6: 0x00007ffffffff003
    frame #7: 0x00000008033f85b5 libEGL.so.1`___lldb_unnamed_symbol342$$libEGL.so.1 + 1333
    frame #8: 0x0000000817febd1b iris_dri.so`___lldb_unnamed_symbol10742$$iris_dri.so + 6539
    frame #9: 0x0000000817ea0123 iris_dri.so`___lldb_unnamed_symbol7559$$iris_dri.so + 51
    frame #10: 0x0000000817ea1e17 iris_dri.so`___lldb_unnamed_symbol7608$$iris_dri.so + 87
    frame #11: 0x0000000817ea2985 iris_dri.so`___lldb_unnamed_symbol7629$$iris_dri.so + 53
    frame #12: 0x0000000817fe9759 iris_dri.so`___lldb_unnamed_symbol10738$$iris_dri.so + 809
    frame #13: 0x0000000817b3a1a6 iris_dri.so`___lldb_unnamed_symbol1047$$iris_dri.so + 1254
    frame #14: 0x00000008033ef468 libEGL.so.1`___lldb_unnamed_symbol166$$libEGL.so.1 + 744
    frame #15: 0x00000008033e19f4 libEGL.so.1`eglMakeCurrent + 596
    frame #16: 0x0000000805c27fc4 libxul.so`mozilla::gl::GLContextEGL::MakeCurrentImpl() const + 68
    frame #17: 0x0000000805c13bc0 libxul.so`mozilla::gl::GLContext::MakeCurrent(bool) const + 80
    frame #18: 0x0000000805ca46c2 libxul.so`mozilla::layers::CompositingRenderTargetOGL::~CompositingRenderTargetOGL() + 194
    frame #19: 0x0000000805ca478e libxul.so`mozilla::layers::CompositingRenderTargetOGL::~CompositingRenderTargetOGL() + 14
    frame #20: 0x0000000805d8d875 libxul.so`mozilla::layers::ContainerLayerComposite::CleanupResources() + 53
    frame #21: 0x0000000805d8d8c2 libxul.so`mozilla::layers::ContainerLayerComposite::CleanupResources() + 130
    frame #22: 0x0000000805dba0a8 libxul.so`mozilla::EnableIf<(IsSame<decltype(fp0(fp)), void>::value) && (IsSame<decltype(fp1(fp)), void>::value), void>::Type mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5, mozilla::EnableIf<IsSame<decltype(fp0(fp)), void>::value, void>::Type mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5>(mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5 const&)::'lambda'(mozilla::layers::Layer*)>(mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5 const&, mozilla::EnableIf<IsSame<decltype(fp0(fp)), void>::value, void>::Type mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5>(mozilla::layers::Layer*, mozilla::layers::ClearSubtree(mozilla::layers::Layer*)::$_5 const&)::'lambda'(mozilla::layers::Layer*) const&) + 24
    frame #23: 0x0000000805de6f75 libxul.so`mozilla::layers::LayerTransactionParent::RecvClearCachedResources() + 37
    frame #24: 0x000000080586bc5f libxul.so`mozilla::layers::PLayerTransactionParent::OnMessageReceived(IPC::Message const&) + 1471
    frame #25: 0x00000008057b0b01 libxul.so`mozilla::layers::PCompositorManagerParent::OnMessageReceived(IPC::Message const&) + 385
    frame #26: 0x000000080572c4a7 libxul.so`mozilla::ipc::MessageChannel::DispatchAsyncMessage(mozilla::ipc::ActorLifecycleProxy*, IPC::Message const&) + 103
    frame #27: 0x000000080572b2f0 libxul.so`mozilla::ipc::MessageChannel::DispatchMessage(IPC::Message&&) + 352
    frame #28: 0x000000080572bdae libxul.so`mozilla::ipc::MessageChannel::MessageTask::Run() + 78
    frame #29: 0x00000008056f7e54 libxul.so`MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask&&) + 212
    frame #30: 0x00000008056f816b libxul.so`MessageLoop::DoWork() + 443
    frame #31: 0x00000008056f87c1 libxul.so`base::MessagePumpDefault::Run(base::MessagePump::Delegate*) + 209
    frame #32: 0x00000008056f7927 libxul.so`MessageLoop::Run() + 87
    frame #33: 0x00000008057015ae libxul.so`base::Thread::ThreadMain() + 446
    frame #34: 0x00000008056fd52a libxul.so`ThreadFunc(void*) + 10
    frame #35: 0x000000080120a716 libthr.so.3`___lldb_unnamed_symbol3$$libthr.so.3 + 326
Blocks: wayland
Regressed by: 1597861
Has Regression Range: --- → yes

This looks similar to crashes I've been experiencing. I reported this to mesa here:

https://gitlab.freedesktop.org/mesa/mesa/issues/2251

See Also: → 1605906

Bug 1605906 looks very similar to this bug.

Call stacks / STRs match. Please reopen if the patch attached to bug 1605906 doesn't fix it.

Status: UNCONFIRMED → RESOLVED
Closed: 4 years ago
Keywords: regression
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.