zsmalloc: adjust ZS_ALMOST_FULL
Curretly, zsmalloc regards a zspage as ZS_ALMOST_EMPTY if the zspage has under 1/4 used objects(ie, fullness_threshold_frac). It could make result in loose packing since zsmalloc migrates only ZS_ALMOST_EMPTY zspage out. This patch changes the rule so that zsmalloc makes zspage which has above 3/4 used object ZS_ALMOST_FULL so it could make tight packing. Signed-off-by: Minchan Kim <minchan@kernel.org> Cc: Juneho Choi <juno.choi@lge.com> Cc: Gunho Lee <gunho.lee@lge.com> Cc: Luigi Semenzato <semenzato@google.com> Cc: Dan Streetman <ddstreet@ieee.org> Cc: Seth Jennings <sjennings@variantweb.net> Cc: Nitin Gupta <ngupta@vflare.org> Cc: Jerome Marchand <jmarchan@redhat.com> Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Mel Gorman <mel@csn.ul.ie> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
312fcae227
commit
d3d07c92ff
1 changed files with 1 additions and 1 deletions
|
@ -480,7 +480,7 @@ static enum fullness_group get_fullness_group(struct page *page)
|
|||
fg = ZS_EMPTY;
|
||||
else if (inuse == max_objects)
|
||||
fg = ZS_FULL;
|
||||
else if (inuse <= max_objects / fullness_threshold_frac)
|
||||
else if (inuse <= 3 * max_objects / fullness_threshold_frac)
|
||||
fg = ZS_ALMOST_EMPTY;
|
||||
else
|
||||
fg = ZS_ALMOST_FULL;
|
||||
|
|
Loading…
Reference in a new issue