On Wed, May 26, 2010 at 03:41:24PM -0400, Rik van Riel wrote: > Subject: extend KSM refcounts to the anon_vma root > > KSM reference counts can cause an anon_vma to exist after the processe > it belongs to have already exited. Because the anon_vma lock now lives > in the root anon_vma, we need to ensure that the root anon_vma stays > around until after all the "child" anon_vmas have been freed. > > The obvious way to do this is to have a "child" anon_vma take a > reference to the root in anon_vma_fork. When the anon_vma is freed > at munmap or process exit, we drop the refcount in anon_vma_unlink > and possibly free the root anon_vma. > > The KSM anon_vma reference count function also needs to be modified > to deal with the possibility of freeing 2 levels of anon_vma. The > easiest way to do this is to break out the KSM magic and make it > generic. > > When compiling without CONFIG_KSM, this code is compiled out. > > Signed-off-by: Rik van Riel <riel@xxxxxxxxxx> Acked-by: Mel Gorman <mel@xxxxxxxxx> -- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>