Re: [PATCH 2/9] ksm: let shared pages be swappable

From: Chris Wright
Date: Tue Dec 08 2009 - 20:04:42 EST


* KAMEZAWA Hiroyuki (kamezawa.hiroyu@xxxxxxxxxxxxxx) wrote:
> On Fri, 4 Dec 2009 09:16:40 -0800
> Chris Wright <chrisw@xxxxxxxxxx> wrote:
> > * KAMEZAWA Hiroyuki (kamezawa.hiroyu@xxxxxxxxxxxxxx) wrote:
> > > Hmm, can't we use ZERO_PAGE we have now ?
> > > If do so,
> > > - no mapcount check
> > > - never on LRU
> > > - don't have to maintain shared information because ZERO_PAGE itself has
> > > copy-on-write nature.
> >
> > It's a somewhat special case, but wouldn't it be useful to have a generic
> > method to recognize this kind of sharing since it's a generic issue?
>
> I just remembered that why ZERO_PAGE was removed (in past). It was becasue
> cache-line ping-pong at fork beacause of page->mapcount. And KSM introduces
> zero-pages which have mapcount again. If no problems in realitsitc usage of
> KVM, ignore me.

KVM is not exactly fork heavy (although it's not the only possible user
of KSM). And the CoW path has fault + copy already.

Semi-related...it can make good sense to make the KSM trees per NUMA
node. Would mean things like page of zeroes would collapse to number
of NUMA nodes pages rather than a single page, but has the benefit of
not adding remote access (although, probably more useful for text pages
than zero pages).

thanks,
-chris
--
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/