From eebfa469fcd07eb020dc4d6f1ae1a661d4b365ee Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Mon, 21 Jan 2019 12:44:49 +0100 Subject: swapon: (man) cleanup note about holes Addresses: https://github.com/karelzak/util-linux/issues/633 Signed-off-by: Karel Zak --- disk-utils/mkswap.8 | 17 +++++++++-------- sys-utils/swapon.8 | 20 +++++++++----------- 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/disk-utils/mkswap.8 b/disk-utils/mkswap.8 index 27f922171..bdc631491 100644 --- a/disk-utils/mkswap.8 +++ b/disk-utils/mkswap.8 @@ -130,17 +130,18 @@ e.g.\& using a command like to create 8GiB swapfile. -Note that a swap file must not contain any holes. Using +The swap file implementation in the kernel expects to be able to write to the file directly, +without the assistance of the filesystem. This is a problem on files with holes +(e.g. created by .BR cp (1) -to create the file is not acceptable. Neither is use of -.BR fallocate (1) -on file systems that support preallocated files, such as -.BR XFS " or " ext4 , -or on copy-on-write filesystems like +or another commands), or on files on copy-on-write filesystems like .BR btrfs . -It is recommended to use +In some cases preallocated files (e.g. fallocate(1) on XFS) maybe interpreted +by kernel as files with holes too. The most portable solution is to use .BR dd (1) -and /dev/zero in these cases. Please read notes from +and /dev/zero in these cases. +.sp +Please read notes from .BR swapon (8) before adding a swap file to copy-on-write filesystems. diff --git a/sys-utils/swapon.8 b/sys-utils/swapon.8 index 510a15fd0..aea45b2f5 100644 --- a/sys-utils/swapon.8 +++ b/sys-utils/swapon.8 @@ -195,18 +195,16 @@ This can be seen in the system log as .B "swapon: swapfile has holes." .sp .RE -The swap file implementation in the kernel expects to be able to write to the -file directly, without the assistance of the filesystem. This is a problem on -preallocated files (e.g. -.BR fallocate (1)) -on filesystems like \fBXFS\fR or \fBext4\fR, and on copy-on-write -filesystems like \fBbtrfs\fR. -.PP -It is recommended to use +The swap file implementation in the kernel expects to be able to write to the file directly, +without the assistance of the filesystem. This is a problem on files with holes +(e.g. created by +.BR cp (1) +or another commands), or on files on copy-on-write filesystems like +.BR btrfs . +In some cases preallocated files (e.g. fallocate(1) on XFS) maybe interpreted +by kernel as files with holes too. The most portable solution is to use .BR dd (1) -and -.I /dev/zero -to avoid holes on XFS and ext4. +and /dev/zero in these cases. .PP .B swapon may not work correctly when using a swap file with some versions of -- cgit v1.2.3-55-g7522