From 63a599c657d82a6374272aa4c8f31b5cc1bd9a58 Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Mon, 17 Oct 2016 18:54:27 -0700 Subject: [PATCH] man2/fallocate.2: Document behavior with shared blocks Note that FALLOC_FL_UNSHARE may use CoW to unshare blocks to guarantee that a disk write won't fail with ENOSPC. Signed-off-by: Darrick J. Wong --- man2/fallocate.2 | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/man2/fallocate.2 b/man2/fallocate.2 index 54d634096..3ed14601d 100644 --- a/man2/fallocate.2 +++ b/man2/fallocate.2 @@ -79,6 +79,16 @@ but the file size will not be changed even if is greater than the file size. Preallocating zeroed blocks beyond the end of the file in this manner is useful for optimizing append workloads. + +If the +.B FALLOC_FL_UNSHARE +flag is specified in +.IR mode , +shared file data extents will be made private to the file to guarantee +that a subsequent write will not fail due to lack of space. +Typically, this will be done by performing a copy-on-write operation on +all shared data in the file. +This flag may not be supported by all filesystems. .PP Because allocation is done in block size chunks, .BR fallocate ()