[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Suggestion

>> Branden Robinson <branden@debian.org> writes:

 > I'm still apprehensive about moving *_dri.so out of
 > /usr/X11R6/lib/modules.  If they aren't really X server modules, then
 > they don't belong in that directory (maybe /usr/lib/xlibmesa3 ?).
 > Should I ask upstream?

 I don't understand in what sense the dri modules aren't X server
 modules.  For the case of direct rendering, an application is linked
 against the core GL library, which in talks to the hardware, the
 library part of the DRI or the library part of the DRM.  The DRI talks
 to the DRM or to the X server (via the GLX protocol).  The DRM talks to
 the kernel DRI module, which in turn talks to the hardware.  The X
 server talks to its DRI module (these *_dri.so files) and/or the DRI
 driver on the X server, which talks to the hardware.  The DRI module on
 the X server also talks to the kernel DRI module via the DRM library.

 This is also pretty much what happens for the case of a 2D application:
 the application talks to the Xlib which encodes the requests and sends
 them to the X server, which decodes them and passes whatever is
 appropiate to the XAA module which talks to the hardware.

 For indirect rendering, the application talks to the X server via the
 GLX protocol (there's no library talking to the hardware in this case).
 The server decodes the GLX requests and renders them appropriately
 (which means either via a software renderer, or a hw accelerated one).

 I'm not sure about the *current* DRI implementation (which is a shame,
 because *this* is the counter argument), but I *think* there's no hw
 acceleration for the indirect case.  This means, the dri modules have
 to be shipped with the X server package, not with the GL library



Reply to: