It's really a multi-thread issue (https://bugzilla.mozilla.org/show_bug.cgi?id=1606848#c2), there's a log from it: [(null) 69489: Main Thread]: D/WidgetWayland moz_gtk_widget_get_wl_surface [0x7fffdc246a60] wl_surface 0x7fffdc052060 ID 44 [(null) 69489: Main Thread]: D/Widget nsWindow::UpdateTopLevelOpaqueRegionWayland() [2031351.728] -> wl_compositor@33.create_region(new id wl_region@110) [2031351.738] -> wl_region@110.add(26, 23, 960, 1020) [2031351.747] -> wl_surface@44.set_opaque_region(wl_region@110) [2031351.752] -> wl_region@110.destroy() [2031351.758] -> wl_compositor@33.create_region(new id wl_region@108) [2031351.793] -> wl_region@108.add(0, 0[(null) 69489: Compositor]: D/WidgetWayland moz_container_get_wl_surface [0x7fffdc2dc830] surface 0x7fffd92f6510 ready_to_draw 1 wl_surface_set_opaque_region id 107 0x7fffc93d51f0 , 960, 1020) moz_container_set_opaque_region region id 108 0x7fffcc217f60 BEGIN [2031351.902] -> wl_region@107.destroy() moz_container_set_opaque_region region id END, new region is 0x7fffcc217f60 [(null) 69489: Main Thread]: D/Widget END nsWindow::UpdateTopLevelOpaqueRegionWayland() END -> we're still at moz_gtk_widget_get_wl_surface() / Main Thread and we crash here: [2031351.943] -> wl_surface@61.set_opaque_region( Thread 25 "Compositor" received signal SIGSEGV, Segmentation fault.
Bug 1606751 Comment 17 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
It's really a multi-thread issue (https://bugzilla.mozilla.org/show_bug.cgi?id=1606848#c2), there's a log from it: [(null) 69489: Main Thread]: D/WidgetWayland moz_gtk_widget_get_wl_surface [0x7fffdc246a60] wl_surface 0x7fffdc052060 ID 44 [(null) 69489: Main Thread]: D/Widget nsWindow::UpdateTopLevelOpaqueRegionWayland() [2031351.728] -> wl_compositor@33.create_region(new id wl_region@110) [2031351.738] -> wl_region@110.add(26, 23, 960, 1020) [2031351.747] -> wl_surface@44.set_opaque_region(wl_region@110) [2031351.752] -> wl_region@110.destroy() [2031351.758] -> wl_compositor@33.create_region(new id wl_region@108) [2031351.793] -> wl_region@108.add(0, 0, 960, 1020) [(null) 69489: Compositor]: D/WidgetWayland moz_container_get_wl_surface [0x7fffdc2dc830] surface 0x7fffd92f6510 ready_to_draw 1 wl_surface_set_opaque_region id 107 0x7fffc93d51f0 moz_container_set_opaque_region region id 108 0x7fffcc217f60 BEGIN [2031351.902] -> wl_region@107.destroy() moz_container_set_opaque_region region id END, new region is 0x7fffcc217f60 [(null) 69489: Main Thread]: D/Widget END nsWindow::UpdateTopLevelOpaqueRegionWayland() END Compositor]: D/WidgetWayland moz_container_get_wl_surface -> We're at compositor thread (moz_container_get_wl_surface) while opaque region is updated from main thread (UpdateTopLevelOpaqueRegionWayland()). [2031351.943] -> wl_surface@61.set_opaque_region( Thread 25 "Compositor" received signal SIGSEGV, Segmentation fault.