Closed Bug 1735377 Opened 4 years ago Closed 3 years ago

Crash in [@ mozilla::widget::WaylandBufferSHM::Lock]

Categories

(Core :: Widget: Gtk, defect, P2)

defect

Tracking

()

RESOLVED DUPLICATE of bug 1737068
Tracking Status
firefox95 --- affected

People

(Reporter: aryx, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: crash)

Crash Data

There were a few crashes on release and beta channels before this got noticeable on Nightly with 95.0a1 20211009212622.

Crash report: https://crash-stats.mozilla.org/report/index/35df3ba1-0944-4244-93a1-35c9c0211012

Reason: SIGSEGV / SEGV_MAPERR

Top 10 frames of crashing thread:

0 libxul.so mozilla::widget::WaylandBufferSHM::Lock /build/firefox/src/firefox-93.0/widget/gtk/WaylandBuffer.cpp:222
1 libxul.so mozilla::widget::WindowSurfaceWaylandMB::Lock /build/firefox/src/firefox-93.0/widget/gtk/WindowSurfaceWaylandMultiBuffer.cpp:209
2 libxul.so mozilla::widget::WindowSurfaceProvider::StartRemoteDrawingInRegion /build/firefox/src/firefox-93.0/widget/gtk/WindowSurfaceProvider.cpp:125
3 libxul.so mozilla::wr::RenderCompositorSWGL::StartCompositing /build/firefox/src/firefox-93.0/gfx/webrender_bindings/RenderCompositorSWGL.cpp:186
4 libxul.so <webrender::compositor::sw_compositor::SwCompositor as webrender::composite::Compositor>::start_compositing /build/firefox/src/firefox-93.0/gfx/wr/webrender/src/compositor/sw_compositor.rs:1397
5 libxul.so webrender::renderer::Renderer::draw_frame /build/firefox/src/firefox-93.0/gfx/wr/webrender/src/renderer/mod.rs:4481
6 libxul.so webrender::renderer::Renderer::render_impl /build/firefox/src/firefox-93.0/gfx/wr/webrender/src/renderer/mod.rs:1966
7 libxul.so webrender::renderer::Renderer::render /build/firefox/src/firefox-93.0/gfx/wr/webrender/src/renderer/mod.rs:1708
8 libxul.so wr_renderer_render /build/firefox/src/firefox-93.0/gfx/webrender_bindings/src/bindings.rs:622
9 libxul.so mozilla::wr::RenderThread::UpdateAndRender /build/firefox/src/firefox-93.0/gfx/webrender_bindings/RenderThread.cpp:501
Blocks: wayland

Looks like a race condition when main window is closed and surface provider is released but we're getting some rendering events from webrender. We may call RevokeTransactionIdAllocator() explicitly when any window is hidden.

The 2021-10-04 build was good, but I can now easily reproduce this in the 2021-10-14 and 2021-10-16 builds.

As well as this signature, some of my crashes are happening [@ wl_array_copy | <.text ELF section in libwayland-client.so.0.3.0> ], e.g. https://crash-stats.mozilla.org/report/index/bf80bc15-4636-46d2-8c78-325f40211017. Got a bunch more crash reports submitted of both types if you want them.

I can reproduce the WaylandBufferSHM::Lock one by just clicking on the » (extensions/toolbar overflow menu) or ≡ (application menu) buttons in the toolbar. Also, opening multiple window things tends to make it crash after a while, mostly with wl_array_copy but sometimes WaylandBufferSHM::Lock; e.g. open window, right click a couple of times, in any order; or hover over things that produce tooltips a handful of times.

I’m on Sway, scale 1.5, and also I’m using widget.wayland.fractional_buffer_scale = 1.5 (which has its own issues discussed elsewhere but is probably not relevant here). Let me know if you’d like me to run anything to help diagnose or check this. Until then, I’m downgrading back to the 2021-10-04 build. 🙂

Please attach / submit as much back traces as possible. It helps to diagnose/identify the scenario reliably.
Thanks.

Flags: needinfo?(me)
Priority: -- → P2

This should be hopefully fixed by Bug 1737068.

No crash reports for 96, closing as a duplicate of bug 1737068. Please reopen if this still happens.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE
Flags: needinfo?(me)
You need to log in before you can comment on or make changes to this bug.