[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kwin
Subject:    Re: Available extensions list (was Re: XaaNoOffscreenPixmaps)
From:       Philip Falkner <philip.falkner () gmail ! com>
Date:       2006-11-22 2:38:25
Message-ID: 200611212138.25539.philip.falkner () gmail ! com
[Download RAW message or body]

On Tuesday 21 November 2006 16:37, Lubos Lunak wrote:
> On Tuesday 21 November 2006 20:55, Philip Falkner wrote:
> > As of r606773 TFP still doesn't work here without the attached patch.
> > glXQueryExtensionsString() will never have GLX_EXT_texture_from_pixmap
> > here, but glXQueryServerString() will, and, from the way I understand
> > things, the server string should be what matters with indirect rendering.
>
>  That sucks and, at least theoretically, it doesn't look right, from the
> docs I get the feeling that glXQueryExtensionsString() should always do :-/
> . Beryl does the same but even the latest Compiz doesn't and I'd be
> somewhat inclined to trust Dave Reveman more when it gets to such things.
> Does Compiz work for you with the same setup? If yes and it's using the
> same libGL then this is probably just a workaround for something.
>
>  Looking at your glxinfo which lists GLX_EXT_texture_from_pixmap in both
> client and server strings but not in what glXQueryExtensionsString() says
> I'd try to blame your Mesa, but it looks recent enough :-/. Also, IIRC, at
> work with ATI+AIGLX KWin detected TFP just fine, I'll check again.

Hm.  On the one hand, you're right about how it's supposed to work.  But here, 
GLX_EXT_texture_from_pixmap only shows up in the GLX extensions list when 
AIGLX is enabled and indirect rendering is used.  That might lead to a way of 
checking for AIGLX, actually, but there are issues.

Unfortunately, this isn't indirect rendering based on the current context, not 
exactly anyway.  LIBGL_ALWAYS_INDIRECT=1 is the magic phrase that puts 
the extension in GLX's extension list, making it show up in glxinfo 
(glxinfo -i isn't enough), and making kwin as it stands in svn happily detect 
and use tfp.  Compiz also behaves this way, requiring LIBGL_ALWAYS_INDIRECT.

So, either Mesa is being stupid again, or this is intended behaviour.  If it's 
the first, then kwin is fine as-is, and we just need to change Mesa.  If it's 
the second, how do we imitate LIBGL_ALWAYS_INDIRECT in code?  The beryl-style 
check of server GLX extensions seems to be what they settled on; is there a 
better way?  Or do we need a helper program to run kwin with 
LIBGL_ALWAYS_INDIRECT iff AIGLX is being used?

-- 
Philip Falkner
_______________________________________________
Kwin mailing list
Kwin@kde.org
https://mail.kde.org/mailman/listinfo/kwin
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic