[jammy regression] webkit apps do not display content (yelp, epiphany, gnome-online-accounts etc)

Bug #1966418 reported by Luis Alberto Pabón
352
This bug affects 61 people
Affects Status Importance Assigned to Milestone
Gnome DevHelp
Invalid
Undecided
Unassigned
Mesa
Fix Released
Unknown
Webkit
Unknown
Medium
epiphany-browser (Ubuntu)
Invalid
Undecided
Unassigned
evolution (Ubuntu)
Invalid
High
Unassigned
gnome-control-center (Ubuntu)
Invalid
Undecided
Unassigned
liferea (Ubuntu)
Invalid
Undecided
Unassigned
mesa (Ubuntu)
Fix Released
High
Unassigned
webkit2gtk (Ubuntu)
Invalid
High
Unassigned

Bug Description

Impact
------
All webkit using apps for affected users display a blank screen.

Original Bug Report
-------------------
Evolution has suddenly stopped displaying message contents on the last 24h. Starting it up from the command line shows this output:

```
EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)
```

I don't know if it's related, but googling around shows some webkitgtk hits on this error.

The email contents are however clickable. They're just not rendered to screen (see attached file).

Deleting the evolution folders from `~/.config`, `~/.cache` and `~/.local/share` does not help.

Email accounts are all google, configured through gnome online accounts.

Workaround #1
-------------
You can run the app from the command line with
WEBKIT_DISABLE_COMPOSITING_MODE=1 evolution
(Replace evolution with the name of the webkit app you are trying to use)

Workaround #2
-------------
Log out.
Select your name on the login screen.
Click the gear button and choose Ubuntu on Xorg.
Enter your password to finish logging in.

ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: evolution 3.44.0-1
ProcVersionSignature: Ubuntu 5.15.0-23.23-generic 5.15.27
Uname: Linux 5.15.0-23-generic x86_64
ApportVersion: 2.20.11-0ubuntu79
Architecture: amd64
CasperMD5CheckResult: unknown
CurrentDesktop: sway
Date: Fri Mar 25 10:55:49 2022
SourcePackage: evolution
UpgradeStatus: Upgraded to jammy on 2022-03-01 (24 days ago)

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

In a recent mass upgrade in my distro, I upgraded WebKitGTK to 2.36.0 (among other packages). I'm now finding that the webview is blank in all the apps that use it (epiphany, Yelp). The web inspector shows up fine, and when I move the cursor around the screen it changes as if it were hovering over the actual web content. Running either yelp or epiphany with WEBKIT_DISABLE_COMPOSITING_MODE=1 makes the webviews work correctly again, so I suspect this is an issue with the accelerated hardware compositing. Not sure what libraries are involved with that, so I don't know which versions to give you. I'm happy to provide whatever you need to track down the bug!

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

Not sure if this is related, but when I start epiphany w/o the environment variable, I get this warning and xdg-desktop-portal segfaults while trying to handle MakeThreadRealtimeWithPID

$ epiphany
(WebKitWebProcess:2): Gdk-WARNING **: 01:48:32.563: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name is not activatable
(WebKitWebProcess:2): Gdk-WARNING **: 01:48:32.563: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name is not activatable

when the environment variable is set, the crash still seems to happen, but the warning becomes hit-or-miss (either happening once or none at all) and epiphany starts rendering webpages correctly.

Revision history for this message
In , Pgriffis (pgriffis) wrote :

> I get this warning and xdg-desktop-portal segfaults while trying to handle MakeThreadRealtimeWithPID

You need `xdg-desktop-portal` 1.12.2 or 1.14.0 to fix that.

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to Adrian Vovk from comment #0)
> Running either yelp or epiphany with
> WEBKIT_DISABLE_COMPOSITING_MODE=1 makes the webviews work correctly again,
> so I suspect this is an issue with the accelerated hardware compositing.

I agree.

> Not
> sure what libraries are involved with that, so I don't know which versions
> to give you. I'm happy to provide whatever you need to track down the bug!

Try loading webkit://gpu and paste the output here. The flaw in this plan is that it probably won't load unless you use WEBKIT_DISABLE_COMPOSITING_MODE=1, which will impact the results it shows, but we'll just have to keep that in mind.

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :
Download full text (3.1 KiB)

> You need `xdg-desktop-portal` 1.12.2 or 1.14.0 to fix that.

I'm using xdg-desktop-portal 1.14.1

> Try loading webkit://gpu and paste the output here

