Closed Bug 1527556 Opened 6 years ago Closed 6 years ago

Crash in [@ mozilla::widget::WaylandDisplayGetLocked]

Categories

(Core :: Graphics: WebRender, defect)

Unspecified
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla67
Tracking Status
firefox-esr60 --- unaffected
firefox65 --- unaffected
firefox66 --- unaffected
firefox67 + fixed

People

(Reporter: calixte, Assigned: sotaro)

References

(Blocks 4 open bugs)

Details

(Keywords: crash, regression)

Crash Data

Attachments

(1 file)

This bug is for crash report bp-16116e3d-4c2d-4b22-845e-6c98b0190213.

Top 10 frames of crashing thread:

0 libxul.so mozilla::widget::WaylandDisplayGetLocked widget/gtk/nsWaylandDisplay.cpp:49
1 libxul.so mozilla::widget::WaylandDisplayGet widget/gtk/nsWaylandDisplay.cpp:65
2 libxul.so moz_container_get_wl_surface widget/gtk/mozcontainer.cpp:509
3 libxul.so moz_container_get_wl_egl_window widget/gtk/mozcontainer.cpp:539
4 libxul.so nsWindow::GetNativeData widget/gtk/nsWindow.cpp:1587
5 libxul.so mozilla::gl::GLContextEGL::CreateEGLSurfaceForCompositorWidget gfx/gl/GLContextProviderEGL.cpp:309
6 libxul.so mozilla::wr::RenderCompositorEGL::CreateEGLSurface gfx/webrender_bindings/RenderCompositorEGL.cpp:63
7 libxul.so mozilla::wr::RenderCompositorEGL::BeginFrame gfx/webrender_bindings/RenderCompositorEGL.cpp:84
8 libxul.so mozilla::wr::RendererOGL::UpdateAndRender gfx/webrender_bindings/RendererOGL.cpp:113
9 libxul.so mozilla::wr::RenderThread::UpdateAndRender gfx/webrender_bindings/RenderThread.cpp:369

There are 6 crashes (from 2 installations) in nightly 67 with buildid 20190212195904. In analyzing the backtrace, the regression may have been introduced by patch [1] to fix bug 1514156.

[1] https://hg.mozilla.org/mozilla-central/rev?node=d97a89ada9e6

Flags: needinfo?(sotaro.ikeda.g)
Blocks: wayland, wr-linux
Flags: needinfo?(sotaro.ikeda.g)
Assignee: nobody → sotaro.ikeda.g
See Also: → 1525213
See Also: → 1507475

30 crashes in 3 days, that's a lot for Linux nightly, tracking for 67.

Blocks: wr-stability

The fix in Bug 1514156 was not good :( There is already a better way in CompositingRenderTargetOGL::BindRenderTarget(). It calls GLContextEGL::RenewSurface(). Though it seems not related to the crash.

https://searchfox.org/mozilla-central/rev/fa992cb1042ff696050ec75bdfe3e0eb7d2e2b2f/gfx/layers/opengl/CompositingRenderTargetOGL.cpp#41

When MAX_DISPLAY_CONNECTIONS was 3, I did not saw the crash in Bug 1528105 comment 3.

WaylandDisplayGetLocked() was called with same wl_display, but the function was called on 3 different threads(main thread, render thread and compositor thread). It is specific to WebRender usage. compositor thread is used with BasicCompositor.

Blocks: 1505307
Pushed by sikeda@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4a53bea7d587 Change MAX_DISPLAY_CONNECTIONS to 3 r=stransky
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla67
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: