On Sun, 21 Nov 2010 23:30:24 +0900 Minchan Kim <minchan.kim@xxxxxxxxx> wrote: > Now zap_pte_range alwayas promotes pages which are pte_young && > !VM_SequentialReadHint(vma). But in case of calling MADV_DONTNEED, > it's unnecessary since the page wouldn't use any more. > > If the page is sharred by other processes and it's real working set This patch doesn't actually do anything. It passes variable `promote' all the way down to unmap_vmas(), but unmap_vmas() doesn't use that new variable. Have a comment fixlet: --- a/mm/memory.c~mm-prevent-promotion-of-page-in-madvise_dontneed-fix +++ a/mm/memory.c @@ -1075,7 +1075,7 @@ static unsigned long unmap_page_range(st * @end_addr: virtual address at which to end unmapping * @nr_accounted: Place number of unmapped pages in vm-accountable vma's here * @details: details of nonlinear truncation or shared cache invalidation - * @promote: whether pages inclued vma would be promoted or not + * @promote: whether pages included in the vma should be promoted or not * * Returns the end address of the unmapping (restart addr if interrupted). * _ Also, I'd suggest that we avoid introducing the term "promote". It isn't a term which is presently used in Linux MM. Probably "activate" has a better-known meaning. And `activate' could be a bool if one is in the mood for that. -- 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/ . Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>