Hi,

On 6/21/21 9:54 PM, Rui Salvaterra wrote:
Instead of assuming /sbin contains the correct BusyBox symlinks, directly invoke
the busybox executable. The required utilities are guaranteed to be present,
since the zram-swap package selects them. Additionally, don't assume busybox
resides in /bin, rely on PATH to find it.

While at it, update the copyright year, use SPDX and switch to AUTORELEASE.

Signed-off-by: Rui Salvaterra <rsalvate...@gmail.com>
---
v2: update the copyright year, use SPDX and switch to AUTORELEASE.

  package/system/zram-swap/Makefile        |  9 ++----
  package/system/zram-swap/files/zram.init | 39 ++++++------------------
  2 files changed, 13 insertions(+), 35 deletions(-)

diff --git a/package/system/zram-swap/Makefile 
b/package/system/zram-swap/Makefile
index 80f87fcdff..d0d1baddd1 100644
--- a/package/system/zram-swap/Makefile
+++ b/package/system/zram-swap/Makefile
@@ -1,14 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-only
  #
-# Copyright (C) 2013 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
+# Copyright (C) 2013-2021 OpenWrt.org
include $(TOPDIR)/rules.mk PKG_NAME:=zram-swap
-PKG_RELEASE:=8
+PKG_RELEASE:=$(AUTORELEASE)
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 d97e85efa5..4c645d6013 100755
--- a/package/system/zram-swap/files/zram.init
+++ b/package/system/zram-swap/files/zram.init
@@ -25,31 +25,6 @@ zram_getsize()       # in megabytes
        fi
  }
-zram_applicable()
-{
-       local zram_dev="$1"
-
-       [ -e "$zram_dev" ] || {
-               logger -s -t zram_applicable -p daemon.crit "[ERROR] device 
'$zram_dev' not found"
-               return 1
-       }
-
-       [ -x /sbin/mkswap ] || {
-               logger -s -t zram_applicable -p daemon.err "[ERROR] 'BusyBox mkswap' 
not installed"
-               return 1
-       }
-
-       [ -x /sbin/swapon ] || {
-               logger -s -t zram_applicable -p daemon.err "[ERROR] 'BusyBox swapon' 
not installed"
-               return 1
-       }
-
-       [ -x /sbin/swapoff ] || {
-               logger -s -t zram_applicable -p daemon.err "[ERROR] 'BusyBox 
swapoff' not installed"
-               return 1
-       }
-}
-
  zram_dev()
  {
        local idx="$1"
@@ -160,8 +135,14 @@ start()
                return 1
        fi
- local zram_size="$( zram_getsize )"
        local zram_dev="$( zram_getdev )"
+
+       [ -e "$zram_dev" ] || {
+               logger -s -t zram_applicable -p daemon.crit "[ERROR] device 
'$zram_dev' not found"
+               return 1
+       }
+
+       local zram_size="$( zram_getsize )"
        zram_applicable "$zram_dev" || return 1
This line should be removed, too.
        local zram_priority="$( uci -q get system.@system[0].zram_priority )"
        zram_priority=${zram_priority:+-p $zram_priority}
@@ -171,8 +152,8 @@ start()
        zram_reset "$zram_dev" "enforcing defaults"
        zram_comp_algo "$zram_dev"
        echo $(( $zram_size * 1024 * 1024 )) >"/sys/block/$( basename "$zram_dev" 
)/disksize"
-       /sbin/mkswap "$zram_dev"
-       /sbin/swapon -d $zram_priority "$zram_dev"
+       busybox mkswap "$zram_dev"
+       busybox swapon -d $zram_priority "$zram_dev"
  }
stop()
@@ -181,7 +162,7 @@ stop()
for zram_dev in $( grep zram /proc/swaps |awk '{print $1}' ); do {
                logger -s -t zram_stop -p daemon.debug "deactivate swap 
$zram_dev"
-               /sbin/swapoff "$zram_dev" && zram_reset "$zram_dev" "claiming memory 
back"
+               busybox swapoff "$zram_dev" && zram_reset "$zram_dev" "claiming 
memory back"
                local dev_index="$( echo $zram_dev | grep -o "[0-9]*$" )"
                if [ $dev_index -ne 0 ]; then
                        logger -s -t zram_stop -p daemon.debug "removing zram 
$zram_dev"

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to