Re: [PATCH 3/3] block: implement (some of) fallocate for block devices

From: Christoph Hellwig
Date: Sat Mar 05 2016 - 15:58:50 EST


On Fri, Mar 04, 2016 at 07:13:25PM -0800, Linus Torvalds wrote:
> > + /* We can't change the bdev size from here */
> > + if (!(mode & FALLOC_FL_KEEP_SIZE))
> > + return -EOPNOTSUPP;
>
> Oh, and this I think is wrong.
>
> The thing is, FALLOC_FL_KEEP_SIZE is only supposed to matter if the
> region is outside the existing length.

For allocations...

> So if y ou punch a hole in the middle of a file, you don't need
> FALLOC_FL_KEEP_SIZE.

For FALLOC_FL_PUNCH_HOLE we always require FALLOC_FL_KEEP_SIZE so far,
and I'd rather not change things for block devices just because we can.