diff --git a/zram.conf b/zram.conf index bff45ba..27f54fb 100644 --- a/zram.conf +++ b/zram.conf @@ -1,4 +1,2 @@ -# The factor determines the ratio 1/n of RAM to allocate to the ZRAM block device, where FACTOR = n. +# The factor is the percentage of total system RAM to allocate to the ZRAM block device(s). FACTOR=2 - -PRIORITY=1000 diff --git a/zram.spec b/zram.spec index 4c775a1..2611c4c 100644 --- a/zram.spec +++ b/zram.spec @@ -1,9 +1,8 @@ Name: zram -Version: 0.4 -Release: 10%{?dist} +Version: 0.2 +Release: 1%{?dist} Summary: ZRAM for swap config and services for Fedora -# Automatically converted from old format: GPLv2+ - review is highly recommended. -License: GPL-2.0-or-later +License: GPLv2+ # No upstream as it's Fedora specific. Source0: COPYING @@ -54,39 +53,6 @@ install -pm 0755 %{SOURCE4} %{buildroot}%{_sbindir} %{_sbindir}/zramstop %changelog -* Fri Jul 25 2025 Fedora Release Engineering - 0.4-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sun Jan 19 2025 Fedora Release Engineering - 0.4-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Fri Jul 26 2024 Miroslav Suchý - 0.4-8 -- convert license to SPDX - -* Sat Jul 20 2024 Fedora Release Engineering - 0.4-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sat Jan 27 2024 Fedora Release Engineering - 0.4-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jul 22 2023 Fedora Release Engineering - 0.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jan 21 2023 Fedora Release Engineering - 0.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Jul 23 2022 Fedora Release Engineering - 0.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Jan 22 2022 Fedora Release Engineering - 0.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jun 26 2019 Peter Robinson 0.4-1 -- General improvements (Chris Murphy) - -* Sat Nov 24 2018 Peter Robinson 0.3-1 -- Add support for swap priority - * Thu Jul 19 2018 Peter Robinson 0.2-1 - Service ordering fixes, minor cleanup diff --git a/zramstart b/zramstart index f6a05e6..ed5d2e5 100755 --- a/zramstart +++ b/zramstart @@ -2,24 +2,21 @@ #set -x # default factor of 1/3 of RAM factor=3 -# default priority is maximum priority -priority=32767 [ -f /etc/zram.conf ] && source /etc/zram.conf || true -[ -z "$FACTOR" ] || factor=$FACTOR -[ -z "$PRIORITY" ] || priority=$PRIORITY +factor=$FACTOR # Calculate ZRAM size mem_total=$(free -w |grep "^Mem" |awk '{printf("%d",$2)}') zram_size=$((${mem_total} / ${factor} /1024)) -# ZRAM in recent kernels is multithreaded so we don't need to balance across CPUs +# zram in recent kernels is multitreaded so we don't need to balance across CPUs modprobe -q zram num_devices=1 # Create ZRAM with first device, lz4 algorithm zramdev=$(zramctl --find --algorithm lz4 --size ${zram_size}MB 2>&1) # The above returns the device. Use it below mkswap $zramdev -swapon -p $priority $zramdev +swapon $zramdev # Investigate this and swapiness # echo 0 > /proc/sys/vm/page-cluster diff --git a/zramstop b/zramstop index 0777797..42eea41 100755 --- a/zramstop +++ b/zramstop @@ -1,5 +1,10 @@ #!/bin/sh for i in $(grep '^/dev/zram' /proc/swaps | awk '{ print $1 }'); do - swapoff "$i" && zramctl --reset "$i" + swapoff "$i" done + +if grep -q "^zram " /proc/modules; then + sleep 1 + rmmod zram +fi