opengl over ssh randomly working on debian

Hi all,

Here is the setup

::Shared Workstation::
OS: Debian stable
GC: 2x Nvidia GTX 970
Driver: Nvidia 361.28

Then we have several machines connecting on this via ssh -X

From a debian testing machine running a Quadro K600 card and same nvidia drivers, here is the result of glewinfo

glewinfo

X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  24
  Current serial number in output stream:  25

in my ldd listing I have

# ldd /usr/bin/glxinfo
	linux-gate.so.1 (0xf7793000)
	libGLEW.so.1.10 => /usr/lib/i386-linux-gnu/libGLEW.so.1.10 (0xf7709000)
	libGLU.so.1 => /usr/lib/i386-linux-gnu/libGLU.so.1 (0xf7695000)
	libGL.so.1 => /usr/lib/i386-linux-gnu/libGL.so.1 (0xf7585000)
	libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf753f000)
	libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf73ed000)
	libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xf73d8000)
	libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf722b000)
	libXmu.so.6 => /usr/lib/i386-linux-gnu/libXmu.so.6 (0xf7212000)
	libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xf71ff000)
	libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf710d000)
	libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf70f0000)
	libnvidia-tls.so.361.28 => /usr/lib/i386-linux-gnu/tls/libnvidia-tls.so.361.28 (0xf70eb000)
	libnvidia-glcore.so.361.28 => /usr/lib/i386-linux-gnu/libnvidia-glcore.so.361.28 (0xf4e65000)
	libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf4e60000)
	/lib/ld-linux.so.2 (0xf7796000)
	libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf4e3a000)
	libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xf4dd3000)
	libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf4dcf000)
	libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf4dc8000)
	libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xf4dbe000)
	libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xf4da1000)
	libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf4d9b000)

and the libGL is pointing in the good place

# ls -l /usr/lib/i386-linux-gnu/libGL.so.1
lrwxrwxrwx 1 root root 15 Feb 15 13:11 /usr/lib/i386-linux-gnu/libGL.so.1 -> libGL.so.361.28

I tried different drivers, from nvidia website and from debian repository, on both machines, there is no way to run any opengl related stuffs.
Same if we try from another debian stable machine with more-less the same configuration !

Then from an old debian running an old Quadro and running 349.xx drivers everything is working fine, we can confirm it in the glewinfo output

GLEW version 1.10.0
Reporting capabilities of display localhost:12.0, visual 0x2b
Running on a Quadro 600/PCIe/SSE2 from NVIDIA Corporation
OpenGL version 2.1.2 NVIDIA 349.16 is supported

But when he runs “glxinfo” the Glx Rendering option if “off”

Anyway, is there something special to do to fix this issue ? I’m a bit lost with this stuff

Thanks in advance !

Hi again,

I did some tests this morning with 2 identical machines.
They are both running the same hardware and running the same Debian stable (I did clone the hdd and just changed IP address and hostname).

There is no way to ssh -X from one to the other and run any openGL related software. I can run xclock without problem but when I try glewinfo I got

# glewinfo 
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  19
  Current serial number in output stream:  20

The thing which annoys me is that it was working fine with all the wheezy “clients” and right after the dist-upgrade to jessie things went wrong.

For the moment I installed VirtualGL to bypass the problem but it could be cool to sort that stuff :-)

Any idea ?

Thanks!

See: https://bugs.freedesktop.org/show_bug.cgi?id=93820#c3
“Apparently Xorg 1.17 disables indirect GLX by default. Try starting the X server with +iglx.”

Thanks !
Fook, I spent hours on this problem just for a +iglx switch :-)