[PATCH xserver 06/13] glx: Enable GLX_SGI_make_current_read in the core

Adam Jackson ajax at redhat.com
Wed Mar 30 13:58:10 UTC 2016


On Wed, 2016-03-30 at 12:12 +0100, Emil Velikov wrote:
> On 23 March 2016 at 22:46, Adam Jackson <ajax at redhat.com> wrote:
> > diff --git a/glx/glxdri2.c b/glx/glxdri2.c
> > index c56a376..71dab2a 100644
> > --- a/glx/glxdri2.c
> > +++ b/glx/glxdri2.c
> > @@ -900,13 +900,6 @@ initializeExtensions(__GLXDRIscreen * screen)
> >      }
> > 
> >      for (i = 0; extensions[i]; i++) {
> > -        if (strcmp(extensions[i]->name, __DRI_READ_DRAWABLE) == 0) {
> > -            __glXEnableExtension(screen->glx_enable_bits,
> > -                                 "GLX_SGI_make_current_read");
> > -
> > -            LogMessage(X_INFO, "AIGLX: enabled GLX_SGI_make_current_read\n");
> > -        }
> > -
> Afaics we never had a DRI2 based dri module that provided this
> extension. Which brings the question if this has ever been tested and
> confirmed working. Can we have a small note about this in the commit
> message ?

Not quite. I am dismayed to report that piglit does not appear to
contain any tests for separate drawable and readable, so whether this
has been tested, who knows. And you are correct (and I'm somewhat
surprised to discover) that Mesa currently does not expose this
extension. But it used to:

https://cgit.freedesktop.org/mesa/mesa/commit/?id=ad3221587164c10ae16d85db514484b717cabc6f

GLX 1.3 implies equivalent functionality, spelled glXMakeContextCurrent
instead of glXMakeCurrentReadSGI. The dispatch for both the extension
and 1.3 versions of the interface has remained wired up in xserver, and
note that the bindContext call down to the driver _always_ takes both
drawable and readable arguments regardless of which Make*Current*
request triggered it.

So I don't think this is making anything any worse.

- ajax


More information about the xorg-devel mailing list