On Mon, Jan 31, 2005 at 07:27:51PM -0500, David Dawes wrote:
> On Mon, Jan 31, 2005 at 09:20:06AM +0000, Alan Hourihane wrote:
> >On Sun, Jan 30, 2005 at 08:11:38PM -0500, David Dawes wrote:
> >> Has anyone tried DRI on an i810 with the current tree?  I get a
> >> ring buffer lockup almost immediately after running glxgears.  This
> >> is with the current i810 DRM module built and loaded against an
> >> otherwise stock 2.4.24 kernel.
> > 
> >I've not tried it for a while, but I might be able to give it a go.
> 
> I'm also getting lockups with the i810 in 2D with DRI not enabled on at
> least one system.  I haven't narrowed this down yet.

I think this is down to the change I made moving LpRing to an allocated
structure.

The patch below should correct things.

Alan.

Index: i810_driver.c
===================================================================
RCS file: 
/home/x-cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c,v
retrieving revision 1.109
diff -u -r1.109 i810_driver.c
--- i810_driver.c       9 Jan 2005 20:47:19 -0000       1.109
+++ i810_driver.c       1 Feb 2005 20:11:01 -0000
@@ -2069,6 +2069,13 @@
    pI810 = I810PTR(pScrn);
    hwp = VGAHWPTR(pScrn);
 
+   pI810->LpRing = xcalloc(sizeof(I810RingBuffer),1);
+   if (!pI810->LpRing) {
+     xf86DrvMsg(pScrn->scrnIndex, X_ERROR, 
+               "Could not allocate lpring data structure.\n");
+     return FALSE;
+   }
+   
    miClearVisualTypes();
 
    /* Re-implemented Direct Color support, -jens */
@@ -2487,6 +2494,9 @@
     */
    xf86GARTCloseScreen(scrnIndex);
 
+   xfree(pI810->LpRing);
+   pI810->LpRing = NULL;
+
    pScrn->vtSema = FALSE;
    pScreen->CloseScreen = pI810->CloseScreen;
    return (*pScreen->CloseScreen) (scrnIndex, pScreen);
_______________________________________________
Devel mailing list
[email protected]
http://XFree86.Org/mailman/listinfo/devel

Reply via email to