protonscr

OpenGL GLX context is not using direct rendering - FOSS Radeon driver

steamclosed duplicatereviewed
ValveSoftware/steam-for-linux#3393 · opened 2014-07-02 by shoof · updated 2014-07-03 · 5 comments · github
Sshoof 2014-07-02 github

Steam client doesn't think I have direct rendering, which I do.

shoof@dustpuppy:~$ steam
Running Steam on debian 64-bit
STEAM_RUNTIME is enabled automatically
[2014-07-02 11:56:48] Startup - updater built May 29 2014 09:19:23
[2014-07-02 11:56:48] Verifying installation...
[2014-07-02 11:56:48] Verification complete
Error: OpenGL GLX context is not using direct rendering, which may cause performance problems.

For more information visit https://support.steampowered.com/kb_article.php?ref=9938-EYZB-7457.
Running Steam on debian 64-bit
STEAM_RUNTIME has been set by the user to: /home/shoof/.steam/ubuntu12_32/steam-runtime

-32 bit glxgears runs fine-
shoof@dustpuppy:~$ which glxgears
/usr/bin/glxgears

shoof@dustpuppy:~$ ldd /usr/bin/glxgears

linux-gate.so.1 (0xf777b000)
libGLEW.so.1.10 => /usr/lib/i386-linux-gnu/libGLEW.so.1.10 (0xf76ea000)
libGLU.so.1 => /usr/lib/i386-linux-gnu/libGLU.so.1 (0xf7676000)
libGL.so.1 => /usr/lib/i386-linux-gnu/libGL.so.1 (0xf7609000)
libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf75c3000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf748a000)
libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf7478000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf72cd000)
libXmu.so.6 => /usr/lib/i386-linux-gnu/libXmu.so.6 (0xf72b4000)
libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xf72a4000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf71b2000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7195000)
libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf717b000)
libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf7176000)
libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf7170000)
libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf716d000)
libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf7155000)
libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf714f000)
libxcb-dri3.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri3.so.0 (0xf714a000)
libxcb-present.so.0 => /usr/lib/i386-linux-gnu/libxcb-present.so.0 (0xf7146000)
libxcb-sync.so.1 => /usr/lib/i386-linux-gnu/libxcb-sync.so.1 (0xf713f000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf711d000)
libxshmfence.so.1 => /usr/lib/i386-linux-gnu/libxshmfence.so.1 (0xf711a000)
libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf7113000)
libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf7106000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf70ea000)
libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf70e5000)
/lib/ld-linux.so.2 (0xf777c000)
libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xf7089000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf7084000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf707e000)
libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xf7076000)
libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xf705d000)
libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf7057000)

shoof@dustpuppy:~$ glxgears

Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
302 frames in 5.0 seconds = 60.338 FPS
300 frames in 5.0 seconds = 59.999 FPS

-32 bit glxinfo shows I have direct rendering enabled-

shoof@dustpuppy:~$ which glxinfo
/usr/bin/glxinfo

shoof@dustpuppy:~$ ldd /usr/bin/glxinfo

linux-gate.so.1 (0xf76ec000)
libGLEW.so.1.10 => /usr/lib/i386-linux-gnu/libGLEW.so.1.10 (0xf765b000)
libGLU.so.1 => /usr/lib/i386-linux-gnu/libGLU.so.1 (0xf75e7000)
libGL.so.1 => /usr/lib/i386-linux-gnu/libGL.so.1 (0xf757a000)
libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf7534000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf73fb000)
libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf73e9000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf723e000)
libXmu.so.6 => /usr/lib/i386-linux-gnu/libXmu.so.6 (0xf7225000)
libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xf7215000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf7123000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7106000)
libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf70ec000)
libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf70e7000)
libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf70e1000)
libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf70de000)
libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf70c6000)
libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf70c0000)
libxcb-dri3.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri3.so.0 (0xf70bb000)
libxcb-present.so.0 => /usr/lib/i386-linux-gnu/libxcb-present.so.0 (0xf70b7000)
libxcb-sync.so.1 => /usr/lib/i386-linux-gnu/libxcb-sync.so.1 (0xf70b0000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf708e000)
libxshmfence.so.1 => /usr/lib/i386-linux-gnu/libxshmfence.so.1 (0xf708b000)
libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf7084000)
libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf7077000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf705b000)
libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf7056000)
/lib/ld-linux.so.2 (0xf76ed000)
libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xf6ffa000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf6ff5000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf6fef000)
libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xf6fe7000)
libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xf6fce000)
libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf6fc8000)

shoof@dustpuppy:~$ glxinfo | grep direct
direct rendering: Yes

Full glxinfo output has no errors.

-system info-

Processor Information:
    Vendor:  GenuineIntel
    CPU Family:  0x6
    CPU Model:  0x2a
    CPU Stepping:  0x7
    CPU Type:  0x0
    Speed:  3800 Mhz
    8 logical processors
    4 physical processors
    HyperThreading:  Supported
    FCMOV:  Supported
    SSE2:  Supported
    SSE3:  Supported
    SSSE3:  Supported
    SSE4a:  Unsupported
    SSE41:  Supported
    SSE42:  Supported

