Closed
Bug 1972291
Opened 1 year ago
Closed 1 year ago
[HDR][KDE] MOZ_DIAGNOSTIC_ASSERT(!mFrameCallbackHandler.IsSet());
Categories
(Core :: Widget: Gtk, defect, P3)
Core
Widget: Gtk
Tracking
()
RESOLVED
FIXED
142 Branch
| Tracking | Status | |
|---|---|---|
| firefox142 | --- | fixed |
People
(Reporter: stransky, Assigned: stransky)
References
(Blocks 1 open bug)
Details
Crash Data
Attachments
(1 external file)
Looks like race:
MOZ_DIAGNOSTIC_ASSERT(!mFrameCallbackHandler.IsSet());
Renderer:
#10 MOZ_CrashSequence (aAddress=0x0, aLine=368) at /raid/src/objdir/dist/include/mozilla/Assertions.h:248
#11 0x00007f7ed3cb5697 in mozilla::widget::WaylandSurface::SetFrameCallbackLocked (this=0x7f7e79757400, aProofOfLock=..., aFrameCallbackHandler=..., aEmulateFrameCallback=true)
at /raid/src/widget/gtk/WaylandSurface.cpp:368
#12 0x00007f7ecd5c476c in mozilla::layers::NativeLayerWayland::Map (this=0x7f7e66380890, aParentWaylandSurfaceLock=0x7f7e99af83e0) at /raid/src/gfx/layers/NativeLayerWayland.cpp:765
#13 0x00007f7ecd5c377a in mozilla::layers::NativeLayerRootWayland::SetLayers (this=0x7f7ead1afa00, aLayers=const nsTArray<RefPtr<mozilla::layers::NativeLayer> > & = {...})
at /raid/src/gfx/layers/NativeLayerWayland.cpp:321
#14 0x00007f7ecde08d56 in mozilla::wr::RenderCompositorNative::CompositorEndFrame (this=0x7f7e8a3172f0) at /raid/src/gfx/webrender_bindings/RenderCompositorNative.cpp:277
#15 0x00007f7ecde1ba01 in wr_compositor_end_frame (aCompositor=0x7f7e8a3172f0) at /raid/src/gfx/webrender_bindings/RenderCompositor.cpp:149
#16 0x00007f7ed864a639 in webrender_bindings::bindings::{impl#22}::end_frame (self=0x7f7e910f8b28, _device=0x7f7e854f8000) at gfx/webrender_bindings/src/bindings.rs:1494
#17 0x00007f7ed8e4750c in webrender::renderer::Renderer::render_impl (self=0x7f7e854f8000, doc_id=..., active_doc=0x7f7e99af94d8, device_size=..., buffer_age=0) at gfx/wr/webrender/src/renderer/mod.rs:1822
#18 0x00007f7ed8e449f9 in webrender::renderer::Renderer::render (self=0x7f7e854f8000, device_size=..., buffer_age=0) at gfx/wr/webrender/src/renderer/mod.rs:1316
#19 0x00007f7ed8647dfb in webrender_bindings::bindings::wr_renderer_render (renderer=0x7f7e854f8000, width=1920, height=2088, buffer_age=0, out_stats=0x7f7e99afb250, out_dirty_rects=0x7f7e99afaf18)
at gfx/webrender_bindings/src/bindings.rs:650
Main thread:
#7 0x00007f7ed3cb9ab4 in mozilla::widget::WaylandSurface::Lock (this=0x7f7e91036100, aWaylandSurfaceLock=0x7ffc2abb6c88) at /raid/src/widget/gtk/WaylandSurface.cpp:882
#8 0x00007f7ed3cbed56 in mozilla::widget::WaylandSurfaceLock::WaylandSurfaceLock (this=0x7ffc2abb6c88, aWaylandSurface=[(mozilla::widget::WaylandSurface *)] = {...}, aForceCommit=false)
at /raid/src/widget/gtk/WaylandSurfaceLock.cpp:24
#9 0x00007f7ed3cb4f2f in mozilla::widget::WaylandSurface::FrameCallbackHandler (this=0x7f7e91036100, aCallback=0x7f7e7265e880, aTime=16268468, aRoutedFromChildSurface=false)
at /raid/src/widget/gtk/WaylandSurface.cpp:234
#10 0x00007f7ed3cbce19 in mozilla::widget::FrameCallbackHandler (aWaylandSurface=0x7f7e91036100, aCallback=0x7f7e7265e880, aTime=16268468) at /raid/src/widget/gtk/WaylandSurface.cpp:286
#11 0x00007f7edd4e6056 in ffi_call_unix64 () at /lib64/libffi.so.8
#12 0x00007f7edd4e1d08 in ffi_call_int.lto_priv () at /lib64/libffi.so.8
#13 0x00007f7edd4e470e in ffi_call () at /lib64/libffi.so.8
#14 0x00007f7ee0805422 in wl_closure_invoke (closure=closure@entry=0x7f7e8a3db4a0, target=<optimized out>, target@entry=0x7f7e7265e880, opcode=opcode@entry=0, data=<optimized out>, flags=1)
at ../src/connection.c:1228
#15 0x00007f7ee0805c79 in dispatch_event (display=display@entry=0x7f7ee2af9760, queue=queue@entry=0x7f7ee2af9858) at ../src/wayland-client.c:1674
#16 0x00007f7ee0806063 in dispatch_queue (display=0x7f7ee2af9760, queue=0x7f7ee2af9858) at ../src/wayland-client.c:1820
#17 wl_display_dispatch_queue_pending (display=0x7f7ee2af9760, queue=0x7f7ee2af9858) at ../src/wayland-client.c:2062
#18 0x00007f7ede89edd0 in _gdk_wayland_display_queue_events () at /lib64/libgdk-3.so.0
| Assignee | ||
Updated•1 year ago
|
Flags: needinfo?(stransky)
| Assignee | ||
Comment 1•1 year ago
|
||
Looks like we mapped/unmapped WaylandSurface and the frame callback is left from previous run and we assert when a new one is added.
| Assignee | ||
Comment 2•1 year ago
|
||
Updated•1 year ago
|
Assignee: nobody → stransky
Status: NEW → ASSIGNED
Pushed by stransky@redhat.com:
https://github.com/mozilla-firefox/firefox/commit/1c41624c3e16
https://hg.mozilla.org/integration/autoland/rev/fb521725e6e4
[Wayland] Clear frame callback handler on WaylandSurface::Unmap() r=emilio
Comment 4•1 year ago
|
||
| bugherder | ||
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
status-firefox142:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 142 Branch
| Assignee | ||
Updated•1 year ago
|
Flags: needinfo?(stransky)
Comment 6•1 year ago
|
||
Copying crash signatures from duplicate bugs.
Crash Signature: [@ mozilla::widget::WaylandSurface::SetFrameCallbackLocked]
Updated•1 year ago
|
QA Whiteboard: [qa-triage-done-c143/b142]
You need to log in
before you can comment on or make changes to this bug.
Description
•