Moving this from a downstream bug report: https://gitlab.gnome.org/GNOME/evolution/-/issues/1854 The WebKitWebProcess crashes with SIGSEGV in Evolution, when using 2.36.0 release, as built in Fedora 35, specifically webkit2gtk3-2.36.0-2.fc35.x86_64. Here is the terminal output: $ evolution libEGL warning: MESA-LOADER: failed to open swrast: /usr/lib64/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib64/dri, suffix _dri) EGLDisplay Initialization failed: EGL_NOT_INITIALIZED Cannot create EGL sharing context: invalid display (last error: EGL_SUCCESS) and here is the corecumpctl info: PID: 3075 (WebKitWebProces) UID: 1001 (peter) GID: 100 (users) Signal: 11 (SEGV) Timestamp: Fri 2022-04-01 21:55:24 CEST (4min 46s ago) Command Line: /usr/libexec/webkit2gtk-4.0/WebKitWebProcess 13 35 Executable: /usr/libexec/webkit2gtk-4.0/WebKitWebProcess Control Group: /user.slice/user-1001.slice/user@1001.service/app.slice/vte-spawn- a39e67fa-5035-4c1d-b775-2ddab4ae166b.scope Unit: user@1001.service User Unit: vte-spawn-a39e67fa-5035-4c1d-b775-2ddab4ae166b.scope Slice: user-1001.slice Owner UID: 1001 (peter) Boot ID: ba0.........076 Machine ID: 244.........70e Hostname: gygv Storage: none Message: Process 3075 (WebKitWebProces) of user 1001 dumped core. As I said I had earlier installed mesa-dri-drivers with the swrast file, and although the swrast failure report went away, I still got the very same error report in Evolution, with no mail bodies visible. So I deinstalled the package with swrast. I also noticed that a new dependency came with 2.36.0 which is not used by 2.34.0: libglvnd-opengl-1:1.3.4-2.fc35.x86_64
/usr/lib64/dri/swrast_dri.so is not a symlink, and all of /usr/lib64 is mounted in the web process sandbox... very strange. Does it work using WEBKIT_FORCE_SANDBOX=0?
(In reply to Milan Crha from comment #0) > As I said I had earlier installed mesa-dri-drivers with the swrast file, and > although the swrast failure report went away, I still got the very same > error report in Evolution, with no mail bodies visible. So I deinstalled the > package with swrast. What exactly did you uninstall? /usr/lib64/dri/swrast_dri.so is provided by mesa-dri-drivers. Surely you didn't remove that?
(In reply to Michael Catanzaro from comment #1) > /usr/lib64/dri/swrast_dri.so is not a symlink, and all of /usr/lib64 is > mounted in the web process sandbox... very strange. Does it work using > WEBKIT_FORCE_SANDBOX=0? Evolution 3.42.4 disables the sandbox, due to the printing bug #202363: https://gitlab.gnome.org/GNOME/evolution/-/blob/gnome-41/src/shell/main.c#L478 (In reply to Michael Catanzaro from comment #2) > What exactly did you uninstall? /usr/lib64/dri/swrast_dri.so is provided by > mesa-dri-drivers. Surely you didn't remove that? From the downstream reporter: I don't have mesa-dri-drivers on my system, nothing requires it. When I saw the error message when starting evolution in a terminal about the missing swrast file, I found out that it is provided by mesa-dri- drivers, so I installed that package. But apart from silencing the swrast message in the terminal, it didn't solve any problems, so I uninstalled the package. With current evolution, and the webkit2gt3 2.34.0, evolution works nicely without mesa-dri-drivers, as does anything else. That is I don't have this file right now: /usr/lib64/dri/swrast_dri.so
Backtrace of the crash. I specifically asked to not install debuginfo package for the WebKitGTK due to its size. Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `/usr/libexec/webkit2gtk-4.0/WebKitWebProcess 13 23'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f5ee97b487e in glXCreateContext () from /lib64/libGLX.so.0 [Current thread is 1 (Thread 0x7f5e3f5ff640 (LWP 4492))] Missing separate debuginfos, use: dnf debuginfo-install webkit2gtk3- 2.36.0-2.fc35.x86_64 (gdb) bt #0 0x00007f5ee97b487e in glXCreateContext () from /lib64/libGLX.so.0 #1 0x00007f5eee1108b6 in WebCore::GLContext::createContextForWindow(unsigned long, WebCore::PlatformDisplay*) () from /lib64/libwebkit2gtk-4.0.so.37 #2 0x00007f5eecf758b8 in WTF::Detail::CallableWrapper<WebKit::ThreadedCompositor::ThreadedCompos itor(WebKit::ThreadedCompositor::Client&, WebKit::ThreadedDisplayRefreshMonitor::Client&, unsigned int, WebCore::IntSize const&, float, unsigned int)::{lambda()#2}, void>::call() () from /lib64/libwebkit2gtk-4.0.so.37 #3 0x00007f5eecf6bb87 in WTF::Detail::CallableWrapper<WebKit::CompositingRunLoop::performTaskSyn c(WTF::Function<void ()>&&)::{lambda()#1}, void>::call() () from /lib64/libwebkit2gtk-4.0.so.37 #4 0x00007f5eebb8d22d in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) [clone .lto_priv.0] () from /lib64/libjavascriptcoregtk-4.0.so.18 #5 0x00007f5eebb8ace3 in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) [clone .lto_priv.0] () from /lib64/libjavascriptcoregtk-4.0.so.18 #6 0x00007f5eec1040af in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #7 0x00007f5eec159308 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0 #8 0x00007f5eec1037c3 in g_main_loop_run () from /lib64/libglib- 2.0.so.0 #9 0x00007f5eebb8d8f0 in WTF::RunLoop::run() () from /lib64/libjavascriptcoregtk-4.0.so.18 #10 0x00007f5eebb97267 in WTF::wtfThreadEntryPoint(void*) [clone .lto_priv.0] () from /lib64/libjavascriptcoregtk-4.0.so.18 #11 0x00007f5eec51eb1a in start_thread () from /lib64/libc.so.6 #12 0x00007f5eec5a3660 in clone3 () from /lib64/libc.so.6
Created attachment 459788 [details] webkitgtk-backtrace.txt I have same problem, but have a backtrace with -ggdb information. To me it looks like the fallback case in Source/WebCore/platform/graphics/glx/GLContextGLX.cpp is supplying NULL as the "vis" argument to glXCreateContext(), but that function immediately tries to use vis. Note however that I don't get any libEGL or mesa warnings when I start evolution; those may be red herrings.
Updating to evolution-3.44.1 fixes it, and my guess is that the NEWS item "Disable hardware acceleration for WebKitGTK" is responsible.