From: Josef Bacik Date: Thu, 18 Nov 2010 01:46:20 +0000 (-0500) Subject: Gfs2: fail if we try to use hole punch X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=9ecf639a9686c9c7e3fd2cd72817ca490c658e6f;p=deliverable%2Flinux.git Gfs2: fail if we try to use hole punch Gfs2 doesn't have the ability to punch holes yet, so make sure we return EOPNOTSUPP if we try to use hole punching through fallocate. This support can be added later. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Al Viro --- diff --git a/fs/gfs2/ops_inode.c b/fs/gfs2/ops_inode.c index ae140c8abb5c..040b5a2e6556 100644 --- a/fs/gfs2/ops_inode.c +++ b/fs/gfs2/ops_inode.c @@ -1425,6 +1425,10 @@ static long gfs2_fallocate(struct inode *inode, int mode, loff_t offset, loff_t next = (offset + len - 1) >> sdp->sd_sb.sb_bsize_shift; next = (next + 1) << sdp->sd_sb.sb_bsize_shift; + /* We only support the FALLOC_FL_KEEP_SIZE mode */ + if (mode && (mode != FALLOC_FL_KEEP_SIZE)) + return -EOPNOTSUPP; + offset = (offset >> sdp->sd_sb.sb_bsize_shift) << sdp->sd_sb.sb_bsize_shift;