Recent changes made by Fedora to the X11 subsystem have created a major performance regression for users of VMware Workstation 17.5:
Every single GUI process in a Fedora Linux guest installation on X11 gets a startup delay of approximately two seconds (2s!) .
I’d be very happy to learn how to fix this, as I’d really like to stay on Fedora Linux.
To reproduce the problem,
- install a fresh Fedora Linux guest into VMware Workstation, preferably the KDE spin ( Fedora KDE Plasma Desktop | The Fedora Project)
- log into X11 session
sudo dnf update --refresh
reboot
- log into X11 session
sudo dnf install ltrace
ltrace -T -o glxinfo64.ltrace glxinfo64 -B
grep glXChooseVisual glxinfo64.ltrace
For me, this yields
glXChooseVisual(0x555b64bb9da0, 0, 0x555b63650020, 0) = 0x555b64bda0e0 <2.272554>
which means that the call to “glXChooseVisual” took 2.272554 seconds to complete.
This call is made by almost every single X11 application on startup, to initialize the X11 client. It is supposed to return almost immediately.
The net effect of this behaviour is that
- KDE Plasma startup is very slow on X11
- launching any GUI process on X11 takes that two second startup penalty
This behaviour is unique to Fedora and its provisioning of X11; it has crept in over the last couple of weeks (on F38, now F39).
An Archlinux installation, on the same physical+virtual hardware combination, has perfectly good “glXChooseVisual does not consume any time to complete” behaviour. As a result, KDE on X11 is a joy to use on Archlinux, while this is much less true of Fedora since recent updates.
Note that an Ubuntu 22.04 LTS install also shows undesirable performance characteristics - glXChooseVisual takes some substantial amount of time (on the order of 500ms), but this is not as massive as on current Fedora.
While I would love to switch to Wayland, alas, KDE / Plasma 5 only works well with X11 on the VMWare Workstation 17.5 virtualization stack. I am not keen on switching to GNOME (Wayland).
Any suggestions?