On Fri, Mar 04, 2011 at 08:39:03AM +1100, Dave Chinner wrote:
> WTF? Why does append mode have any effect on whether we can punch
> holes in a file or not? There's no justification for adding this in
> the commit message. Why is it even in a patch that is for checking
> immutable inodes? What is the point of adding it, when all that will
> happen is people will switch to XFS_IOC_UNRESVSP which has never had
> this limitation?
xfs_ioc_space unconditionally rejects inodes with S_APPEND set for
all preallocation / hole punching ioctls. This might be overzealous for
preallocations not changing the size, or just extending i_size, but it's
IMHO entirely correct for hole punching.