glxgears: couldn't get an RGB, Double-buffered visual ?
clotho67 at gmail.com
Tue Apr 8 15:25:29 PDT 2008
Jens Stroebel wrote:
> While trying to take a look at the current state of affairs in git HEAD,
> I got:
> Error: couldn't get an RGB, Double-buffered visual
> from glxgears.
> All xorg parts (libs, server, xf86-video-intel, mesa, drm) from git
> checkout of today (2008-04-08), linux kernel 22.214.171.124
> Is this being looked into already or should I file a (mesa-) bug?
I have run into this problem as well. After some debug, I find that
driConfigEqual used by both glXChooseVisual and glXChooseFBConfig have
some problems. As Ben Gamari pointed out that driConfigEqual don't take
care about GLX_DONT_CARE.
When called by glXChooseFBConfig, driConfigEqual will return GL_FALSE
caused by comparing yInverted (it is not being send out by xserver, and
default set to GLX_DONT_CARE).
When driConfigEqual is called by glXChooseVisual, it will return
GL_FALSE caused by comparing bindToTextureRgb, bindToTextureRgba,
bindToMipmapTexture, yInverted and bindToTextureTargets.
The first four are set to the default value GLX_DONT_CARE and
bindToTextureTargets are set to default value 0 (I don't know why this
different from other), because they are not being send to client by
xserver. I think these five attributes should not be compared for
XVisual, as they are not send to client by __glXDisp_GetVisualConfigs.
And yInverted is also should not be used as a compare attribute, as it
never send to client by both __glXDisp_GetVisualConfigs and DoGetFBConfigs.
So may be these attribute need sent to client from both
__glXDisp_GetVisualConfigs and DoGetFBConfigs or we should just ignore
them in driConfigEqual. Here is a patch to make glxinfo and glxgears
work, but I have no idea whether it is correct.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
More information about the xorg