mm: vmscan: do not use page_count without a page pin
authorAndrea Arcangeli <[email protected]>
Wed, 15 Jun 2011 22:08:51 +0000 (15:08 -0700)
committerLinus Torvalds <[email protected]>
Thu, 16 Jun 2011 03:04:02 +0000 (20:04 -0700)
commitd179e84ba5da1d0024087d1759a2938817a00f3f
tree169c9cc4030a793df1bc29613eff85ee3acef9a9
parent7454f4ba40b419eb999a3c61a99da662bf1a2bb8
mm: vmscan: do not use page_count without a page pin

It is unsafe to run page_count during the physical pfn scan because
compound_head could trip on a dangling pointer when reading
page->first_page if the compound page is being freed by another CPU.

[[email protected]: split out patch]
Signed-off-by: Andrea Arcangeli <[email protected]>
Signed-off-by: Mel Gorman <[email protected]>
Reviewed-by: Michal Hocko <[email protected]>
Reviewed-by: Minchan Kim <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
mm/vmscan.c