summary refs log tree commit diff
path: root/fs/xfs/xfs_fs.h
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2010-08-24 12:02:11 +1000
committerAlex Elder <aelder@sgi.com>2010-10-18 15:07:25 -0500
commit447223520520b17d3b6d0631aa4838fbaf8eddb4 (patch)
tree068716a0537e0f7007a037073c4b7bc608233c1e /fs/xfs/xfs_fs.h
parent3ae4c9deb30a8d5ee305b461625dcb298c9804a9 (diff)
downloadlinux-447223520520b17d3b6d0631aa4838fbaf8eddb4.tar.gz
xfs: Introduce XFS_IOC_ZERO_RANGE
XFS_IOC_ZERO_RANGE is the equivalent of an atomic XFS_IOC_UNRESVSP/
XFS_IOC_RESVSP call pair. It enabled ranges of written data to be
turned into zeroes without requiring IO or having to free and
reallocate the extents in the range given as would occur if we had
to punch and then preallocate them separately.  This enables
applications to zero parts of files very quickly without changing
the layout of the files in any way.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/xfs_fs.h')
-rw-r--r--fs/xfs/xfs_fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_fs.h b/fs/xfs/xfs_fs.h
index 87c2e9d02288..10f6093671b0 100644
--- a/fs/xfs/xfs_fs.h
+++ b/fs/xfs/xfs_fs.h
@@ -448,6 +448,7 @@ typedef struct xfs_handle {
 /*	XFS_IOC_SETBIOSIZE ---- deprecated 46	   */
 /*	XFS_IOC_GETBIOSIZE ---- deprecated 47	   */
 #define XFS_IOC_GETBMAPX	_IOWR('X', 56, struct getbmap)
+#define XFS_IOC_ZERO_RANGE	_IOW ('X', 57, struct xfs_flock64)
 
 /*
  * ioctl commands that replace IRIX syssgi()'s