mm/zsmalloc: clarify class per-fullness zspage counts
authorChengming Zhou <chengming.zhou@linux.dev>
Thu, 27 Jun 2024 07:59:58 +0000 (15:59 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 12 Jul 2024 22:52:12 +0000 (15:52 -0700)
commit538148f9ba9e3136a877881e72ccbe56733daae2
treefd398e57ddaae3be87c64393b83b7ca136733c9c
parent81510a0eaa6916c2fbb0b2639f3e617a296979a3
mm/zsmalloc: clarify class per-fullness zspage counts

We always use insert_zspage() and remove_zspage() to update zspage's
fullness location, which will account correctly.

But this special async free path use "splice" instead of remove_zspage(),
so the per-fullness zspage count for ZS_INUSE_RATIO_0 won't decrease.

Clean things up by decreasing when iterate over the zspage free list.

This doesn't actually fix anything.  ZS_INUSE_RATIO_0 is just a
"placeholder" which is never used anywhere.

Link: https://lkml.kernel.org/r/20240627075959.611783-1-chengming.zhou@linux.dev
Signed-off-by: Chengming Zhou <chengming.zhou@linux.dev>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/zsmalloc.c