提交 85d492f2 编写于 作者: M Minchan Kim 提交者: Linus Torvalds

zsmalloc: expand class bit

Now 64K page system, zsamlloc has 257 classes so 8 class bit is not
enough.  With that, it corrupts the system when zsmalloc stores
65536byte data(ie, index number 256) so that this patch increases class
bit for simple fix for stable backport.  We should clean up this mess
soon.

  index	size
  0	32
  1	288
  ..
  ..
  204	52256
  256	65536

Fixes: 3783689a ("zsmalloc: introduce zspage structure")
Link: http://lkml.kernel.org/r/1492042622-12074-3-git-send-email-minchan@kernel.orgSigned-off-by: NMinchan Kim <minchan@kernel.org>
Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 d72e9a7a
...@@ -276,7 +276,7 @@ struct zs_pool { ...@@ -276,7 +276,7 @@ struct zs_pool {
struct zspage { struct zspage {
struct { struct {
unsigned int fullness:FULLNESS_BITS; unsigned int fullness:FULLNESS_BITS;
unsigned int class:CLASS_BITS; unsigned int class:CLASS_BITS + 1;
unsigned int isolated:ISOLATED_BITS; unsigned int isolated:ISOLATED_BITS;
unsigned int magic:MAGIC_VAL_BITS; unsigned int magic:MAGIC_VAL_BITS;
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册