nvidia-prime problems with steam

Bug #1307466 reported by Samuele Giovanni Tonon
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
nvidia-prime (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

hello,
if i launch steam on ubuntu 14.04 with nvidia-prime i get some errors:

1) swrast is not exposed:

$ LIBGL_DEBUG=verbose steam
Running Steam on ubuntu 14.04 64-bit
STEAM_RUNTIME is enabled automatically
Installing breakpad exception handler for appid(steam)/version(1393366296_client)
libGL: screen 0 does not appear to be DRI3 capable
libGL: screen 0 does not appear to be DRI2 capable
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: driver does not expose __driDriverGetExtensions_swrast(): /usr/lib/i386-linux-gnu/dri/swrast_dri.so: undefined symbol: __driDriverGetExtensions_swrast
libGL: Can't open configuration file /home/samu/.drirc: No such file or directory.
libGL: Can't open configuration file /home/samu/.drirc: No such file or directory.
libGL error: failed to load driver: swrast
[...]

2) steam complains with this error (but loads anyway)

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.

steam itself works, however i'm not able to play games but i'm not sure if this is due to previous errors or it is due to some missing 32 arch libs since steam officially supports bumblebee and not nvidia-prime.

Let me know if you need more information

Regards
Samuele

Revision history for this message
Alberto Milone (albertomilone) wrote :

please attach the following files:

1) /var/log/gpu-manager.log
2) the output of the "dkms status" command
3) the output of the "dmesg" command

Changed in nvidia-prime (Ubuntu):
status: New → Incomplete
Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote :

# dkms status
bbswitch, 0.7, 3.11.0-18-generic, x86_64: installed
bbswitch, 0.7, 3.13.0-24-generic, x86_64: installed
nvidia-331, 331.38, 3.13.0-24-generic, x86_64: installed
nvidia-331-uvm, 331.38, 3.13.0-24-generic, x86_64: installed

Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote :

and this is dmesg output

Revision history for this message
Alberto Milone (albertomilone) wrote :

Everything seems to be ok.

Please type the following commands:

sudo apt-get install mesa-utils:i386

ldd $(which glxinfo)

And attach the output of the second command.

Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote :

# ldd `which glxinfo`
 linux-gate.so.1 => (0xf77b5000)
 libGL.so.1 => /usr/lib/i386-linux-gnu/mesa/libGL.so.1 (0xf772c000)
 libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf75f8000)
 libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7448000)
 libglapi.so.0 => /usr/lib/i386-linux-gnu/libglapi.so.0 (0xf7430000)
 libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf741d000)
 libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xf7419000)
 libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xf7413000)
 libX11-xcb.so.1 => /usr/lib/i386-linux-gnu/libX11-xcb.so.1 (0xf740f000)
 libxcb-glx.so.0 => /usr/lib/i386-linux-gnu/libxcb-glx.so.0 (0xf73f7000)
 libxcb-dri2.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri2.so.0 (0xf73f1000)
 libxcb-dri3.so.0 => /usr/lib/i386-linux-gnu/libxcb-dri3.so.0 (0xf73ed000)
 libxcb-present.so.0 => /usr/lib/i386-linux-gnu/libxcb-present.so.0 (0xf73e9000)
 libxcb-sync.so.1 => /usr/lib/i386-linux-gnu/libxcb-sync.so.1 (0xf73e1000)
 libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf73bf000)
 libxshmfence.so.1 => /usr/lib/i386-linux-gnu/libxshmfence.so.1 (0xf73bc000)
 libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xf73b6000)
 libdrm.so.2 => /usr/lib/i386-linux-gnu/libdrm.so.2 (0xf73a9000)
 libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf738c000)
 libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7387000)
 /lib/ld-linux.so.2 (0xf77b6000)
 libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf7383000)
 libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf737c000)

Revision history for this message
Alberto Milone (albertomilone) wrote :

This looks wrong:
libGL.so.1 => /usr/lib/i386-linux-gnu/mesa/libGL.so.1 (0xf772c000)

as it should really point to the NVIDIA library. No wonder it doesn't work.

Please attach the output of the following command:

update-alternatives --display i386-linux-gnu_gl_conf

Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote : Re: [Bug 1307466] Re: nvidia-prime problems with steam

On 04/16/2014 01:00 PM, Alberto Milone wrote:
> This looks wrong:
> libGL.so.1 => /usr/lib/i386-linux-gnu/mesa/libGL.so.1 (0xf772c000)
>
> as it should really point to the NVIDIA library. No wonder it doesn't
> work.
>
> Please attach the output of the following command:
>
> update-alternatives --display i386-linux-gnu_gl_conf
>

