memory hotplug: exclude isolated page from pco page alloc
authorShaohua Li <shaohua.li@intel.com>
Tue, 22 Sep 2009 00:01:17 +0000 (17:01 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 22 Sep 2009 14:17:25 +0000 (07:17 -0700)
commit6fb332fabd7288af9dbe7992394aa6ba97c1a537
tree261fe72f01461d65532730f283108be2306b80b5
parent112067f0905b2de862c607ee62411cf47d2fe5c4
memory hotplug: exclude isolated page from pco page alloc

Pages marked as isolated should not be allocated again.  If such pages
reside in pcp list, they can be allocated too, so there is a ping-pong
memory offline frees some pages to pcp list and the pages get allocated
and then memory offline frees them again, this loop will happen again and
again.

This should have no impact in normal code path, because in normal code
path, pages in pcp list aren't isolated, and below loop will break in the
first entry.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Cc: Mel Gorman <mel@csn.ul.ie>
Cc: Christoph Lameter <cl@linux-foundation.org>
Cc: Yakui Zhao <yakui.zhao@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/page_alloc.c