Discussion:
server GLX version: GLX 1.3, GLX 1.4
Martin Walch
2009-05-09 12:56:20 UTC
Permalink
Hello list,

when trying to run some Java code with j3d, I got the error message that glx
1.3 is needed, but only glx 1.2 is available. As I do not know much about glx,
I made some online searches and read that the supported GLX version is shown
by glxinfo and is the minimum of "client glx version string" and "server glx
version string". glxinfo says on my system


server glx vendor string: SGI
server glx version string: 1.2

client glx vendor string: SGI
client glx version string: 1.4

GLX version: 1.2


(X.Org 7.4 with xf86-video-intel 2.7.0, libX11 1.1.5 (no xcb) and Mesa 7.4.1)

I tried looking into the code of Mesa and X.Org, to find out where the server
version string comes from, but I do not know enough about X11 and GLX. Can you
tell me what the server glx version depends on (in general)?

Thank you in advance.
Martin Walch
Roland Scheidegger
2009-05-11 14:29:55 UTC
Permalink
Post by Martin Walch
Hello list,
when trying to run some Java code with j3d, I got the error message that glx
1.3 is needed, but only glx 1.2 is available. As I do not know much about glx,
I made some online searches and read that the supported GLX version is shown
by glxinfo and is the minimum of "client glx version string" and "server glx
version string". glxinfo says on my system

server glx vendor string: SGI
server glx version string: 1.2

client glx vendor string: SGI
client glx version string: 1.4

GLX version: 1.2

(X.Org 7.4 with xf86-video-intel 2.7.0, libX11 1.1.5 (no xcb) and Mesa 7.4.1)
I tried looking into the code of Mesa and X.Org, to find out where the server
version string comes from, but I do not know enough about X11 and GLX. Can you
tell me what the server glx version depends on (in general)?
The server glx version doesn't really depend on anything, it is
hardcoded as 1.2 (in glxserver.h, also see extension string in
glxscreen.c). This can be found in xserver/glx. I can't remember
off-hand what's missing in the code for higher versions (maybe pbuffer
support)?.

Roland
Jeremy Huddleston
2009-05-11 19:24:12 UTC
Permalink
Post by Roland Scheidegger
Post by Martin Walch
Hello list,
when trying to run some Java code with j3d, I got the error message that glx
1.3 is needed, but only glx 1.2 is available. As I do not know much about glx,
I made some online searches and read that the supported GLX version is shown
by glxinfo and is the minimum of "client glx version string" and "server glx
version string". glxinfo says on my system

server glx vendor string: SGI
server glx version string: 1.2

client glx vendor string: SGI
client glx version string: 1.4

GLX version: 1.2

(X.Org 7.4 with xf86-video-intel 2.7.0, libX11 1.1.5 (no xcb) and Mesa 7.4.1)
I tried looking into the code of Mesa and X.Org, to find out where the server
version string comes from, but I do not know enough about X11 and GLX. Can you
tell me what the server glx version depends on (in general)?
The server glx version doesn't really depend on anything, it is
hardcoded as 1.2 (in glxserver.h, also see extension string in
glxscreen.c). This can be found in xserver/glx. I can't remember
off-hand what's missing in the code for higher versions (maybe pbuffer
support)?.
1.3 added:

glXChooseFBConfig
glXGetFBConfigAttrib
glXGetFBConfigs
glXGetVisualFromFBConfig
glXCreateWindow
glXDestroyWindow
glXCreatePixmap
glXDestroyPixmap
glXCreatePbuffer
glXDestroyPbuffer
glXQueryDrawable
glXCreateNewContext
glXMakeContextCurrent
glXGetCurrentReadDrawable
glXQueryContext
glXSelectEvent
glXGetSelectedEvent

1.4 added:
glXGetProcAddress
Martin Walch
2009-05-12 02:18:20 UTC
Permalink
Post by Jeremy Huddleston
Post by Roland Scheidegger
Post by Martin Walch
Hello list,
when trying to run some Java code with j3d, I got the error message that glx
1.3 is needed, but only glx 1.2 is available. As I do not know much about glx,
I made some online searches and read that the supported GLX version is shown
by glxinfo and is the minimum of "client glx version string" and "server glx
version string". glxinfo says on my system

server glx vendor string: SGI
server glx version string: 1.2

client glx vendor string: SGI
client glx version string: 1.4

GLX version: 1.2

