Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 47f43e7e authored by Andi Kleen's avatar Andi Kleen
Browse files

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: default avatarWu Fengguang <fengguang.wu@intel.com>
Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
parent 0d9ee6a2
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -235,7 +235,7 @@ void shake_page(struct page *p, int access)
		int nr;
		int nr;
		do {
		do {
			nr = shrink_slab(1000, GFP_KERNEL, 1000);
			nr = shrink_slab(1000, GFP_KERNEL, 1000);
			if (page_count(p) == 0)
			if (page_count(p) == 1)
				break;
				break;
		} while (nr > 10);
		} while (nr > 10);
	}
	}