This causes epiphany to segfault, no matter if the environment variable is set. Here's the backtrace of this crash:

#0 0x00007f9f4c1b534e _ZN6WebKit21WebKitProtocolHandler9handleGPUEP23_WebKitURISchemeRequest (libwebkit2gtk-4.0.so.37 + 0xba634e)
#1 0x00007f9f4c1b57ab _ZN6WebKit21WebKitProtocolHandler13handleRequestEP23_WebKitURISchemeRequest (libwebkit2gtk-4.0.so.37 + 0xba67ab)
#2 0x00007f9f4c1cf69e _ZN22WebKitURISchemeHandler17platformStartTaskERN6WebKit12WebPageProxyERNS0_16WebURLSchemeTaskE (libwebkit2gtk-4.0.so.37 + 0xbc069e)
#3 0x00007f9f4c119a50 _ZN6WebKit12WebPageProxy24startURLSchemeTaskSharedEON3WTF3RefINS_15WebProcessProxyENS1_12RawPtrTraitsIS3_EEEENS1_16ObjectIdentifierIN7WebCore18PageIdentifierT>
#4 0x00007f9f4c119b3a _ZN6WebKit12WebPageProxy18startURLSchemeTaskEONS_23URLSchemeTaskParametersE (libwebkit2gtk-4.0.so.37 + 0xb0ab3a)
#5 0x00007f9f4bdac8f3 _ZN3IPC13handleMessageIN8Messages12WebPageProxy18StartURLSchemeTaskEN6WebKit12WebPageProxyEMS5_FvONS4_23URLSchemeTaskParametersEEEEvRNS_10ConnectionERNS_7Deco>
#6 0x00007f9f4bd9f404 _ZN6WebKit12WebPageProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (libwebkit2gtk-4.0.so.37 + 0x790404)
#7 0x00007f9f4c01868b _ZN3IPC18MessageReceiverMap15dispatchMessageERNS_10ConnectionERNS_7DecoderE (libwebkit2gtk-4.0.so.37 + 0xa0968b)
#8 0x00007f9f4c0cf4d0 _ZN6WebKit15WebProcessProxy17didReceiveMessageERN3IPC10ConnectionERNS1_7DecoderE (libwebkit2gtk-4.0.so.37 + 0xac04d0)
#9 0x00007f9f4c010fe5 _ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_7DecoderESt14default_deleteIS2_EE (libwebkit2gtk-4.0.so.37 + 0xa01fe5)
#10 0x00007f9f4c0131c9 _ZN3IPC10Connection24dispatchIncomingMessagesEv (libwebkit2gtk-4.0.so.37 + 0xa041c9)
#11 0x00007f9f4b24c98d _ZN3WTF7RunLoop11performWorkEv (libjavascriptcoregtk-4.0.so.18 + 0x136298d)
#12 0x00007f9f4b2acc5d _ZZN3WTF7RunLoopC4EvENUlPvE_4_FUNES1_ (libjavascriptcoregtk-4.0.so.18 + 0x13c2c5d)
#13 0x00007f9f4b2ad64d _ZN3WTF7RunLoopUlP8_GSourcePFiPvES3_E_4_FUNES2_S5_S3_ (libjavascriptcoregtk-4.0.so.18 + 0x13c364d)
#14 0x00007f9f4f89f17c g_main_context_dispatch (libglib-2.0.so.0 + 0x5717c)
#15 0x00007f9f4f8f5a98 g_main_context_iterate.constprop.0 (libglib-2.0.so.0 + 0xada98)
#16 0x00007f9f4f89c824 g_main_context_iteration (libglib-2.0.so.0 + 0x54824)
#17 0x00007f9f4fac5b3d g_application_run (libgio-2.0.so.0 + 0xe7b3d)
#18 0x000055621937601f main (epiphany + 0x501f)
#19 0x00007f9f4f50874a n/a (libc.so.6 + 0x2d74a)
#20 0x00007f9f4f508806 __libc_start_main (libc.so.6 + 0x2d806)
#21 0x0000556219376335 _start (epiphany + 0x5335)

However, I can still give you all the version numbers it would give

WebKit version: 2.36.0 (tarball)
Operating system (uname -a): Linux adrians-macbook 5.16.16-mainline #1 SMP PREEMPT Mon Mar 21 19:34:18 UTC 2022 x86_64 GNU/Linux
Desktop ($XDG_CURRENT_DESKTOP): graphite:Wayfire:GNOME
Cairo version: 1.16.0
GStreamer version: 1.20.1
GTK version: 3.24.33
libwpe version: 1.12.0
wpebackend-fdo version: 1.12.0
Mesa version: 22.0.0
GL renderer: Mesa Intel(R) Iris(R) Graphics 6100 (BDW G...

Read more...

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to Adrian Vovk from comment #4)
> This causes epiphany to segfault, no matter if the environment variable is
> set. Here's the backtrace of this crash:

Uh... might be related, could you post a backtrace with `bt full` please? Then we can decide whether it requires a separate bug report or not.

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

> post a backtrace with `bt full`

Sure! Here it is

(gdb) bt full
#0 0x00007ffff3c5734e in WebKit::WebKitProtocolHandler::handleGPU(_WebKitURISchemeRequest*) () at /usr/lib/libwebkit2gtk-4.0.so.37
#1 0x00007ffff3c577ab in WebKit::WebKitProtocolHandler::handleRequest(_WebKitURISchemeRequest*) () at /usr/lib/libwebkit2gtk-4.0.so.37
#2 0x00007ffff3c7169e in WebKitURISchemeHandler::platformStartTask(WebKit::WebPageProxy&, WebKit::WebURLSchemeTask&) () at /usr/lib/libwebkit2gtk-4.0.so.37
#3 0x00007ffff3bbba50 in WebKit::WebPageProxy::startURLSchemeTaskShared(WTF::Ref<WebKit::WebProcessProxy, WTF::RawPtrTraits<WebKit::WebProcessProxy> >&&, WTF::ObjectIdentifier<WebCore::PageIdentifierType>, WebKit::URLSchemeTaskParameters&&) () at /usr/lib/libwebkit2gtk-4.0.so.37
#4 0x00007ffff3b42cf0 in WebKit::ProvisionalPageProxy::startURLSchemeTask(WebKit::URLSchemeTaskParameters&&) () at /usr/lib/libwebkit2gtk-4.0.so.37
#5 0x00007ffff3b4d62f in void IPC::handleMessage<Messages::WebPageProxy::StartURLSchemeTask, WebKit::ProvisionalPageProxy, void (WebKit::ProvisionalPageProxy::*)(WebKit::URLSchemeTaskParameters&&)>(IPC::Connection&, IPC::Decoder&, WebKit::ProvisionalPageProxy*, void (WebKit::ProvisionalPageProxy::*)(WebKit::URLSchemeTaskParameters&&)) () at /usr/lib/libwebkit2gtk-4.0.so.37
#6 0x00007ffff3aba68b in IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&) () at /usr/lib/libwebkit2gtk-4.0.so.37
#7 0x00007ffff3b714d0 in WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::Decoder&) () at /usr/lib/libwebkit2gtk-4.0.so.37
#8 0x00007ffff3ab2fe5 in IPC::Connection::dispatchMessage(std::unique_ptr<IPC::Decoder, std::default_delete<IPC::Decoder> >) ()
--Type <RET> for more, q to quit, c to continue without paging--
   o.37
#9 0x00007ffff3ab51c9 in IPC::Connection::dispatchIncomingMessages() () at /usr/lib/libwebkit2gtk-4.0.so.37
#10 0x00007ffff2cee98d in WTF::RunLoop::performWork() () at /usr/lib/libjavascriptcoregtk-4.0.so.18
#11 0x00007ffff2d4ec5d in WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) () at /usr/lib/libjavascriptcoregtk-4.0.so.18
#12 0x00007ffff2d4f64d in WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) () at /usr/lib/libjavascriptcoregtk-4.0.so.18
#13 0x00007ffff734117c in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#14 0x00007ffff7397a98 in g_main_context_iterate.constprop () at /usr/lib/libglib-2.0.so.0
#15 0x00007ffff733e824 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#16 0x00007ffff7567b3d in g_application_run () at /usr/lib/libgio-2.0.so.0
#17 0x000055555555901f in main ()

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

I took a look at the disassembly @ the point of the crash:

   0x00007ffff3c57342 <+882>: call 0x7ffff53c62a0 <_ZN7WebCore9GLContext22createOffscreenContextEPNS_15PlatformDisplayE>
   0x00007ffff3c57347 <+887>: mov -0x1d0(%rbp),%rdi
=> 0x00007ffff3c5734e <+894>: mov (%rdi),%rax
   0x00007ffff3c57351 <+897>: call *0x10(%rax)

So it seems to be crashing somewhere between these two lines: https://github.com/WebKit/WebKit/blob/b65babf43267b620de1c5720a8624e766af525c2/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp#L374-L375

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

I suppose you're hitting bug #201507 and/or bug #233578. I suspect this bug may be a duplicate of one or the other. Or both.

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

Not sure what the path forward here is? Those issues don't look super similar to me, especially since the assembly snippet I've posted seems to be throwing out the result of createOffscreenContext, dereferencing some random variable, and calling it as a function. However, I might be missing something and I'm sure you know better. Do you think those two bugs are related to the blank webviews? I don't see segfaults then

Additional context: The flatpak'd wip/exalm/gtk4 branch of epiphany (using the same version of webkitgtk) works perfectly fine on the same system

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to Michael Catanzaro from comment #8)
> I suppose you're hitting bug #201507 and/or bug #233578. I suspect this bug
> may be a duplicate of one or the other. Or both.

I just assumed it's the same because these bugs are related to errors when causing makeContextCurrent. It's caused multiple crashes in the past, if you're brave enough to wade through the history of those bugs....

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to Adrian Vovk from comment #9)
> Not sure what the path forward here is?

BTW I don't know either. Needs help from graphics folks.

Revision history for this message
Luis Alberto Pabón (copong) wrote :
Revision history for this message
Luis Alberto Pabón (copong) wrote :

The tooltip comes from hovering with the mouse pointer over an (invisible) link on the email. Not sure why the pointer wasn't captured.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in evolution (Ubuntu):
status: New → Confirmed
Revision history for this message
Ernst Sjöstrand (ernstp) wrote (last edit ):

I'm also seeing this.

eglinfo ends with:

Device platform:
eglinfo: eglInitialize failed

es2_info says:

EGL_CLIENT_APIS: OpenGL OpenGL_ES
GL_VERSION: OpenGL ES 3.2 Mesa 22.0.0
GL_RENDERER: Mesa Intel(R) UHD Graphics 620 (WHL GT2)

Revision history for this message
Luis Alberto Pabón (copong) wrote :

I get the same from es2_info and eglinfo

Revision history for this message
Luis Alberto Pabón (copong) wrote :
Revision history for this message
Hugh Devlin (hdevlin) wrote :

also seeing this

evolution started from command line:

EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

Clicking around blindly on the "blank" email, I managed to hit the sender and launch a reply.

es2_info:

EGL_VERSION: 1.5
EGL_VENDOR: Mesa Project

EGL_CLIENT_APIS: OpenGL OpenGL_ES
GL_VERSION: OpenGL ES 3.2 Mesa 22.0.0
GL_RENDERER: Mesa Intel(R) HD Graphics 4400 (HSW GT2)

64-bit Ubuntu Jammy Jellyfish (development branch) current as of today 2022-03-25

Revision history for this message
Jeremy Bícha (jbicha) wrote :

As a workaround, try this:

Log out.
Select your name on the login screen.
Click the gear button and choose Ubuntu on Xorg.
Enter your password to finish logging in.
Then launch evolution.

Changed in evolution (Ubuntu):
importance: Undecided → High
tags: added: rls-jj-incoming
Jeremy Bícha (jbicha)
Changed in webkit2gtk (Ubuntu):
importance: Undecided → High
status: New → Confirmed
Changed in mesa (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Revision history for this message
Hugh Devlin (hdevlin) wrote (last edit ):

Ubuntu on Xorg is a good work-around for me, no error message from evolution at the command line, and the email displays normally, thanks for that

Jeremy Bícha (jbicha)
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in epiphany-browser (Ubuntu):
status: New → Confirmed
Changed in liferea (Ubuntu):
status: New → Confirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

There is a similar discussion upstream on https://bugs.webkit.org/show_bug.cgi?id=238244

Revision history for this message
In , Desktop Rebuild Bot (desktop-rebuild-bot) wrote :

The issue also got reported on launchpad for the incoming Ubuntu
https://bugs.launchpad.net/webkit/+bug/1966418

It is only an issue under wayland, login into an x11 session makes things work again

Changed in webkit:
importance: Unknown → High
status: Unknown → Confirmed
Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

I believe the Ubuntu bug I'm experiencing was triggered by the update to mesa 22.0. I am using Intel graphics.

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to seb128 from comment #12)
> The issue also got reported on launchpad for the incoming Ubuntu
> https://bugs.launchpad.net/webkit/+bug/1966418
>
> It is only an issue under wayland, login into an x11 session makes things
> work again

You have different/additional information in that downstream bug. I'm not convinced that it's the same as this issue. In your downstream bug, you are seeing:

EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

But Adrian has not reported this error. Adrian, do you see that anywhere? If not, we'll need a separate bug report for them.

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

I don't compile WebKit w/ X11 support so I can't tell you if running epiphany w/ GDK_BACKEND=x11 helps anything

---

I do not see those EGL errors when I run epiphany on the host. However, if I run the Epiphany flatpak with FLATPAK_GL_DRIVERS=host, I get

EGLDisplay Initialization failed: EGL_BAD_PARAMETER
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

but the webviews still show up (they're just sluggish). When running with FLATPAK_GL_DRIVERS=host, the epiphany flatpak starts crashing when opening about:gpu

---

Downgrading to Mesa 21.3.8 on the host does not solve the issue for me. Not sure what's going on here, because Epiphany from Flathub (using Mesa 21.3.8, WebKitGTK 2.36.0) works perfectly fine in my environment

Revision history for this message
In , Adrian Vovk (adrianvovk) wrote :

OK I found a way to fix it @ package time! I previously built webkitgtk with -DENABLE_X11_TARGET=OFF. I tried building with -DENABLE_X11_TARGET=ON (since this is the major difference between my build and the gnome-build-meta build, aside from Mesa version), and now it works properly

Seems like disabling the x11 backend also accidentally disables parts of the Wayland backend somewhere

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

OK, then for sure this bug is not the problem that Ubuntu users are seeing. Hi Ubuntu, please file a separate bug. Thanks!

Revision history for this message
In , Cgarcia-f (cgarcia-f) wrote :

If works with x11 enabled, that's probably because we messed it up with the gl platform includes in the gl detection patches.

Revision history for this message
Luis Alberto Pabón (copong) wrote : Re: [jammy regression] Evolution does not display message content anymore

`WEBKIT_DISABLE_COMPOSITING_MODE=1 evolution` works around the issue for me on a Sway wayland session and running evolution in native wayland mode.

Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

webkit2gtk 2.35.90-1ubuntu1
Ubuntu 22.04 Beta

I am reporting this Ubuntu bug here for tracking.

All webkitgtk using apps just show a blank webview (either light with a light theme or dark with a dark theme). The cursor does change when hovering over invisible links.

When run from the command line this shows:
EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

This only happens when logged into a GNOME/Ubuntu on Wayland session. Either running in an Xorg session or with the WEBKIT_DISABLE_COMPOSITING_MODE=1 prefix works around the problem.

Other Information
=================
I believe this bug was triggered by the recent upgrade to mesa 22.0.

I think it might only affect Intel graphics.

My system according to GNOME has
Intel® Core™ i5-10310U CPU
Mesa Intel® UHD Graphics (CML GT2)

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

> I believe this bug was triggered by the recent upgrade to mesa 22.0.

Huh, here on Fedora 36 I only have mesa 21.3.8.

Is it possible to downgrade mesa to confirm that the mesa upgrade is to blame? That would help a lot.

Jeremy Bícha (jbicha)
Changed in webkit:
importance: High → Unknown
status: Confirmed → Unknown
Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

Yes, the bug went away when I downgraded the mesa packages to 21.3.5-1ubuntu2

Revision history for this message
In , Adrian Perez (aperezdc) wrote :

Further trying to help narrow down: I have Mesa 22.0 here and things
work fine, but my GPU is different (Intel HD Graphics 520 SKL GT2),
so this points towards either device-specific code, or towards the
Mesa driver chosen by the Mesa loader.

Note that there are two drivers: the traditional “i965” and the new
“iris” driver. Here I am using “iris” (and there is not even the other
installed).

You can set “MESA_LOADER_DRIVER_OVERRIDE=iris” if your GPU is supported
by the new driver and if things then work that will mean that the issue
is most likely the i965 driver. Alternatively, if Iris driver does not
support your GPU but Vulkan is supported, you can try the “zink” driver,
which implements OpenGL and GLES on top of Vulkan (and again, if that
works, then there is some bug in the Intel driver you are using :D)

I hope this helps!

Changed in webkit:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

The first 2 did not work for me but the 3rd did.

iris
----
$ MESA_LOADER_DRIVER_OVERRIDE=iris yelp
EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)
Unsupported modifier, resource creation failed.
XXX: resource creation failed

zink
----
$ MESA_LOADER_DRIVER_OVERRIDE=zink yelp
MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

MESA-INTEL: warning: Performance support disabled, consider sysctl dev.i915.perf_stream_paranoid=0

EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

i965
----
$ MESA_LOADER_DRIVER_OVERRIDE=i965 yelp
libEGL warning: MESA-LOADER: failed to open i965: /usr/lib/dri/i965_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)

WaylandCompositor requires eglBindWaylandDisplayWL, eglUnbindWaylandDisplayWL and eglQueryWaylandBuffer.
Nested Wayland compositor could not initialize EGL
libEGL warning: MESA-LOADER: failed to open i965: /usr/lib/dri/i965_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)

