All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv2 0/9] zsmalloc/zram: configurable zspage size
@ 2022-10-26 11:29 Sergey Senozhatsky
  2022-10-26 11:29 ` [PATCHv2 1/9] zram: add size class equals check into recompression Sergey Senozhatsky
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Sergey Senozhatsky @ 2022-10-26 11:29 UTC (permalink / raw)
  To: Andrew Morton, Minchan Kim
  Cc: Nitin Gupta, linux-kernel, linux-mm, Sergey Senozhatsky

	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
classes, improving compactness of the pool and redusing the
amount of memory zsmalloc pool uses. More on this in 0001
commit message.

v2:
-- Cherry picked a patch from Alexey (minor code tweaks to move
   it ahead of this series)
-- zsmalloc does not require anymore pages-per-zspage limit to be a
   pow of 2 value, and overall doesn't use "order" any longer
-- zram does not require "zspage order" (pow of 2) value anymore
   and instead accepts an integer in [1,16] range
-- There is no global huge_class_size in zsmalloc anymore.
   huge_class_size is per-pool, since it depends on pager-per-zspage,
   which can be different for different pools.
-- There is no global huge_class_size in zram anymore. It should
   be per-pool (per-device).
-- Updated documentation
-- Fixed documentation htmldocs warning (Stephen)
-- Dropped get_pages_per_zspage() patch
-- Renamed zram sysfs knob (device attribute)
-- Re-worked "synthetic test" section in the first commit: more numbers,
   objects distribution analysis, etc.

Alexey Romanov (1):
  zram: add size class equals check into recompression

Sergey Senozhatsky (8):
  zsmalloc: turn zspage order into runtime variable
  zsmalloc: move away from page order defines
  zsmalloc: make huge class watermark zs_pool member
  zram: huge size watermark cannot be global
  zsmalloc: pass limit on pages per-zspage to zs_create_pool()
  zram: add pages_per_pool_page device attribute
  Documentation: document zram pages_per_pool_page attribute
  zsmalloc: break out of loop when found perfect zspage order

 Documentation/admin-guide/blockdev/zram.rst |  38 +++++--
 drivers/block/zram/zram_drv.c               |  63 +++++++++--
 drivers/block/zram/zram_drv.h               |   7 ++
 include/linux/zsmalloc.h                    |  14 ++-
 mm/zsmalloc.c                               | 114 +++++++++++++-------
 5 files changed, 178 insertions(+), 58 deletions(-)

-- 
2.38.0.135.g90850a2211-goog


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-10-26 11:31 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-26 11:29 [PATCHv2 0/9] zsmalloc/zram: configurable zspage size Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 1/9] zram: add size class equals check into recompression Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 2/9] zsmalloc: turn zspage order into runtime variable Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 3/9] zsmalloc: move away from page order defines Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 4/9] zsmalloc: make huge class watermark zs_pool member Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 5/9] zram: huge size watermark cannot be global Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 6/9] zsmalloc: pass limit on pages per-zspage to zs_create_pool() Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 7/9] zram: add pages_per_pool_page device attribute Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 8/9] Documentation: document zram pages_per_pool_page attribute Sergey Senozhatsky
2022-10-26 11:29 ` [PATCHv2 9/9] zsmalloc: break out of loop when found perfect zspage order Sergey Senozhatsky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.