[PATCH] add EXA relocation function

Jesse Barnes jbarnes at virtuousgeek.org
Mon Dec 10 12:01:24 PST 2007


On Monday, December 10, 2007 11:01 Kristian Høgsberg wrote:
> On Dec 10, 2007 4:18 AM, Michel Dänzer <michel at tungstengraphics.com> 
wrote:
> > On Fri, 2007-12-07 at 13:33 -0800, Jesse Barnes wrote:
> > > In order to avoid having a fixed offset for the EXA offscreen
> > > area (which is nice if the driver is using TTM) drivers need to
> > > update the base offset of EXA memory in EnterVT, and may need to
> > > update any private pointers they've allocated as well (e.g. for
> > > the cursor or scanout buffers, etc.).
> > >
> > > Since the server already kicks out all the pixmaps at VT switch
> > > time, the relocation is trivial and will typically just involve
> > > the one, big free area and any locked driver allocations; this
> > > function reflects that.
> > >
> > > One possible enhancement would be to call back into a driver
> > > provided function to update the private allocations, but it
> > > wouldn't really save any code...
> > >
> > > Any thoughts on this?
> >
> > I'm not sure it's really worth it, compared to using the existing
> > CreatePixmap hook for allocating pixmaps from a generic memory
> > manager such as TTM in the first place. Is there anything the
> > latter can't do that the former can?
>
> I'm curious too, I thought we were going to use one BO per pixmap.
> Redirected direct rendering and texturing from pixmap both requires a
> BO per pixmap to work.

Initially I was thinking there'd be a compatibility motivation for this 
(i.e. new driver on old kernel) but I don't think that's really a 
concern, so yeah it's probably not worth it.

Jesse



More information about the xorg mailing list