Xgl/Xglx: initialize_visual_and_buffer: Assertion `v- >BitsPerPixel > 0' failed.

Christian Parpart trapni at gentoo.org
Tue Jan 10 23:34:42 PST 2006


On Tuesday 10 January 2006 16:50, Brian Paul wrote:
> Ben Skeggs wrote:
> > Am Freitag, den 06.01.2006, 11:12 -0700 schrieb Brian Paul:
> >>Christopher Bayliss wrote:
> >>>Christian Parpart wrote:
> >>>>Hi all,
> >>>>
> >>>>after having finally(!) compiled and installed the xserver from very
> >>>> recent CVS state, I were curious on Xgl/Xglx but when invoking them I
> >>>> get the following:
> >>>>
> >>>>trapni at battousai /opt/sandbox/fdo/bin $ ./Xgl :1
> >>>>Xgl:
> >>>> /home/trapni/src/Xorg/xserver/../Mesa//src/mesa/drivers/x11/xm_api.c:1
> >>>>223: initialize_visual_and_buffer: Assertion `v->BitsPerPixel > 0'
> >>>> failed. Aborted
> >>>>
> >>>>trapni at battousai /opt/sandbox/fdo/bin $ ./Xglx :1 -ac -screen 800x600
> >>>>Xglx:
> >>>> /home/trapni/src/Xorg/xserver/../Mesa//src/mesa/drivers/x11/xm_api.c:1
> >>>>223: initialize_visual_and_buffer: Assertion `v->BitsPerPixel > 0'
> >>>> failed. Aborted
> >>>>
> >>>>I ran this within my current X session.
> >>>>Any idea on why this is happening?
> >>>
> >>>I don't know what's happening but I had the same problem. Xgl appears to
> >>>work just fine if you comment the line out and recompile. It appears to
> >>>be a check on the requested colour depth of the output screen.
> >>>Alternatively, could try defining a colour depth when calling Xgl.
> >>
> >>Could someone provide a stack trace?
> >
> > I see the same problem here. AMD64, Xgl build from xserver cvs.
>
> This might be a symptom of a bug else where in the server code.  I'm
> adding a few new assertions to the Mesa code.  Can you grab the latest
> from CVS and try again?
>
> Here's the patch:
>
> diff -r1.97 xm_api.c
> 255a256
>
>  >    assert(depth > 0);

in my case: assertion failed

> 1565a1567
>
>  >    assert(visinfo->nplanes > 0);

in my case: assertion failed

Though, I just ran into the first assert(depth > 0) you made, because
I #if'd the assert(visinfo->nplanes > 0) out.

However, I managed to get a running Xglx and Xgl by doing the following:

Index: GL/mesa/X/xf86glx.c
===================================================================
RCS file: /cvs/xserver/xserver/GL/mesa/X/xf86glx.c,v
retrieving revision 1.10
diff -u -r1.10 xf86glx.c
--- GL/mesa/X/xf86glx.c 5 Jan 2006 12:01:25 -0000       1.10
+++ GL/mesa/X/xf86glx.c 11 Jan 2006 07:28:25 -0000
@@ -1435,7 +1435,7 @@
            if (pVis->class == pGLXVis->class &&
                (pVis->nplanes == (pGLXVis->bufferSize - pGLXVis->alphaSize)
 #ifdef COMPOSITE
-                || (pVis->nplanes == pGLXVis->bufferSize)
+                && (pVis->nplanes == pGLXVis->bufferSize)
 #endif
                    ) && !used[j]) {

I'm really not perfectly sure about wether this actually is the fix or not,
I at least got a window displayed *and* could run enlightenment/fluxbox in it.

However, when running xcompmgr (with/without -cC/-cCfF) I got *lots* of 
artifacts when moving windows around.
Though, I felt really very very sad about, because I couldn't await to profit 
from the GL backed X server :(

I'm running glitz,Mesa,xserver,etc all from CVS on a Gentoo Linux AMD64 box.

Regards,
Christian Parpart.
-------------- 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/20060111/d5584f77/attachment.pgp>


More information about the xorg mailing list