Network Information:
    Network Speed:  

Operating System Version:
    Debian GNU/Linux unstable (sid) (64 bit)
    Kernel Name:  Linux
    Kernel Version:  3.14-1-amd64
    X Server Vendor:  The X.Org Foundation
    X Server Release:  11501000
    X Window Manager:  KWin
    Steam Runtime Version:  steam-runtime-release_2014-04-15

Video Card:
    Driver:  X.Org Gallium 0.4 on AMD CAICOS

    Driver Version:  1.4 (3.0 Mesa 10.2.1)
    OpenGL Version: 1.4
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 60 Hz
    VendorID:  0x1002
    DeviceID:  0x6779
    Number of Monitors:  2
    Number of Logical Video Cards:  1
    Primary Display Resolution:  1920 x 1080
    Desktop Resolution: 3840 x 1080
    Primary Display Size: 20.08" x 11.30"  (23.03" diag)
                                            51.0cm x 28.7cm  (58.5cm diag)
    Primary VRAM Not Detected

Sound card:
    Audio device: Realtek ALC269VB

Memory:
    RAM:  16040 Mb

Miscellaneous:
    UI Language:  English
    LANG:  en_US.UTF-8
    Microphone:  Not set
    Total Hard Disk Space Available:  563289 Mb
    Largest Free Hard Disk Block:  425053 Mb

Installed software:

Recent Failure Reports:

Ggdrewb-valve maintainer 2014-07-02 github

Likely duplicate of #3273. @shoof, if you read through 3273 and check your stdout do you see similar message about libgcc issues?

Sshoof 2014-07-03 github

I don't have any of those errors on the console

$ LIBGL_DEBUG=verbose steam
Running Steam on debian  64-bit
STEAM_RUNTIME is enabled automatically
[2014-07-03 09:11:16] Startup - updater built Jun 30 2014 13:21:24
[2014-07-03 09:11:16] Verifying installation...
[2014-07-03 09:11:16] Verification complete
Error: OpenGL GLX context is not using direct rendering, which may cause performance problems.

For more information visit https://support.steampowered.com/kb_article.php?ref=9938-EYZB-7457.
[2014-07-03 09:11:19] Shutdown

I removed the libgcc_s.so.1 as suggested in the other thread but it didn't make a difference. I don't have a libstdc++.so.6 to remove.

I did all these things with a fresh install of steam and I still don't have direct rendering.

I also tried:

$ STEAM_RUNTIME=0 steam
Running Steam on debian  64-bit
STEAM_RUNTIME is disabled by the user
[2014-07-03 09:19:43] Startup - updater built Jun 30 2014 13:21:24
[2014-07-03 09:19:43] Verifying installation...
[2014-07-03 09:19:43] Verification complete
[2014-07-03 09:19:44] Shutdown

That command ran with nothing else happening.

Ggdrewb-valve maintainer 2014-07-03 github

If you set up LD_LIBRARY_PATH to use the Steam runtime binaries (as done in steam.sh) and then do your glxinfo test does it report direct rendering?

Sshoof 2014-07-03 github

That fails with errors similar to #3273

libGL: screen 0 does not appear to be DRI3 capable
libGL: pci id for fd 4: 1002:6779, driver r600
libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/tls/r600_dri.so
libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/r600_dri.so
libGL error: dlopen /usr/lib/i386-linux-gnu/dri/r600_dri.so failed (/home/shoof/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/dri/r600_dri.so))
libGL: OpenDriver: trying ${ORIGIN}/dri/tls/r600_dri.so
libGL: OpenDriver: trying ${ORIGIN}/dri/r600_dri.so
libGL error: dlopen ${ORIGIN}/dri/r600_dri.so failed (/home/shoof/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/dri/r600_dri.so))
libGL: OpenDriver: trying /usr/lib/dri/tls/r600_dri.so
libGL: OpenDriver: trying /usr/lib/dri/r600_dri.so
libGL error: dlopen /usr/lib/dri/r600_dri.so failed (/usr/lib/dri/r600_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: r600_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: r600
libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/i386-linux-gnu/dri/swrast_dri.so
libGL error: dlopen /usr/lib/i386-linux-gnu/dri/swrast_dri.so failed (/home/shoof/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/libLLVM-3.4.so.1))
libGL: OpenDriver: trying ${ORIGIN}/dri/tls/swrast_dri.so
libGL: OpenDriver: trying ${ORIGIN}/dri/swrast_dri.so
libGL error: dlopen ${ORIGIN}/dri/swrast_dri.so failed (/home/shoof/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/i386-linux-gnu/libLLVM-3.4.so.1))
libGL: OpenDriver: trying /usr/lib/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/dri/swrast_dri.so
libGL error: dlopen /usr/lib/dri/swrast_dri.so failed (/usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
name of display: :0
display: :0  screen: 0
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)

I did
mv /home/shoof/.steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6{,.disable}

And now steam is starting without the direct rendering error.
So this does appear to be a duplicate of #3273 , for me the offending lib was in usr/lib instead of lib.

Ggdrewb-valve maintainer 2014-07-03 github

Thanks, closing as a duplicate.

Nothing extracted yet.