HWPOISON: Stop shrinking at right page count
When we call the slab shrinker to free a page we need to stop at page count one because the caller always holds a single reference, not zero. This avoids useless looping over slab shrinkers and freeing too much memory. Reviewed-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Andi Kleen <ak@linux.intel.com>
This commit is contained in:
parent
0d9ee6a2d4
commit
47f43e7efa
|
@ -235,7 +235,7 @@ void shake_page(struct page *p, int access)
|
|||
int nr;
|
||||
do {
|
||||
nr = shrink_slab(1000, GFP_KERNEL, 1000);
|
||||
if (page_count(p) == 0)
|
||||
if (page_count(p) == 1)
|
||||
break;
|
||||
} while (nr > 10);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue