XWayland application issues on Iris, HD620, Mesa 20.1.2
System information
- OS: Fedora release 32
- GPU: Intel Corporation HD Graphics 620 (rev 02)
- Kernel version: 5.6.19-300
- Mesa version: 20.1.2
- Xserver version (if applicable): 1.20.8
- Desktop manager and compositor: Gnome 3.36.3, gnome-shell
The issue
After upgrading to Fedora 32, applications running XWayland stop working properly. In MATLAB I get the following error:
com.jogamp.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x3834025b, isOwner false, <50dabe93, 77becc1e>[count 0, qsz 0, owner <NULL>]]]
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:326)
at jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:297)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:688)
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:580)
at jogamp.opengl.x11.glx.X11GLXDrawableFactory$SharedResourceImplementation.createSharedResource(X11GLXDrawableFactory.java:297)
... 2 more
This issue is "resolved" if apply export MESA_LOADER_DRIVER_OVERRIDE=i965
.
However, this trick doesn't work when I launch virtualbox. I get tears, graphical glitches, corrupt text and overall poor performance. See screenshots. This is even true when I set export MESA_LOADER_DRIVER_OVERRIDE=i965
in /etc/environment.
I've tried various workarounds such as
Option "AccelMethod" "uxa"
Option "TearFree" "true"
Option "NoAccel" "True"
Option "DRI" "False"
without any luck.
Regression
It worked two weeks ago. Unfortunately, I haven't been keeping track of the release history. All applications running native Wayland works fine.
Log files
I get this error in dmesg:
[ 75.068835] xhci_hcd 0000:3c:00.0: can't change power state from D3hot to D0 (config space inaccessible)
[ 75.068864] xhci_hcd 0000:3c:00.0: Controller not ready at resume -19
[ 75.068867] xhci_hcd 0000:3c:00.0: PCI post-resume error -19!
[ 75.068869] xhci_hcd 0000:3c:00.0: HC died; cleaning up`