> From: Bernhard Voelker <mail@xxxxxxxxxxxxxxxxxxx> > What does "punching" mean? Please explain without using the > word "punch". It means to set the contents of a range of bytes in the file to zero, and then to de-allocate the disk pages that record that range of bytes, leaving a "hole" -- a region of the file that exists as far as read() calls is concerned, but does not occupy actual disk pages. Of necessity, the bytes in a hole must be zero. > And how would one specify a "range"? There's no option with > such a "range" argument. Ugh, that's badly written. Without -p, fallocate forces the system to allocate blocks to a file which will appear to have zero contents. But for some filesystems, the disk blocks don't actually have to be set to zero, there's a way to mark them as "needs to be set to zero before the user can read it". The part of the file that is allocated in this way starts at "offset" bytes and ends just before "offset+length" bytes. That's the "range". With -p, the specified region of the file is also effectively set to zeros, but the disk blocks aren't allocated. And it appears that if the blocks are allocated now, they are deallocated. Dale -- To unsubscribe from this list: send the line "unsubscribe util-linux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html