On Sat, Mar 01, 2003 at 04:56:18PM -0800, Jon Smirl wrote:
> --- Linus Torvalds <[EMAIL PROTECTED]> wrote:
> > A simpler, more direct, infrastructure to the
> > low-level driver might help. 
> 
> X has served us well for a long time but I just don't
> think it is sufficient to be the standard video
> platform for desktop Linux over the next ten years.
> We're not going to replace X overnight, but we need a
> path to slowly evolve it. I am amazed at the rate of
> change in the kernel, but X hardly seems to change at
> all. How can we speed things up?
> 
> I agree that X is very complicated to work on. Mozilla
> has the same problem, everything is connected to
> everything. There is no way to work on a piece of
> Mozilla without working on the whole thing. Mozilla is
> trying to fix this but they still have a long ways to
> go.

What are you speaking about ? X is pretty simple to do a driver for, it
is well documented, there are multiple examples around and you have only
to provide a few functions to have it working fine.

As opposed to this, the DRI is quite complex. You have to first write
the X driver initialization code, which include context swapping, and
then the drm kernel drivers. Both of these really are somewhat complex
things, and you can't really test them until you have the mesa drivers
in place, and these are a nightmare to do, or even to understand how
they work. And looking at the existing code is not much of a help, since
they are huge.

> For me, a layered approach where each piece can be
> compiled, used and tested independently would make X
> much more manageable.  Something like this:

Yes, but it is not X that is the problem, it is the DRI, for X, things
are quite simple. You follow the DESIGN document, you first set up the
frambuffer code, and can already see info from X, then you do the mode
switching, and finally the 2D accel stuff. In each of these phases, you
get immediate feedback from X. And even Xv support is easy to test.

> Kernel level - fusion of DRM and FB, libDRM
> OpenGL - Mesa + DRI
> Xserver
> rest of X
> 
> I'm sure people with more experience on X can divide
> it in a better way, but the key is in dividing it into
> smaller, more digestible chunks. These layers need to
> build and run independently.
> 
> The DRI tree has close to 10,000 files in it right now
> and DRI isn't even a complete X tree. That's an awful
> lot of code to read and understand as a single
> package. 

But if you only look at the X drivers, they are quite small, and well
documented.

Friendly,

Sven Luther


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to