1
0
Fork 0
linux/tools/testing/selftests/zram
Daniel Baumann 79d69e5050
Adding upstream version 6.12.33.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-22 12:14:28 +02:00
..
config Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
Makefile Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
README Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
zram.sh Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
zram01.sh Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
zram02.sh Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00
zram_lib.sh Adding upstream version 6.12.33. 2025-06-22 12:14:28 +02:00

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_ZPOOL=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