Messages in this thread | | | Subject | Re: DRM code reorganization | From | Alan Cox <> | Date | Mon, 02 Aug 2004 19:16:59 +0100 |
| |
On Llu, 2004-08-02 at 19:57, Dave Jones wrote: > > The problem is that each driver has different needs based on hardware > > functionality. > > How does this differ from any other subsystem that supports > cards with features that may not be present in another model ? > Other subsystems have dealt with this problem without the need > to introduce horrors like the abstractions in DRM.
The abstractions are one big mistake IMHO. But in context their origin is easy to understand. The original goal was to support a lot of platforms and to minimise code writing. The Mesa layer uses this kind of templating a lot and for the 3D client side code its a real win.
Someone I think took them a stage too far and into a place that it didn't work out.
The memory manager is a bit more complex, a lot of drivers do have different needs for memory management and some of it has to be client side. Its also a really really hot path when doing direct render.
> > AFAIK, the only drivers that have any sort of in-kernel memory manager > > are the radeon (only used by the R200 driver) and i830. > > ISTR SiS has some memory management code too, though I've not looked > too closely at that for a long time.
SiS and VIA do as well. Both of them overdo the kernel side work and it hurts performance however.
Alan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |