mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-17 20:10:49 +00:00
With zswap using zsmalloc directly, there are no more in-tree users of this code. Remove it. With zpool gone, zsmalloc is now always a simple dependency and no longer something the user needs to configure. Hide CONFIG_ZSMALLOC from the user and have zswap and zram pull it in as needed. Link: https://lkml.kernel.org/r/20250829162212.208258-3-hannes@cmpxchg.org Signed-off-by: Johannes Weiner <hannes@cmpxchg.org> Acked-by: SeongJae Park <sj@kernel.org> Acked-by: Yosry Ahmed <yosry.ahmed@linux.dev> Cc: Chengming Zhou <zhouchengming@bytedance.com> Cc: Nhat Pham <nphamcs@gmail.com> Cc: Vitaly Wool <vitaly.wool@konsulko.se> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
zram: Compressed RAM based block devices ---------------------------------------- * Introduction The zram module creates RAM based block devices named /dev/zram<id> (<id> = 0, 1, ...). Pages written to these disks are compressed and stored in memory itself. These disks allow very fast I/O and compression provides good amounts of memory savings. Some of the usecases include /tmp storage, use as swap disks, various caches under /var and maybe many more :) Statistics for individual zram devices are exported through sysfs nodes at /sys/block/zram<id>/ Kconfig required: CONFIG_ZRAM=y CONFIG_CRYPTO_LZ4=y CONFIG_ZSMALLOC=y ZRAM Testcases -------------- zram_lib.sh: create library with initialization/cleanup functions zram.sh: For sanity check of CONFIG_ZRAM and to run zram01 and zram02 Two functional tests: zram01 and zram02: zram01.sh: creates general purpose ram disks with ext4 filesystems zram02.sh: creates block device for swap Commands required for testing: - bc - dd - free - awk - mkswap - swapon - swapoff - mkfs/ mkfs.ext4 For more information please refer: kernel-source-tree/Documentation/admin-guide/blockdev/zram.rst