#update-alternatives --display i386-linux-gnu_gl_conf
i386-linux-gnu_gl_conf - manual mode
   link currently points to /usr/lib/nvidia-331/alt_ld.so.conf
/usr/lib/i386-linux-gnu/mesa/ld.so.conf - priority 500
   slave i386-linux-gnu_xorg_extra_modules:
/usr/lib/i386-linux-gnu/xorg/x11-extra-modules
/usr/lib/nvidia-331-prime/alt_ld.so.conf - priority 8603
/usr/lib/nvidia-331/alt_ld.so.conf - priority 8604
Current 'best' version is '/usr/lib/nvidia-331/alt_ld.so.conf'.

Revision history for this message
Alberto Milone (albertomilone) wrote :

The alternatives seem to be fine.

What's the output of the following command?

ldconfig -p | grep -i gl | grep -v x86-64

Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote :

sure

ldconfig -p | grep -i gl | grep -v x86-64
 libxcb-glx.so.0 (libc6) => /usr/lib/i386-linux-gnu/libxcb-glx.so.0
 libnvidia-glsi.so.331.38 (libc6) => /usr/lib32/nvidia-331/libnvidia-glsi.so.331.38
 libnvidia-glcore.so.331.38 (libc6) => /usr/lib32/nvidia-331/libnvidia-glcore.so.331.38
 libglib-2.0.so.0 (libc6) => /lib/i386-linux-gnu/libglib-2.0.so.0
 libglapi.so.0 (libc6) => /usr/lib/i386-linux-gnu/libglapi.so.0
 libQtOpenGL.so.4 (libc6) => /usr/lib/i386-linux-gnu/libQtOpenGL.so.4
 libGLU.so.1 (libc6) => /usr/lib/i386-linux-gnu/libGLU.so.1
 libGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/mesa/libGL.so.1
 libGL.so.1 (libc6) => /usr/lib32/nvidia-331/libGL.so.1
 libGL.so (libc6) => /usr/lib32/nvidia-331/libGL.so

Revision history for this message
Alberto Milone (albertomilone) wrote :

It looks like a misconfiguration issue (something is interfering and ldconfig finds the mesa library before NVIDIA's).

Please attach the output of the following commands:

1) ls /etc/modprobe.d/*
2) grep -i nvidia /etc/modprobe.d/*
3) grep -i mesa /etc/modprobe.d/*

Revision history for this message
Samuele Giovanni Tonon (samu-linuxasylum) wrote :

doh, since you mentioned ldconfig looking for mesa libs before nvidia i checked out my /etc/ld.so.conf.d/
and found, it's my fault:

i had a conf file named steam.conf with

/usr/lib32
/usr/lib/i386-linux-gnu/mesa
/usr/lib/i386-linux-gnu/dri
/usr/lib/i386-linux-gnu/gallium-pipe

inside .

removing that file and running ldconfig again as root solved the problem

it was a PEBKAC issue :-(

Thank you for your support

Cheers
Samuele

Revision history for this message
Alberto Milone (albertomilone) wrote :

No problem ;)

Changed in nvidia-prime (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Frieder Bluemle (frieder-bluemle) wrote :

I had a similar issue and this thread helped me to resolve it.

For me it was a symlink in /etc/ld.so.conf.d/
i386-linux-gnu_GL.conf -> /etc/alternatives/i386-linux-gnu_gl_conf
The file contained some mesa directory reference which caused Steam to fail at startup.

Steps to fix:
sudo unlink i386-linux-gnu_GL.conf
sudo ldconfig

Thanks.

Revision history for this message
Hari Seldon (hari-seldon972) wrote :

Thanks, #13 solution resolved my problem which occured apparently after upgrade to ubuntu 15.04

Revision history for this message
sabby (sabby) wrote :

Also wanted to thank #13, no idea how this happened on my 14.04 system but it did, saved me a lot of searching.

Revision history for this message
Giambo (ggiambo) wrote :

After spending hours looking for a solution, this thread helped me !
Just removed /etc/ld.so.conf.d/steam.conf and run ldconfig, everything now is OK !

Using Ubuntu 15.04 (Linux Mint 17.2)

Revision history for this message
zachtmartin (zachtmartin) wrote :

Here's one of the errors I was getting when trying to load up steam:

libgl error: failed to load driver: swrast

After much searching this hidden thread saved the day. I deleted the steam.conf file as in #11 and then ran ldconfig. Fixed! Thanks to all over a year later.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.