summaryrefslogtreecommitdiff
path: root/include/uapi/linux/falloc.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2016-10-14 10:00:27 -0400
committerDavid S. Miller <davem@davemloft.net>2016-10-14 10:00:27 -0400
commit8eed1cd4cd0c6f41d40c345265f20dc7688ffcca (patch)
tree5adaacccdc1e519e3861b8f7333f39350205a472 /include/uapi/linux/falloc.h
parent687d911466774808ed4926edadb20cc4f0153bed (diff)
parent29fbff8698fc0ac1a1d74584b258e0bf18b469f9 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'include/uapi/linux/falloc.h')
-rw-r--r--include/uapi/linux/falloc.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/include/uapi/linux/falloc.h b/include/uapi/linux/falloc.h
index 3e445a760f14..b075f601919b 100644
--- a/include/uapi/linux/falloc.h
+++ b/include/uapi/linux/falloc.h
@@ -58,4 +58,22 @@
*/
#define FALLOC_FL_INSERT_RANGE 0x20
+/*
+ * FALLOC_FL_UNSHARE_RANGE is used to unshare shared blocks within the
+ * file size without overwriting any existing data. The purpose of this
+ * call is to preemptively reallocate any blocks that are subject to
+ * copy-on-write.
+ *
+ * Different filesystems may implement different limitations on the
+ * granularity of the operation. Most will limit operations to filesystem
+ * block size boundaries, but this boundary may be larger or smaller
+ * depending on the filesystem and/or the configuration of the filesystem
+ * or file.
+ *
+ * This flag can only be used with allocate-mode fallocate, which is
+ * to say that it cannot be used with the punch, zero, collapse, or
+ * insert range modes.
+ */
+#define FALLOC_FL_UNSHARE_RANGE 0x40
+
#endif /* _UAPI_FALLOC_H_ */