Revision history for this message
In , Adrian Perez (aperezdc) wrote :

(In reply to Jeremy Bicha from comment #4)
> The first 2 did not work for me but the 3rd did.
>
> iris
> ----
> $ MESA_LOADER_DRIVER_OVERRIDE=iris yelp
> EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
> Cannot create EGL context: invalid display (last error: EGL_SUCCESS)
> Unsupported modifier, resource creation failed.
> XXX: resource creation failed
>
> zink
> ----
> $ MESA_LOADER_DRIVER_OVERRIDE=zink yelp
> MESA-INTEL: warning: Performance support disabled, consider sysctl
> dev.i915.perf_stream_paranoid=0
>
> MESA-INTEL: warning: Performance support disabled, consider sysctl
> dev.i915.perf_stream_paranoid=0
>
> EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
> Cannot create EGL context: invalid display (last error: EGL_SUCCESS)

Zink will use internally lower-level parts from the Iris driver to access
the hardware, so at least this indicates that the issue is *below* the
OpenGL/GLES implementation. Could be EGL or hardware access, I suppose.

> i965
> ----
> $ MESA_LOADER_DRIVER_OVERRIDE=i965 yelp
> libEGL warning: MESA-LOADER: failed to open i965: /usr/lib/dri/i965_dri.so:
> cannot open shared object file: No such file or directory (search paths
> /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
>
> WaylandCompositor requires eglBindWaylandDisplayWL,
> eglUnbindWaylandDisplayWL and eglQueryWaylandBuffer.
> Nested Wayland compositor could not initialize EGL
> libEGL warning: MESA-LOADER: failed to open i965: /usr/lib/dri/i965_dri.so:
> cannot open shared object file: No such file or directory (search paths
> /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)

When a driver that was set explicitly like this fails to load, Mesa falls
back to using software rendering. This means you ended up here using the
swrast/llvmpipe driver, most likely (you can load “webkit://gpu” in the
Minibrowser or Epiphany to check this). This means that WebKit is most
likely using the GLX/EGL/OpenGL/GLES APIs correctly and the issue lies
somewhere in the Intel driver.

But the version of Mesa I am using here is the same as you and it works.
My suspicion is that one of the following is happening:

 * Patches applied by Debian/Ubuntu on top of Mesa are breaking the Intel
   driver. Here I am using Arch Linux, which does not apply any patches.
 * The Intel driver is being miscompiled somehow by the compiler toolchain
   shipped by Ubuntu. In case it helps, here Arch stable has GCC 11.2.0 as
   the default system compiler, so that's what gets used to build packages.
 * The bug could be related to your particular GPU model (and the
   corresponding code inside Mesa for it).

I hope this helps :)

Revision history for this message
Luis Alberto Pabón (copong) wrote : Re: [jammy regression] Evolution does not display message content anymore

Added `gnome-control-center` to affected - GNOME online accounts requires a web browsing session to auth into some services.

Revision history for this message
Sebastien Bacher (seb128) wrote :

the issue is in the library there is no need to add every client software

Changed in gnome-control-center (Ubuntu):
status: New → Invalid
Changed in evolution (Ubuntu):
status: Confirmed → Invalid
Changed in epiphany-browser (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

I reported this issue to Mesa also.

https://gitlab.freedesktop.org/mesa/mesa/-/issues/6236

Changed in liferea (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote : Re: [jammy regression] Evolution does not display message content anymore

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1966418

tags: added: iso-testing
Changed in devhelp:
status: New → Invalid
Changed in mesa (Ubuntu):
milestone: none → ubuntu-22.04
Revision history for this message
In , Marian+webkit (marian+webkit) wrote :

This issue occurs on my machine as well, which has an AMD GPU. So it does not seem to be directly related to the graphics driver in use.

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

(In reply to Marian Rainer-Harbach from comment #7)
> This issue occurs on my machine as well, which has an AMD GPU. So it does
> not seem to be directly related to the graphics driver in use.

Beware: if you're not certain the issue is caused by the same mesa 21.3 -> 22.0 upgrade, you might have a different underlying issue.

Anyway, I'm going to close this as MOVED since the issue is being tracked by mesa now and it seems unlikely that WebKit developers will be able to help more. We can reopen if the mesa issue gets closed.

Changed in webkit:
status: Confirmed → Unknown
Jeremy Bícha (jbicha)
summary: - [jammy regression] Evolution does not display message content anymore
+ [jammy regression] webkit apps do not display content (yelp, epiphany,
+ gnome-online-accounts etc)
Revision history for this message
kozimodo (rainexpected) wrote :

For what it is worth, I have an i915 system and "MESA_LOADER_DRIVER_OVERRIDE=zink yelp" works but not "MESA_LOADER_DRIVER_OVERRIDE=i915 yelp".

Revision history for this message
In , Jeremy Bícha (jbicha) wrote :

A very important detail:
Ubuntu builds webkit2gtk with -DUSE_WPE_RENDERER=OFF
This was done because we would need Ubuntu Security Team sign off to get wpewebkit in to Ubuntu's 'main' archive section instead of in 'universe'.

It looks like this bug is specific to that config.

Copying from the mesa bug:
https://gitlab.freedesktop.org/mesa/mesa/-/issues/6236#note_1329402

"The issue is that WebKitGTK's internal Wayland compositor needs to implement zwp_linux_dmabuf_v1 rather than relying on EGL_WL_bind_wayland_display.

In the meantime, we could revert the part which makes us strictly rely on dmabuf on the Mesa client side, and keep both in parallel for a little bit. But WebKitGTK should really be implementing this interface."

Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

I've chatted with Jeremy about this, and he understands that -DUSE_WPE_RENDERER=OFF was intended to allow a transition period for distros to package libwpe and wpebackend-fdo, that WebKit developers don't test it anymore, and that Ubuntu needs to turn it on. I've also reported bug #238932 to consider making it mandatory in the GTK 4 version of WebKit.

In the meantime, I wonder how hard it would be to upgrade the legacy internal compositor to support zwp_linux_dmabuf_v1 so that Ubuntu doesn't have to patch mesa. No clue about that.

Revision history for this message
In , Desktop Rebuild Bot (desktop-rebuild-bot) wrote :

Adding some context, I disabled wpe in Ubuntu when we landed the version that added the option because the backend was new and our rules requires a review from our security and MIR teams before adding new main depends, which wasn't properly anticipated and not going to done for the incoming release of Ubuntu.

I should probably have done that by now but I the wpebackend package description in Debian states 'WebKit browser engine optimized for embedded devices' which made me wrongly assume that was not the preferred backend for a desktop usecase.

Which brings us back to today. The wpebackend package will be added to our review queue but that's not going to be processed in time for the incoming LTS so we will need another solution. The mesa upstream report suggests they might be wanting to add code to handle legacy clients (which webkitgtk built without wpe seems to be for that usecase?). Ideally the webkitgtk codepath not using WPE would also be fixed since that's an official upstream option. Our backup plan is probably to try to revert the changes from mesa if really needed

tags: added: dt-302
Changed in webkit:
status: Unknown → Confirmed
Jeremy Bícha (jbicha)
Changed in webkit2gtk (Ubuntu):
status: Confirmed → Invalid
Changed in mesa (Ubuntu):
status: Confirmed → In Progress
Jeremy Bícha (jbicha)
Changed in mesa (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mesa - 22.0.1-1ubuntu2

---------------
mesa (22.0.1-1ubuntu2) jammy; urgency=medium

  * revert-af1ee8e01044.diff: Revert a commit which broke webkitgtk.
    (LP: #1966418)
  * enable-dg2.diff: Dropped, it's too soon to enable DG2.

 -- Timo Aaltonen <email address hidden> Thu, 14 Apr 2022 13:28:58 +0300

Changed in mesa (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Oibaf (oibaf) wrote :

Please consider also fixing webkit in jammy, otherwise who uses a newer mesa will get again the issue.

Revision history for this message
Xavier Claessens (zdra) wrote :

Evolution and Online Accounts seems fixed in Jammy now. However devhelp still cannot display documentation pages. Maybe unrelated issue?

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Xavier, this bug is closed. Please file a new bug for any other issues.

Revision history for this message
Marian Rainer-Harbach (marianrh) wrote (last edit ):

While this bug is fixed for displaying emails in Evolution, the same problem still occurs when editing emails. I created bug #1969584 for this.

Changed in mesa:
status: Unknown → Fix Released
Revision history for this message
In , Michael Catanzaro (mike-catanzaro) wrote :

Is this still a problem?

Revision history for this message
In , Steve Kluth (steve-kluth) wrote : Re: [Bug 1966418]

Fixed/Working as expected in Gnome-Online-Accounts

On Sat, Dec 3, 2022 at 4:00 AM Michael Catanzaro <email address hidden>
wrote:

> Is this still a problem?
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1968764).
> https://bugs.launchpad.net/bugs/1966418
>
> Title:
> [jammy regression] webkit apps do not display content (yelp, epiphany,
> gnome-online-accounts etc)
>
> Status in Gnome DevHelp:
> Invalid
> Status in Mesa:
> Fix Released
> Status in Webkit:
> Confirmed
> Status in epiphany-browser package in Ubuntu:
> Invalid
> Status in evolution package in Ubuntu:
> Invalid
> Status in gnome-control-center package in Ubuntu:
> Invalid
> Status in liferea package in Ubuntu:
> Invalid
> Status in mesa package in Ubuntu:
> Fix Released
> Status in webkit2gtk package in Ubuntu:
> Invalid
>
> Bug description:
> Impact
> ------
> All webkit using apps for affected users display a blank screen.
>
> Original Bug Report
> -------------------
> Evolution has suddenly stopped displaying message contents on the last
> 24h. Starting it up from the command line shows this output:
>
> ```
> EGLDisplay Initialization failed: EGL_NOT_INITIALIZED
> Cannot create EGL context: invalid display (last error: EGL_SUCCESS)
> ```
>
> I don't know if it's related, but googling around shows some webkitgtk
> hits on this error.
>
> The email contents are however clickable. They're just not rendered to
> screen (see attached file).
>
> Deleting the evolution folders from `~/.config`, `~/.cache` and
> `~/.local/share` does not help.
>
> Email accounts are all google, configured through gnome online
> accounts.
>
> Workaround #1
> -------------
> You can run the app from the command line with
> WEBKIT_DISABLE_COMPOSITING_MODE=1 evolution
> (Replace evolution with the name of the webkit app you are trying to use)
>
> Workaround #2
> -------------
> Log out.
> Select your name on the login screen.
> Click the gear button and choose Ubuntu on Xorg.
> Enter your password to finish logging in.
>
>
> ProblemType: Bug
> DistroRelease: Ubuntu 22.04
> Package: evolution 3.44.0-1
> ProcVersionSignature: Ubuntu 5.15.0-23.23-generic 5.15.27
> Uname: Linux 5.15.0-23-generic x86_64
> ApportVersion: 2.20.11-0ubuntu79
> Architecture: amd64
> CasperMD5CheckResult: unknown
> CurrentDesktop: sway
> Date: Fri Mar 25 10:55:49 2022
> SourcePackage: evolution
> UpgradeStatus: Upgraded to jammy on 2022-03-01 (24 days ago)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/devhelp/+bug/1966418/+subscriptions
>
>

Revision history for this message
Luis Alberto Pabón (copong) wrote :

Works for me.

Revision history for this message
In , Cgarcia-f (cgarcia-f) wrote :

wpe renderer is now mandatory, the nested wayland compositor was removed already.

Changed in webkit:
status: Confirmed → Unknown
Revision history for this message
In , corrado venturini (corradoventu) wrote : Re: [Bug 1966418]

no more a problem for me
thanks

Corrado Venturini

Il giorno lun 5 dic 2022 alle ore 10:09 Cgarcia-f <
<email address hidden>> ha scritto:

> wpe renderer is now mandatory, the nested wayland compositor was removed
> already.
>
> --
> You received this bug notification because you are subscribed to a
> duplicate bug report (1967658).
> https://bugs.launchpad.net/bugs/1966418
>
> Title:
> [jammy regression] webkit apps do not display content (yelp, epiphany,
> gnome-online-accounts etc)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/devhelp/+bug/1966418/+subscriptions
>
>

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.