Bug 92039

Summary: glxinfo: Error: couldn't find RGB GLX visual or fbconfig; GetVisualConfigs returns 0 visuals; All fbconfigs have VisDepth = 0
Product: Mesa Reporter: mikolaj.chadzynski
Component: Drivers/Gallium/radeonsiAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED WONTFIX QA Contact: Default DRI bug account <dri-devel>
Severity: critical    
Priority: high CC: aperez, mikolaj.chadzynski, oded.gabbay
Version: 10.1   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: XOrg.0.log

Description mikolaj.chadzynski 2015-09-18 07:24:52 UTC
Created attachment 118341 [details]
XOrg.0.log

glxinfo displays visuals correctly for mesa 9.2.5 (SW rendering works ok - checked with glxgears) but when mesa updated to 10.1.2 I'm getting error:
libGL error: failed to load driver: radeonsi
libGL error: failed to load driver: swrast
Error: couldn't find RGB GLX visual or fbconfig
Error: couldn't find RGB GLX visual or fbconfig

xdpyinfo returns only 3 X visuals (for mesa 9.2.5 it was about 100)
glxinfo return 0 GLX visuals and all GLXFBConfigs have VisDepth = 0

Traced in libGL.so (glxect.c):
GetVisualConfigs returns 0 visuals.

Answering this question would help:
Where in mesa creating/getting information about visuals is done?

XOrg.O.log shows no error.


I suspect the problem is in radeonsi_drv.so, but for sure it's in Mesa.
Comment 1 mikolaj.chadzynski 2015-09-18 10:29:05 UTC
ERRATA: radeon_si_dri.so not radeon_si_drv.so in last sentence
Comment 2 mikolaj.chadzynski 2015-09-18 10:29:51 UTC
radeonsi_dri.so not radeonsi_drv.so :-)
Comment 3 Emil Velikov 2015-09-18 10:51:37 UTC
Hi Mikolaj

Here are a few things to try (keep in mind that I'm not a radeon dev)
 - Afaics this is a PPC - is it big endian (BE) system ?
 - Do try a later mesa 10.6.x or 11.0.x. Last (and final) 10.1.x was rolled out ~15 months ago, plus we had some BE fixes that just landed.
Comment 4 mikolaj.chadzynski 2015-09-18 13:41:03 UTC
I've tried mesa 10.4.4 with the same result (yes this is PPC). And I haven't tried higher version since it needs Xserver update.
Anyway it displays visuals correctly for mesa 9.2.5.
So it's communication between radeonsi_dri.so and xserver which is broken (even xdpyinfo shows only 3 X visuals).
Comment 5 Emil Velikov 2015-09-18 17:31:53 UTC
So it does sound like you're having a BE system. Handful of fixes for those just landed in 10.6/11.0 I'm afraid.

Although I'm not sure why newer xserver will be required... guessing you're running a old (pre glamor, or out-of-tree glamor) one ? If you're worried about messing up your setup you can always grab a recent enough livecd or install Fedora rawhide/Archlinux/etc in a separate partition.
Comment 6 mikolaj.chadzynski 2015-09-25 08:58:44 UTC
(In reply to Emil Velikov from comment #5)
I've tried mesa 10.6.1 and results are the same (x-server 1.15.0, glamor 0.6.0)
Are there any dependencies of the version required which are not checked e.g. xf86 driver or drm which can be a cause of this error ?
Comment 7 mikolaj.chadzynski 2015-09-25 11:40:05 UTC
It looks like the screen created by gallium/drivers/radeon/si_pipe.c is not getting correct configuration from the driver (or display controller ?).
Which part of the system is responsible for creating visuals in the screen ?

XGetVisualInfo from XServer is returning only 3 X visuals (two 24bits depth and 1 32 bits depth) - checked with xdpyinfo.

Then xGLXGetVisualConfigs returns 0 visuals - checked with glxinfo  which shows 0 GLX Visuals and al GLXFBConfigs have VisDepth = 0.

I'm using Yocto distribution for PPC where the default mesa is 9.2.5.
Here is my investigation with different versions of mesa:
9.2.5:
Visuals are created correctly and SW rendering works but switching on HW rendering (loading radeonsi_dri.so) is causing GPU error.
10.1.2:
No GLX Visuals unable to run SW rendering, GPU error while loading radeonsi_dri.so
10.4.4:
No GLX Visuals, No gpu error
10.6.1:
No GLX Visuals, No gpu error

In all cases there is no error in XOrg.0.log. It shows:
...
RADEON(0): Direct rendering enabled
RADEON(0): Use GLAMOR acceleration.
RADEON(0): Acceleration enabled
...
AIGLX: Loaded and initialized radeonsi
Comment 8 Michel Dänzer 2015-09-28 08:46:06 UTC
See bug 71789 and http://lists.freedesktop.org/archives/mesa-dev/2015-September/095517.html for some context.

Note that this is only the tip of an iceberg of issues for the radeonsi driver on big endian hosts. Don't expect this to work anytime soon.
Comment 9 Alex Perez 2016-01-03 01:02:05 UTC
I don't think this problem is specific to radeonsi; With the very latest git-built Mesa from today, I get the exact same problem with r600. Interestingly, 3D acceleration works with 16-bit depth, albeit still with wonky colors on Big Endian. 24 bit does not work at all with the very latest mesa from git, as of today.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.