On Thu, Feb 22, 2024 at 7:56 PM Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote: > > Both zram and zswap are used to reduce memory usage by compressing cold > page, a default compressor algorithm is selected from kinds of compressor > algorithm as the default one from very similar Kconfig, also both of > them could change the algorithm by sysfs interfaces, so unify the > default compressor algorithm to cleanup the default algorithm chosen. Both zswap and zram *can* be used for compressed swap, but zram is a generic block device that has other use cases, see https://docs.kernel.org/admin-guide/blockdev/zram.html. For starters, making zram depend on SWAP may break some of those use cases. Otherwise, I don't immediately see the benefit of unifying the config options for two independent subsystems just because they both use "compression". The reduction of the config options is nice, but in this case I am not sure it's doing more good than harm. Also, most people use either zswap or zram in my experience, so they don't really have to configure both anyway. > > Kefeng Wang (5): > zram: zcomp: remove zcomp_set_max_streams() declaration > zram: make zram depends on SWAP > zram: support deflate compressor > mm: zswap: default to lzo-rle instead of lzo > mm: unify default compressor algorithm for zswap and zram > > Documentation/admin-guide/mm/zswap.rst | 2 +- > arch/loongarch/configs/loongson3_defconfig | 2 +- > drivers/block/zram/Kconfig | 44 +------ > drivers/block/zram/zcomp.c | 3 + > drivers/block/zram/zcomp.h | 1 - > drivers/block/zram/zram_drv.c | 2 +- > mm/Kconfig | 134 +++++++++++---------- > mm/zswap.c | 8 +- > 8 files changed, 83 insertions(+), 113 deletions(-) > > -- > 2.27.0 >