Bugzilla – Bug 6177
GLX doesn't work with Mesa 13+
Last modified: 2018-10-01 15:10:21
You need to
before you can comment on or make changes to this bug.
I upgraded my Fedora 25 workstation and GLX stopped working. Most likely
because of the new glvnd stuff.
GLX tools are very unhappy:
> $ glxinfo
> name of display: :2
> Error: couldn't find RGB GLX visual or fbconfig
Xvnc doesn't show any errors though:
> (II) AIGLX: Loaded and initialized swrast
> (II) GLX: Initialized DRISWRAST GL provider for screen 0
A first step here is producing a platform specific note with some more
information. It should include:
- Which desktop environments that work, and which that don't
- What can be done to work around the issue (currently only downgrade is a
After that we'll move this bug to PoolTodo for the investigation of the
An initial platform specific note has been added, so far with just the
information to downgrade Mesa.
Tested with Mesa 13 on Fedora 25:
- works: LXDE, XFCE
- doesn't work: Cinnamon, GNOME 3, GNOME Classic
The following commands were enough to fix the issue on my Fedora 25
> sudo dnf downgrade mesa-libEGL --allowerasing
> sudo dnf downgrade mesa-dri-drivers --allowerasing
> sudo dnf downgrade mesa-libgbm
> sudo dnf downgrade mesa-libwayland-egl
> sudo dnf downgrade mesa-libxatracker
(In reply to comment #3)
> - works: LXDE, XFCE
This only means that I was able to login and get a session, there are several
applications that are broken in this state. No gnome applications work for
At the moment, Fedora 25 is the only stable release that has Mesa 13. However,
it seems like it will be included in Ubuntu 17.04:
In a LXDE ThinLinc session with Mesa 13, while you do get a desktop, there are
many applications that still segfaults when trying to start them:
✗ any gnome application, firefox, evolution, emacs, shotwell, rhythmbox,
pcmanfm (default file viewer)
There are a few applications that work however:
✓ google-chrome, libreoffice, lxterminal, xterm, slack, tlclient (:P)
Furthermore, background image doesn't work in LXDE when running Mesa 13.
In a XFCE ThinLinc session with Mesa 13, aside from applications that was noted
to work/be broken above (for LXDE) I listed two more applications below.
✓ thunar (default file viewer), claws-mail
All in all, there are options for all essential applications I could think of.
While there are a lot of problems even on LXDE and XFCE, this makes it
_possible_ to run a desktop if you are prepared to use different applications.
This could be useful if someone for some reason can't downgrade to mesa 12.
The following command works to downgrade all necessary packages at once btw:
sudo dnf downgrade --allowerasing mesa-*
The problem can be alleviated by upgrading libepoxy to 1.4.1. The bug in
libepoxy caused applications to segfault if they couldn't access OpenGL. Many
applications started initializing OpenGL even if they didn't need it, and due
to this bug, they couldn't start.
So, with this upgrade, we no longer get segmentation faults, but we still don't
get OpenGL. Unfortunately, desktop environments like GNOME can't start without
OpenGL, and crashes. GNOME classic and Cinnamon offers some sort of fallback
mode that isn't particularly useful.
LXDE and XFCE on the other hand work well, as long as you don't run any
applications that actually need OpenGL, such as totem.
The upgrade for libepoxy is not yet available in any repos, but it can be
downloaded for Fedora 25 here:
Created an attachment (id=779) [details]
GNOME Shell crash
Screenshot of what happens when trying to start a GNOME session after upgrading
libepoxy to 1.4.1.
Created an attachment (id=780) [details]
GNOME Classic fallback mode
Screenshot of what happens when trying to start a GNOME classic session after
upgrading libepoxy to 1.4.1.
Created an attachment (id=781) [details]
Cinnamon fallback mode
Screenshot of what happens when trying to start a Cinnamon session after
upgrading libepoxy to 1.4.1.
KDE has the same problems as GNOME on Fedora 25, but it doesn't display any
error message on the crash, it just stops at a blue empty screen. No obvious
errors in xinit.log.
Mate works just as well as LXDE and XFCE.
(In reply to comment #6)
> it seems like it will be included in Ubuntu 17.04
I have installed an Ubuntu 17.04 machine, and even though mesa 13 is installed,
OpenGL things work fine! Applications such as glxgears work well.
The difference seems to be GLVND which is used on Fedora but not on Ubuntu. I
have reported this on the freedesktop bug.
I have added more information to the platform specific notes here:
I consider the first step done. Move to PoolTodo after verification.
As discovered on the upstream report, Fedora's Xvnc seems to work fine. So this
might be resolved with an upgrade of Mesa and/or Xorg in our build.
(In reply to comment #11)
> The upgrade for libepoxy is not yet available in any repos
Version 1.4.1 is now available from the normal fedora 25 updates repo.
(In reply to comment #17)
> As discovered on the upstream report, Fedora's Xvnc seems to work fine. So this
> might be resolved with an upgrade of Mesa and/or Xorg in our build.
I did a test build using xorg-server 1.19.1, and that gets glxgears up and
running. Upstream also mentions that GLVND might require a newer version of the
This solves/works around the issue:
> sudo ln -s /usr/lib64/libGLX_mesa.so.0 /usr/lib64/libGLX_indirect.so.0
Discussion ongoing upstream exactly what this does and what the consequences
Found the code responsible for selecting the correct GL driver:
It relies on a GLX extension that is only present in xorg-server 1.19 to
function correctly. Otherwise it needs one of multiple fallbacks:
- Vendor name 'indirect'
It sounds like Fedora is considering using the latter to get things working for
older X servers, so we may just have to sit back and wait. We could also
mention the symlink until then.
The complicating factor for this fallback symlink is that NVIDIA is also
claiming dibs on it, for unclear reasons. Hence why it is not obvious how this
will play out.
(In reply to comment #16)
> (In reply to comment #6)
> > it seems like it will be included in Ubuntu 17.04
> I have installed an Ubuntu 17.04 machine, and even though mesa 13 is installed,
> OpenGL things work fine! Applications such as glxgears work well.
> The difference seems to be GLVND which is used on Fedora but not on Ubuntu. I
> have reported this on the freedesktop bug.
> I have added more information to the platform specific notes here:
> I consider the first step done. Move to PoolTodo after verification.
The platform specific note looks fine for now.
Fedora has now pushed out the symlink workaround for Fedora 25 and Fedora 26.
Works fine. Haven't tested what happens when you install the NVIDIA driver
Should be fixed now since we have upgraded Xorg in bug 5241. I'll verify this.
> * Systems with glvnd should explicitly use mesa OpenGL instead of the fallback OpenGL.
Yup. It's a bit difficult to explicitly test this, but I can see the
"GLX_EXT_libglvnd" server extension in glxinfo. I can also do an strace and see
it loading "libGLX_mesa.so.0". With older servers it will use a fallback name
(libGLX_indirect.so.0, or libGLX_system.so.0).
Tested on Fedora 28.
> * Systems without glvnd should still work.
Tested with RHEL 6 and everything OpenGL works fine.