On Wed, 4 Jun 2003, Ian Romanick wrote:

> John Sheu wrote:
> > Output of gdb on glxinfo:
> > 
> > Starting program: /usr/X11R6/bin/glxinfo
> > (no debugging symbols found)...[New Thread 16384 (LWP 2145)]
> > name of display: :0.0
> > 
> > Program received signal SIGSEGV, Segmentation fault.
> > [Switching to Thread 16384 (LWP 2145)]
> > 0x4046dee5 in driSetTextureSwapCounterLocation (heap=0x0, counter=0x8051c18)
> >     at texmem.c:584
> > 584     texmem.c: No such file or directory.
> >         in texmem.c
> 
> Hmm...looking at the code, my guess is that rmesa->nr_heaps is 2 on Rage 
> 128 even on PCI cards.  In gdb you can 'print rmesa->nr_heaps' to see. 
> You might also try 'print r128scrn->texSize[0]' and (if nr_heaps is 2) 
> 'print r128scrn->texSize[1]'.  Since I don't have a Rage 128, that would 
> help. :)
> 
> Perhaps Leif can take a look at this.
> 
> Note that this has *NOTHING* to do with your libGL.so.  This is 100% in 
> the driver.

nr_heaps should be 1 on PCI cards (see r128CreateScreen() in
r128_screen.c).  However, the DDX will enable DRI even if the local
texture heap size is 0 on a PCI card, which I consider to be a bug (I
changed the mach64 driver to disable DRI if there's not enough mem for a
texture heap).  I also think you'd run into the same problem if there is
no room for a local heap, but there is space for an AGP heap.  In working
on texmem for mach64, I've changed the heap indexes for local/AGP to be
context variables instead of #defines, so that texture_heaps[0] can be AGP
if there is only an AGP heap and no local heap.

I'm pretty sure I ran into this problem on r128 before when I tried
running at 24-bit depth with a high enough resolution.  If this is the
problem, I think you'd see a message like: "Reserved 0 kb for textures at
offset 0x0" in the X log.

Still, I think the drivers should also check the return of 
driCreateTextureHeap() and bail out if it fails.

-- 
Leif Delgass 
http://www.retinalburn.net



-------------------------------------------------------
This SF.net email is sponsored by:  Etnus, makers of TotalView, The best
thread debugger on the planet. Designed with thread debugging features
you've never dreamed of, try TotalView 6 free at www.etnus.com.
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to