Re: [PATCH] ttm: add pool wc/uc page allocator

From: Jerome Glisse
Date: Fri Jul 17 2009 - 10:56:32 EST


On Fri, 2009-07-17 at 10:01 +0200, Michel DÃnzer wrote:
> On Thu, 2009-07-16 at 18:34 +0200, Jerome Glisse wrote:
> > On Thu, 2009-07-16 at 18:13 +0200, Jerome Glisse wrote:
> > > On AGP system we might allocate/free routinely uncached or wc memory,
> > > changing page from cached (wb) to uc or wc is very expensive and involves
> > > a lot of flushing. To improve performance this allocator use a pool
> > > of uc,wc pages.
> > >
> > > Currently each pool (wc, uc) is 256 pages big, improvement would be
> > > to tweak this according to memory pressure so we can give back memory
> > > to system.
> > >
> > > Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
> > > Signed-off-by: Jerome Glisse <jglisse@xxxxxxxxxx>
> >
> > Just a follow-up on that one, i haven't been able yet to thoroughly
> > test this patch on AGP system, so i am mostly sending so other people
> > can test. I think i corrected few bugs that were in previous iteration
> > of that patch.
> >
> > Beside that i think i have addressed all comment previously raisen,
> > but don't hesitate to pin point any things i have miss.
>
> This one works a little better on my PowerBook than the previous one:
>
> PCI GART works (failed to allocate the ring buffer before)
> AGP fails to allocate the ring buffer (paniced at KMS init before)
>

Attached a new version which more or less work on x86 agp (i have
screen corruption haven't tracked done what is causing it yet).
I corrected more bugs from previous version, hopefully i am getting
closer to somethings which works.

Cheers,
Jerome