Commit be22aece authored by Hugh Dickins's avatar Hugh Dickins Committed by Linus Torvalds

memcg: revert fix to mapcount check for this release

Respectfully revert commit e6ca7b89 "memcg: fix mapcount check
in move charge code for anonymous page" for the 3.3 release, so that
it behaves exactly like releases 2.6.35 through 3.2 in this respect.

Horiguchi-san's commit is correct in itself, 1 makes much more sense
than 2 in that check; but it does not go far enough - swapcount
should be considered too - if we really want such a check at all.

We appear to have reached agreement now, and expect that 3.4 will
remove the mapcount check, but had better not make 3.3 different.
Signed-off-by: default avatarHugh Dickins <hughd@google.com>
Reviewed-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent a7f4255f
...@@ -5075,7 +5075,7 @@ static struct page *mc_handle_present_pte(struct vm_area_struct *vma, ...@@ -5075,7 +5075,7 @@ static struct page *mc_handle_present_pte(struct vm_area_struct *vma,
return NULL; return NULL;
if (PageAnon(page)) { if (PageAnon(page)) {
/* we don't move shared anon */ /* we don't move shared anon */
if (!move_anon() || page_mapcount(page) > 1) if (!move_anon() || page_mapcount(page) > 2)
return NULL; return NULL;
} else if (!move_file()) } else if (!move_file())
/* we ignore mapcount for file pages */ /* we ignore mapcount for file pages */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment