[Intel-gfx] [PATCH] EXA pixmap management support (for GTT mapping)

Jesse Barnes jbarnes at virtuousgeek.org
Mon Oct 27 21:38:46 CET 2008


On Monday, October 27, 2008 1:33 pm Eric Anholt wrote:
> On Wed, 2008-10-22 at 15:22 -0700, Jesse Barnes wrote:
> > On Wednesday, October 22, 2008 3:18 pm Jesse Barnes wrote:
> > > On Wednesday, October 22, 2008 3:07 pm Jesse Barnes wrote:
> > > > This is a rough patch I've been testing the GTT mapping support with.
> > > >  It basically converts the i830 EXA code to doing its own pixmap
> > > > management, and makes the driver assume that the kernel will take
> > > > care of setting up fence registers for GTT mapped objects (pinned
> > > > objects included).
> > > >
> > > > Something in the conversion broke render accel, but I haven't found
> > > > what yet; could definitely be kernel related given the list
> > > > management trouble I've got in the GTT mapping patch.
> > > >
> > > > Anyway I'm open to suggestions on this patch, how to clean it up,
> > > > etc.  I think it's about time to remove XAA support now...
> > >
> > > Ugg, w/o word wrapping this time.
> >
> > Sigh.  Make it build too (that'll teach me to add a few cleanups w/o
> > building before sending out).
>
> A couple notes:

Excellent, thanks for checking it out.

> EXA minor 1.4 means that we require server 1.5 it looks like.  I'm not
> sure if we're ready for that.
>
> It looks like you won't break XAA+rotation, for what it's worth.  If we
> can avoid the server 1.5 requirement for EXA, I'd really like to see us
> drop XAA at this point.  It's not like it really works on newer
> hardware, anyway.  And if we could unifdef EXA, I'd be even happier --
> it really makes a mess of a bunch of our code.

Yeah I think that's reasonable.  Supporting <1.5 should be possible, I'll have 
to build an old X server and make sure this supports it.

> It'll certainly break 965 render accel since it's not using
> OUT_RELOC_PIXMAP.  cworth's working on getting that ready, but I don't
> want to see this patch land until then.

Ah, that's what I was missing.  Yeah definitely this would depend on Carl's 
work.

> In non-GEM, BO-pixmaps mode, i830_memory.c needs to stop allocating the
> EXA offscreen space and allocate that as pixmap space instead (if you
> scaled the size down a bit at the same time, I definitely wouldn't
> complain -- it should probably be a function of aperture size rather
> than screen virtual).

You mean removing the if (!pI830->memory_manager) and making it always use the 
libdrm interfaces whether GEM or no?  Yeah that shouldn't be too hard; I'll 
fix up the size while I'm at it, maybe I can allocate it last and just use 
some of the remaining space.  That would help with some of our low memory 
configurations.

> Other than that this seems like good stuff, and I'm glad you wrote it.
> Being able to compare EXA and UXA will be very useful.

Great, thanks.

-- 
Jesse Barnes, Intel Open Source Technology Center




More information about the Intel-gfx mailing list