aboutsummaryrefslogtreecommitdiffstats
path: root/package/system/zram-swap/files/zram.init
Commit message (Collapse)AuthorAgeFilesLines
* zram-swap: bail out early if the kernel doesn't support swapRui Salvaterra2021-04-031-0/+5
| | | | | | | | Since KERNEL_SWAP is only enabled by default for !SMALL_FLASH targets, we need to check if the current kernel supports swap before trying to configure zram-swap, as opkg can't check for kernel dependencies. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* zram-swap: remove the compression streams settingsRui Salvaterra2020-12-131-15/+0
| | | | | | | | | Zram switched to per-cpu compression streams since Linux 4.7 [1]. Drop the irrelevant configuration (no-op). [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/block/zram?h=v4.7&id=43209ea2d17aae1540d4e28274e36404f72702f2 Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* zram-swap: use new extra_command wrapperFlorian Eckert2020-11-021-3/+2
| | | | | | Use new `extra_command` wrapper to fix the alignement. Signed-off-by: Florian Eckert <fe@dev.tdt.de>
* zram-swap: explicitly use mkswap/swapon/swapoff from /sbinRui Salvaterra2020-09-201-9/+9
| | | | | | | | | | | | | The required BusyBox applets are enabled by default, so we can rely on them being present in the system. This way, we make sure there are no conflicts with less featured variants of these same applets which might also be present in the system. Fixes: 0bd7dfa3ed60 ("zram-swap: enable swap discard") Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [wrap commit description] Signed-off-by: David Bauer <mail@david-bauer.net>
* zram-swap: default to lzo instead of lzo-rle compressionRui Salvaterra2020-09-171-2/+3
| | | | | | | | | | | | | | | | | | | On devices with small amounts of RAM, zram-swap fails to initialise due to the default compression algorithm (lzo-rle). Startup example on an AirGrid M2, with 32 MiB of RAM: root@airgrid:/etc/config# /etc/init.d/zram start zram_start: activating '/dev/zram0' for swapping (13 MegaBytes) zram_reset: enforcing defaults via /sys/block/zram0/reset sh: write error: Out of memory mkswap: image is too small swapon: /dev/zram0: Invalid argument root@airgrid:/etc/config# Fix this by defaulting to traditional lzo, which works fine and is always available. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* treewide: replace `which` with `command -v`Paul Spooren2020-08-121-3/+3
| | | | | | | | | | | | | | | | | Fix shellcheck SC2230 > which is non-standard. Use builtin 'command -v' instead. Using `command -v` is POSIX compliant while `which` is not. Also to mention, `command -v` is a shell builtin whereas `which` is a separate busybox applet. Once applied to everything concerning OpenWrt we can disable the busybox feature `which` and save 3.8kB. Acked-by: Stijn Tintel <stijn@linux-ipv6.be> Signed-off-by: Paul Spooren <mail@aparcar.org> [also replace cases in zram-swap] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* zram-swap: enable swap discardRui Salvaterra2020-07-111-1/+1
| | | | | | | | | | | Zram block devices have supported trim/discard for over six years, let's enable it. This allows the zram device to actually free up allocated memory when it's marked as unused in the filesystem metadata, as explained in more detail in the original commit message [1]. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/block/zram/zram_drv.c?h=linux-4.14.y&id=f4659d8e620d08bd1a84a8aec5d2f5294a242764 Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* zram-swap: init: replace backticks with $()Rui Salvaterra2020-06-301-4/+4
| | | | | | | | This replaces deprecated backticks by more versatile $(...) syntax. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com> [add commit description] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* zram-swap: support swap priorityMaxim Storchak2020-01-151-1/+3
| | | | | | | | If zram-backed swap is added after an existing swap, it gets a lower priority. Assiming that usually all other swaps are slower, there should be a way to assign a higher priority to zram swap. Signed-off-by: Maxim Storchak <m.storchak@gmail.com>
* zram-swap: Add extra commands for status/compactionEmil Muratov2019-07-071-21/+34
| | | | | | | | | This patch adds two new commands: zram status - shows memory stats for all zram swaps zram compaction - trigger compaction for all zram swaps Signed-off-by: Emil Muratov <gpm@hotplug.ru> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* zram-swap: Add zram compaction and statistics info outputEmil Muratov2019-07-071-1/+57
| | | | | | | | | Executing '/etc/init.d/zram start' during runtime (with a swap being already mounted) triggers zram device compaction and prints out nice stats info about zram memory usage Signed-off-by: Emil Muratov <gpm@hotplug.ru> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [use IEC's MiB unit]
* zram-swap: Add "max compression streams" configuration optionEmil Muratov2018-09-291-0/+14
| | | | | | | | | | Config option to limit maximum compression streams per zram dev for multicore CPU's. This could be defined via 'zram_comp_streams' option in the 'system' section of '/etc/config/system' file or via cli (for e.x. with 'uci set system.@System[0].zram_comp_streams=2 && uci commit system'). Default is number of logical CPU cores. Signed-off-by: Emil Muratov <gpm@hotplug.ru>
* zram-swap: fix number of created zram devices for multicore CPU'sEmil Muratov2018-09-291-45/+29
| | | | | | | | | Use only one zram swap device of the specified $size instead of [N x $size] devices for multicore CPUs Now zram module uses multiple compression streams for each dev by default, so we do not need to create several zram devs to utilize multicore CPUs. Signed-off-by: Emil Muratov <gpm@hotplug.ru>
* zram-swap: fix zram dev reset for multicore cpu devicesEmil Muratov2018-09-291-12/+10
| | | | | | | | | | * "zram stop" could reset up to $(num_of_cores) zram devices even if some of those were not mounted as swap dev's. This fix tries to enumerate mounted swap zram dev's before making a reset * remove hot-added zram devs on stop (except zram0) Signed-off-by: Emil Muratov <gpm@hotplug.ru>
* zram-swap: compression algorithm configuration optionEmil Muratov2018-09-291-0/+18
| | | | | | | | | | | | Compression algorithms for zram are provided by kernel crypto API, could be any of [lzo|zl4|deflate|<some_more>] depending on kernel modules. Compress algo for zram-swap could be defined via 'zram_comp_algo' option in 'system' section of '/etc/config/system' file, or via cli (for e.x. with 'uci set system.@System[0].zram_comp_algo=lz4 && uci commit system'). check available algo's via 'cat /sys/block/zram0 /comp_algorithm' Signed-off-by: Emil Muratov <gpm@hotplug.ru>
* zram-swap: Shell cosmeticSamuel Casa2018-09-241-4/+4
| | | | Signed-off-by: Samuel Casa <samuel.casa@neratec.com>
* zram-swap: remove trailing whitespaces in init scriptSamuel Casa2018-09-241-2/+2
| | | | | | Signed-off-by: Samuel Casa <samuel.casa@neratec.com> [slightly reword subject] Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* zram-swap: CONFIG_PROCD_ZRAM_TMPFS compatibilityConn O'Griofa2016-09-051-2/+11
| | | | | | | | Enable CONFIG_PROCD_ZRAM_TMPFS compatibility via two changes to list_cpu_idx(): * detect if /tmp is being used by /dev/zram0; if yes, offset initial value by 1 to skip first zram device. * hot-add /dev/zram1, if not already present. Signed-off-by: Conn O'Griofa >connogriofa@gmail.com>
* packages: clean up the package folderJohn Crispin2013-06-211-0/+123
Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 37007