From: Maxim Storchak <m.storchak@gmail.com>
Date: Thu, 9 Jan 2020 18:27:44 +0000 (+0200)
Subject: zram-swap: support swap priority
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=5f07b6f367ff10ecc029e0b9e41b9fc5eac6968e;p=openwrt%2Fstaging%2Fblogic.git

zram-swap: support swap priority

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

diff --git a/package/system/zram-swap/Makefile b/package/system/zram-swap/Makefile
index bcada98a813f..ee5e85927f9c 100644
--- a/package/system/zram-swap/Makefile
+++ b/package/system/zram-swap/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=zram-swap
 PKG_VERSION:=1.1
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
 
diff --git a/package/system/zram-swap/files/zram.init b/package/system/zram-swap/files/zram.init
index ae432f3b0031..49140ad40658 100755
--- a/package/system/zram-swap/files/zram.init
+++ b/package/system/zram-swap/files/zram.init
@@ -172,6 +172,8 @@ start()
 	local zram_size="$( zram_getsize )"
 	local zram_dev="$( zram_getdev )"
 	zram_applicable "$zram_dev" || return 1
+	local zram_priority="$( uci -q get system.@system[0].zram_priority )"
+	zram_priority=${zram_priority:+-p $zram_priority}
 
 	logger -s -t zram_start -p daemon.debug "activating '$zram_dev' for swapping ($zram_size MegaBytes)"
 
@@ -180,7 +182,7 @@ start()
 	zram_comp_streams "$zram_dev"
 	echo $(( $zram_size * 1024 * 1024 )) >"/sys/block/$( basename "$zram_dev" )/disksize"
 	mkswap "$zram_dev"
-	swapon "$zram_dev"
+	swapon $zram_priority "$zram_dev"
 }
 
 stop()