diff --git a/zram.conf b/zram.conf index 27f54fb..bff45ba 100644 --- a/zram.conf +++ b/zram.conf @@ -1,2 +1,4 @@ -# The factor is the percentage of total system RAM to allocate to the ZRAM block device(s). +# The factor determines the ratio 1/n of RAM to allocate to the ZRAM block device, where FACTOR = n. FACTOR=2 + +PRIORITY=1000 diff --git a/zram.spec b/zram.spec index 2611c4c..4c775a1 100644 --- a/zram.spec +++ b/zram.spec @@ -1,8 +1,9 @@ Name: zram -Version: 0.2 -Release: 1%{?dist} +Version: 0.4 +Release: 10%{?dist} Summary: ZRAM for swap config and services for Fedora -License: GPLv2+ +# Automatically converted from old format: GPLv2+ - review is highly recommended. +License: GPL-2.0-or-later # No upstream as it's Fedora specific. Source0: COPYING @@ -53,6 +54,39 @@ 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 ed5d2e5..f6a05e6 100755 --- a/zramstart +++ b/zramstart @@ -2,21 +2,24 @@ #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 -factor=$FACTOR +[ -z "$FACTOR" ] || factor=$FACTOR +[ -z "$PRIORITY" ] || priority=$PRIORITY # Calculate ZRAM size mem_total=$(free -w |grep "^Mem" |awk '{printf("%d",$2)}') zram_size=$((${mem_total} / ${factor} /1024)) -# zram in recent kernels is multitreaded so we don't need to balance across CPUs +# ZRAM in recent kernels is multithreaded 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 $zramdev +swapon -p $priority $zramdev # Investigate this and swapiness # echo 0 > /proc/sys/vm/page-cluster diff --git a/zramstop b/zramstop index 42eea41..0777797 100755 --- a/zramstop +++ b/zramstop @@ -1,10 +1,5 @@ #!/bin/sh for i in $(grep '^/dev/zram' /proc/swaps | awk '{ print $1 }'); do - swapoff "$i" + swapoff "$i" && zramctl --reset "$i" done - -if grep -q "^zram " /proc/modules; then - sleep 1 - rmmod zram -fi