(X.Org 7.4 with xf86-video-intel 2.7.0, libX11 1.1.5 (no xcb) and Mesa 7.4.1)
I tried looking into the code of Mesa and X.Org, to find out where the server
version string comes from, but I do not know enough about X11 and GLX. Can you
tell me what the server glx version depends on (in general)?
The server glx version doesn't really depend on anything, it is
hardcoded as 1.2 (in glxserver.h, also see extension string in
glxscreen.c). This can be found in xserver/glx. I can't remember
off-hand what's missing in the code for higher versions (maybe pbuffer
support)?.
glXChooseFBConfig
glXGetFBConfigAttrib
glXGetFBConfigs
glXGetVisualFromFBConfig
glXCreateWindow
glXDestroyWindow
glXCreatePixmap
glXDestroyPixmap
glXCreatePbuffer
glXDestroyPbuffer
glXQueryDrawable
glXCreateNewContext
glXMakeContextCurrent
glXGetCurrentReadDrawable
glXQueryContext
glXSelectEvent
glXGetSelectedEvent
glXGetProcAddress
Thank you for your replys. Is there any chance to see server side support for
GLX 1.3/1.4 soon? I found an article on Phoronix saying that GLX 1.4 support
was planned for xorg-server 1.5:

http://www.phoronix.com/scan.php?page=news_item&px=NjA4OA
Jeremy Huddleston
2009-05-12 04:41:39 UTC
Permalink
Post by Martin Walch
Thank you for your replys. Is there any chance to see server side support for
GLX 1.3/1.4 soon? I found an article on Phoronix saying that GLX 1.4 support
Yeah, it was added to xorg-server-1.5 ... so update your server, and
you should be good to go.
Martin Walch
2009-05-12 17:10:46 UTC
Permalink
Post by Jeremy Huddleston
Post by Martin Walch
Thank you for your replys. Is there any chance to see server side support for
GLX 1.3/1.4 soon? I found an article on Phoronix saying that GLX 1.4 support
Yeah, it was added to xorg-server-1.5 ... so update your server, and
you should be good to go.
I'm afraid not. I have updated to xorg-server-1.6.1.901, but glxinfo still
reports GLX 1.2. Also, in glxserver.h the define in line 70 is

#define GLX_SERVER_MINOR_VERSION 2

and in glxscreen.c I see in line 165

static char GLXServerVersion[] = "1.2";

It is the same in master:
http://cgit.freedesktop.org/xorg/xserver/tree/glx/glxserver.h
http://cgit.freedesktop.org/xorg/xserver/tree/glx/glxscreens.c

Do these two entries need to be changed?
Ian Romanick
2009-05-14 21:27:01 UTC
Permalink
Post by Martin Walch
Hello list,
when trying to run some Java code with j3d, I got the error message that glx
1.3 is needed, but only glx 1.2 is available. As I do not know much about glx,
I made some online searches and read that the supported GLX version is shown
by glxinfo and is the minimum of "client glx version string" and "server glx
version string". glxinfo says on my system

server glx vendor string: SGI
server glx version string: 1.2

client glx vendor string: SGI
client glx version string: 1.4

GLX version: 1.2

(X.Org 7.4 with xf86-video-intel 2.7.0, libX11 1.1.5 (no xcb) and Mesa 7.4.1)
I tried looking into the code of Mesa and X.Org, to find out where the server
version string comes from, but I do not know enough about X11 and GLX. Can you
tell me what the server glx version depends on (in general)?
Sorry for taking so long to reply.

What is needed is a way for the server's GLX code to determine what
features are supported by the 3D driver that is loaded in the server.
If the driver doesn't support the required feature set, we have to
expose GLX 1.2. If it does support the required feature set, we can
expose GLX 1.4. There is code to do this on the client side, but it's
not clear to me how to adapt it to the server.

It's a project that has been on my to-do list for some months, but it
keeps getting bumped by other things.
Martin Walch
2009-05-16 10:57:56 UTC
Permalink
Post by Ian Romanick
Sorry for taking so long to reply.
What is needed is a way for the server's GLX code to determine what
features are supported by the 3D driver that is loaded in the server.
If the driver doesn't support the required feature set, we have to
expose GLX 1.2. If it does support the required feature set, we can
expose GLX 1.4. There is code to do this on the client side, but it's
not clear to me how to adapt it to the server.
It's a project that has been on my to-do list for some months, but it
keeps getting bumped by other things.
So I suppose there is not much I can do about it without getting into X.Org
programming?

Loading...