Re: [PATCH 3/3] [RFC] tmpfs: Add FALLOC_FL_MARK_VOLATILE/UNMARK_VOLATILEhandlers

From: John Stultz
Date: Mon Jun 11 2012 - 21:24:01 EST


On 06/11/2012 11:35 AM, John Stultz wrote:
On 06/10/2012 02:47 PM, Rik van Riel wrote:
On 06/08/2012 11:45 PM, John Stultz wrote:

I *think* ideally, the pages in a volatile range should be similar to
non-dirty file-backed pages. There is a cost to restore them, but
freeing them is very cheap. The trick is that volatile ranges introduces

Easier to mark them dirty.

a new relationship between pages. Since the neighboring virtual pages in
a volatile range are in effect tied together, purging one effectively
ruins the value of keeping the others, regardless of which zone they are
physically.

Then the volatile ->writepage function can zap the whole
object.


What about the concern that if we don't have swap, we'll not call writepage on tmpfs files?

So actually, a more concrete question might be: What is the value of the active/inactive split of anonymous memory on a system without swap?

Basically I'm looking at trying to allow the writepage function to zap the range as you suggest, but also changing the behavior when there is no swap so that all anonymous pages stay active, unless they are volatile. Then, in both cases with swap and without, we would still shrink the inactive list, call writepage and zap the volatile ranges. Its just without swap, the only anonymous pages on the inactive list would be volatile.

Does that make any sense?

Hopefully will have a hackish patch to demonstrate what I'm describing tomorrow.

thanks
-john

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