Re: [PATCH 0/5] fallocate system call

David Chinner
2007-04-30T05:57:22Z

On Sun, Apr 29, 2007 at 10:25:59PM -0700, Chris Wedgwood wrote:
> On Mon, Apr 30, 2007 at 10:47:02AM +1000, David Chinner wrote:
>
> > For FA_ALLOCATE, it's supposed to change the file size if we
> > allocate past EOF, right?
>
> I would argue no. Use truncate for that.

I'm going from the ext4 implementation because the semantics
have not been documented yet.

IIRC, the argument for FA_ALLOCATE changing file size is that
posix_fallocate() is supposed to change the file size. I think
that having a mode for real preallocation and another for
posix_fallocate is a valid thing to do...

Note that the way XFS implements growing the file size after the
allocation is via a truncate....

> > For FA_DEALLOCATE, does it change the filesize at all?
>
> Same as above.
>
> > Or does
> > it just punch a hole in the file?
>
> Yes.

That's would what I did because otherwise you'd use ftruncate64().
Without documented behaviour or an ext4 implementation, I have to
ask what it's supposed to do, though ;)

Cheers,

Dave.
--
Dave Chinner
Principal Engineer
SGI Australian Software Group