libdrm issues blocking accelerated indirect GL
Adam Jackson
ajax at nwnk.net
Fri Dec 31 10:54:11 PST 2004
On Friday 31 December 2004 06:04, Michel Dänzer wrote:
> On Thu, 2004-12-30 at 14:20 -0500, Adam Jackson wrote:
> > - Option 3: Move libdrm from the DRI drivers into libGL (dlopen linkage)
> > Pros: Minimal server impact. New libdrm could be shared between client
> > and server. With a little cleverness [2], doesn't break the libGL/driver
> > ABI, so drivers and libGLs from both sides of the change can be mixed
> > freely.
>
> How would this work with an old libGL and a new driver?
Ack, it doesn't. Good catch. The only way would be
LD_PRELOAD=/usr/lib/libdrm.so, but that's not acceptable. Since the drivers
are opened RTLD_NOW there's no chance for the driver to detect this, and the
scenario assumes no changes to libGL. However the LIBGL_DEBUG message would
almost certainly mention a missing drm symbol, which might be good enough if
we add it to the (desperately in need of cleanup) troubleshooting FAQ.
That may be a sacrifice I'm willing to make. People using releases would get
matching sets. Even people building DRI drivers from Mesa will always get
matching sets. If the snapshots (wherever they live now) don't include libGL
in the driver pack, they probably should.
For options 1-3, totally switching this over may be an X11R7 kind of thing
where we break APIs in the name of progress. However...
> Otherwise, this sounds best to me, or option 5 maybe.
I think I'm leaning towards options 4 or 5, as having minimal impact now. In
the future we'd link the server against libdrm (or the drivers, in a dlloader
world) and ignore Load statements for drm and GLcore. (dexconf generates
config files with explicit load statements for drm and GLcore, even though it
shouldn't.) By that point libdrm would have a canonical location in the
filesystem, so it would be a true shared object.
All of this really makes me want to revive debrix-extensions-glx. Hacking
this stuff from within the monolith is such a hassle.
- ajax
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg/attachments/20041231/47a0bf01/attachment.pgp>
More information about the xorg
mailing list