Re: fallocate(FALLOC_FL_ZERO_RANGE_BUT_REALLY) to avoid unwritten extents?
From: Avi Kivity <hidden>
Date: 2021-01-13 07:45:24
Also in:
linux-ext4, linux-fsdevel, linux-xfs
From: Avi Kivity <hidden>
Date: 2021-01-13 07:45:24
Also in:
linux-ext4, linux-fsdevel, linux-xfs
On 1/12/21 11:36 PM, Andres Freund wrote:
Hi, On 2021-01-12 13:14:45 -0800, Darrick J. Wong wrote:quoted
ALLOCSP64 can only allocate pre-zeroed blocks as part of extending EOF, whereas a new FZERO flag means that we can pre-zero an arbitrary range of bytes in a file. I don't know if Avi or Andres' usecases demand that kind of flexibilty but I know I'd rather go for the more powerful interface.Postgres/I don't at the moment have a need to allocate "written" zeroed space anywhere but EOF. I can see some potential uses for more flexible pre-zeroing in the future though, but not very near term.
Same here. I also agree that it's better not to have the kernel fall back internally on writing zeros, letting userspace do that. The assumption is that WRITE SAME will be O(1)-ish and so can bypass scheduling decisions, but if we need to write zeros, better let the application throttle the rate.