Zheng Liu wrote:
Hi all, Recently we meet a performance regression about mmaped page. When we upgrade our product system from 2.6.18 kernel to a latest kernel, such as 2.6.32 kernel, we will find that mmaped pages are reclaimed very quickly. We found that when we hit a minor fault mark_page_accessed() is called in 2.6.18 kernel, but in 2.6.32 kernel we don't call mark_page_accesed(). This means that mmaped pages in 2.6.18 kernel are activated and moved into active list. While in 2.6.32 kernel mmaped pages are still kept in inactive list. So my question is why we call mark_page_accessed() in 2.6.18 kernel, but don't call it in 2.6.32 kernel. Has any reason here?
Behavior was changed in commit v2.6.28-6130-gbf3f3bc "mm: don't mark_page_accessed in fault path" Please see also commits v3.2-4876-g34dbc67 "vmscan: promote shared file mapped pages" and v3.2-4877-gc909e99 "vmscan: activate executable pages after first usage". Probably they can solve some of your problems.
Thanks in advance, - Zheng -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email:<a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx</a>
-- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>