Re: missing madvise functionality

From: Andrew Morton
Date: Wed Apr 04 2007 - 16:56:58 EST


On Wed, 04 Apr 2007 14:08:47 -0400
Rik van Riel <riel@xxxxxxxxxx> wrote:

> Andrew Morton wrote:
>
> > There are other ways of doing it - I guess we could use a new page flag to
> > indicate that this is one-of-those-pages, and add new code to handle it in
> > all the right places.
>
> That's what I did. I'm currently working on the
> zap_page_range() side of things.

Let's try to avoid consuming another page flag if poss, please. Perhaps
use PAGE_MAPPING_ANON's neighbouring bit?

> > One thing which we haven't sorted out with all this stuff: once the
> > application has marked an address range (and some pages) as
> > whatever-were-going-call-this-feature, how does the application undo that
> > change?
>
> It doesn't have to do anything. Just access the page and the
> MMU will mark it dirty/accessed and the VM will not reclaim
> it.

um, OK. I suspect it would be good to clear the page's
PageWhateverWereGoingToCallThisThing() state when this happens. Otherwise
when the page gets clean again (ie: added to swapcache then written out)
then it will look awfully similar to one of these new types of pages and
things might get confusing. We'll see.

-
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/