From: Alexander Abraham <a.abraham@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH pve-docs v7] fix #5644: Moved the section on swap partitions
Date: Tue, 3 Jun 2025 15:08:54 +0200 [thread overview]
Message-ID: <20250603130854.121129-1-a.abraham@proxmox.com> (raw)
The section on running swap on ZFS was split into two parts.
The part describing setting the swappiness level was moved to a
separate file and the part about creating swap partitions on a ZFS
volume was replaced with a warning about doing so.
Signed-off-by: Alexander Abraham <a.abraham@proxmox.com>
Changes in v7:
* Keep ZFS warning in its original file.
* Corrected some formatting errors.
---
local-zfs.adoc | 49 ++++++++++---------------------------------------
pve-swap.adoc | 35 +++++++++++++++++++++++++++++++++++
sysadmin.adoc | 2 ++
3 files changed, 47 insertions(+), 39 deletions(-)
create mode 100644 pve-swap.adoc
diff --git a/local-zfs.adoc b/local-zfs.adoc
index c64fb27..bfd2295 100644
--- a/local-zfs.adoc
+++ b/local-zfs.adoc
@@ -1,9 +1,10 @@
[[chapter_zfs]]
ZFS on Linux
------------
-ifdef::wiki[]
-:pve-toplevel:
-endif::wiki[]
+
+-ifdef::wiki[]
+-:pve-toplevel:
+-endif::wiki[]
ZFS is a combined file system and logical volume manager designed by
Sun Microsystems. Starting with {pve} 3.4, the native Linux
@@ -620,48 +621,18 @@ time this value changes:
----
You *must reboot* to activate these changes.
-====
+====
[[zfs_swap]]
SWAP on ZFS
~~~~~~~~~~~
-Swap-space created on a zvol may generate some troubles, like blocking the
-server or generating a high IO load, often seen when starting a Backup
-to an external Storage.
-
-We strongly recommend to use enough memory, so that you normally do not
-run into low memory situations. Should you need or want to add swap, it is
-preferred to create a partition on a physical disk and use it as a swap device.
-You can leave some space free for this purpose in the advanced options of the
-installer. Additionally, you can lower the
-``swappiness'' value. A good value for servers is 10:
-
-----
-# sysctl -w vm.swappiness=10
-----
-
-To make the swappiness persistent, open `/etc/sysctl.conf` with
-an editor of your choice and add the following line:
-
---------
-vm.swappiness = 10
---------
-
-.Linux kernel `swappiness` parameter values
-[width="100%",cols="<m,2d",options="header"]
-|===========================================================
-| Value | Strategy
-| vm.swappiness = 0 | The kernel will swap only to avoid
-an 'out of memory' condition
-| vm.swappiness = 1 | Minimum amount of swapping without
-disabling it entirely.
-| vm.swappiness = 10 | This value is sometimes recommended to
-improve performance when sufficient memory exists in a system.
-| vm.swappiness = 60 | The default value.
-| vm.swappiness = 100 | The kernel will swap aggressively.
-|===========================================================
+Do not use a ZFS volume for creating a swap partition because this could lead
+to deadlocks. These deadlocks could cause the affected system to freeze. The
+OpenZFS documentation
+footnote:[https://openzfs.github.io/openzfs-docs/Project%20and%20Community/FAQ.html#using-a-zvol-for-a-swap-device-on-linux]
+warns about using a ZFS volume for creating a swap partition.
[[zfs_encryption]]
Encrypted ZFS Datasets
diff --git a/pve-swap.adoc b/pve-swap.adoc
new file mode 100644
index 0000000..6bc62b0
--- /dev/null
+++ b/pve-swap.adoc
@@ -0,0 +1,35 @@
+[[creating_swap_partitions]]
+Creating SWAP Partitions
+------------------------
+
+We strongly recommend to use enough memory, so that you normally do not
+run into low memory situations. Should you need or want to add swap, it is
+preferred to create a partition on a physical disk and use it as a swap device.
+You can leave some space free for this purpose in the advanced options of the
+installer. Additionally, you can lower the
+``swappiness'' value. A good value for servers is 10:
+
+----
+# sysctl -w vm.swappiness=10
+----
+
+To make the swappiness persistent, open `/etc/sysctl.conf` with
+an editor of your choice and add the following line:
+
+--------
+vm.swappiness = 10
+--------
+
+.Linux kernel `swappiness` parameter values
+[width="100%",cols="<m,2d",options="header"]
+|===========================================================
+| Value | Strategy
+| vm.swappiness = 0 | The kernel will swap only to avoid
+an 'out of memory' condition
+| vm.swappiness = 1 | Minimum amount of swapping without
+disabling it entirely.
+| vm.swappiness = 10 | This value is sometimes recommended to
+improve performance when sufficient memory exists in a system.
+| vm.swappiness = 60 | The default value.
+| vm.swappiness = 100 | The kernel will swap aggressively.
+|===========================================================
diff --git a/sysadmin.adoc b/sysadmin.adoc
index dd43f73..5b12634 100644
--- a/sysadmin.adoc
+++ b/sysadmin.adoc
@@ -71,6 +71,8 @@ include::pve-external-metric-server.adoc[]
include::pve-disk-health-monitoring.adoc[]
+include::pve-swap.adoc[]
+
include::local-lvm.adoc[]
include::local-zfs.adoc[]
--
2.39.5
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
reply other threads:[~2025-06-03 13:08 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250603130854.121129-1-a.abraham@proxmox.com \
--to=a.abraham@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal