Hello, Some use-cases and/or data patterns may benefit from larger zspages. Currently the limit on the number of physical pages that are linked into a zspage is hardcoded to 4. Higher limit changes key characteristics of a number of the size clases, improving compactness of the pool and redusing the amount of memory zsmalloc pool uses. For instance, the huge size class watermark is currently set to 3264 bytes. With order 3 zspages we have more normal classe and huge size watermark becomes 3632. With order 4 zspages huge size watermark becomes 3840. Commit #1 has more numbers and some analysis. Sergey Senozhatsky (6): zsmalloc: turn zspage order into runtime variable zsmalloc/zram: pass zspage order to zs_create_pool() zram: add pool_page_order device attribute Documentation: document zram pool_page_order attribute zsmalloc: break out of loop when found perfect zspage order zsmalloc: make sure we select best zspage size Documentation/admin-guide/blockdev/zram.rst | 31 +++++-- drivers/block/zram/zram_drv.c | 44 ++++++++- drivers/block/zram/zram_drv.h | 2 + include/linux/zsmalloc.h | 15 +++- mm/zsmalloc.c | 98 +++++++++++++-------- 5 files changed, 145 insertions(+), 45 deletions(-) -- 2.38.0.135.g90850a2211-goog