Subject: GLXPixmaps and glXMakeCurrent().
To: None <tech-x11@netbsd.org>
From: Richard Rauch <rkr@olib.org>
List: tech-x11
Date: 03/21/2004 02:54:20
I don't know if this is more of a -current or a tech-x11 issue, but
tech-x11 has lower traffic and probably more people who know their
way around X's internals. (^&
I was starting to experiment with using GLXPixmaps for offscreen
OpenGL rendering. I don't have a trivial example, but may be able
to cobble one together if that will help.
Over the last week, I upgraded my system from a December 18
XFree86 "RC2" source tree to the in-tree 4.4 release that
NetBSD recently imported. And GLXPixmaps seem to be more
or less broken by that.
In addition to now using the (presumably nearly-identical)
4.4 server, another difference is that I had to build
4.4 from the xsrc Makefile (which resulted in a slower-
loading static X server); I believe that previously, I
used the "raw" XFree86 sources and got a dynamic-linked
server for the "4.4RC2". I have not yet tried grabbing
raw 4.4 sources and building a new server with them.
The specific failure is happening on the *second* call to
glXMakeCurrent(). When it fails, the X server dies
with a signal 11.
I have one program compiled on an AMD64 that provokes this.
It crashes the local X server when I run it. It also crashes
my laptop's X server (also 4.4) when I run the program over a
network.
On the other hand, when I run the same program (on the AMD64)
but talk to an X server running on CygWIN (using an install from
around August of last year), the CygWIN server is okay.
I have not (yet) tried building and running the client program
on the i386 laptop to see if there's any chance that that will
make the problem go away. (But the X server shouldn't crash
just because of a bad GLX request. (^&)
I'm not familiar with the X sources, and don't even know if
I should be looking under "xc" or "xfree" to find the correct
set of sources.
Summary:
* A week ago, with what should have been an almost-4.4
X server, this worked. (It is *possible* that I had
reinstalled X from the 4.3 import. X has been a
rough ride with the AMD64 so I've tried a number of
things. But by and large I've tried to stay current
and use NetBSD-imported bits in the name of testing.)
* It kills X in glXMakeCurrent() on a second invocation
(first seems to succeed).
* I used the xsrc/Makefile directly for NetBSD's import,
rather than build.sh.
--
"I probably don't know what I'm talking about." http://www.olib.org/~rkr/