Re: [PATCH 34/49] gma500: the GEM and GTT code is device independant

From: Konrad Rzeszutek Wilk
Date: Mon Sep 12 2011 - 19:19:33 EST


On Mon, Jul 11, 2011 at 10:49:31AM -0700, Hugh Dickins wrote:
> On Mon, 11 Jul 2011, Alan Cox wrote:
> > > Your <4GB pages won't get swapped out while they're pinned. But can
> > > it happen that they'd be unpinned, swapped out, swapped back in >4GB
> > > pages, then cause trouble for you when needed again?
> >
> > It does look that way, in which case that will eventually need fixing. At
> > the moment you can't put enough memory into a device using these chips
> > but that won't always be true I imagine.
>
> Thanks, I won't worry about it at this moment, but we'd better not forget.

I recall seeing the GMA driver using the TTM at some point
(but then those calls disappared), and I've written a patch to deal with
a similar issue (where the DMA and the virtual address needed to
be passed along to the code that programs the cards MMU).

It also survives suspend/resume, swap, etc.

https://lkml.org/lkml/2011/8/30/460

Don't know if it would be too complicated to make the GMA500 code
use TTM, and the URL I posted still needs a review, but perhaps
that could solve this problem in the future for you guys?

>
> If it's easy for you to include a WARN_ON_ONCE check (perhaps
> on page_to_pfn(page)), that may be worth doing to remind us.
>
> It's a bit sad to learn this requirement just after I'd completed
> removing the readpage copying code, and a bit strange to have shmem
> confined by hardware constraints; but I guess that's what we took on
> when we opened it up to GEM.
>
> It will probably make sense for me to add synchronous migration when
> a shmem swap page is found not to match the contraints wanted by the
> mapping it goes into: mainly for NUMA, but covering your case too.
>
> Hugh
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/