On Wed, 2012-07-18 at 15:36 +0100, Chris Wilson wrote:
> On Wed, 18 Jul 2012 10:29:26 -0400, Adam Jackson <a...@redhat.com> wrote:
> > So those should resolve lazily, which means if you never call them they
> > never _need_ to resolve.  And this is how X drivers normally work,
> > notice that libfb isn't loaded _before_ you load your driver but yet the
> > driver loads.
> 
> They were being used by i810_dri.c, so i810 was busted. It just happened
> to be that the first user to spot this was not using i810.

Ennh.  PreInit does:

---
   if (xf86ReturnOptValBool(pI810->Options, OPTION_NOACCEL, FALSE))
      pI810->noAccel = TRUE;

   if (!pI810->noAccel) {
      if (!xf86LoadSubModule(scrn, "xaa")) {
         I810FreeRec(scrn);
         return FALSE;
      }
   }

#ifdef HAVE_DRI1
   pI810->directRenderingDisabled =
     !xf86ReturnOptValBool(pI810->Options, OPTION_DRI, TRUE);

   if (!pI810->directRenderingDisabled) {
     if (pI810->noAccel) {
       xf86DrvMsg(scrn->scrnIndex, X_WARNING, "DRI is disabled because it "
                  "needs 2D acceleration.\n");
       pI810->directRenderingDisabled=TRUE;
     } else if (scrn->depth!=16) {
       xf86DrvMsg(scrn->scrnIndex, X_WARNING, "DRI is disabled because it "
                  "runs only at 16-bit depth.\n");
       pI810->directRenderingDisabled=TRUE;
     }
   }
#endif
---

So we default to asking for XAA, and if it doesn't load (because you
built without it) then neither will the driver; conversely, if XAA
loads, DRI's use of XAA symbols would be safe.  You'd have to have asked
for Option "NoAccel" to hit that bug.

It's not clear to me if, subsequent to your change, DRI would work with
NoAccel.

- ajax

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to