On Wed, Jan 15, 2020 at 10:15:58PM -0800, Darrick J. Wong wrote: > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > In the previous patch, we solved a stale disk contents exposure problem > by forcing the delalloc write path to create unwritten extents, write > the data, and convert the extents to written after writeback completes. > > This is a pretty huge hammer to use, so we'll relax the delalloc write > strategy to go straight to written extents (as we once did) if someone > tells us to write the entire file to disk. This reopens the exposure > window slightly, but we'll only be affected if writeback completes out > of order and the system crashes during writeback. > > Because once again we can map written extents past EOF, we also > enlarge the writepages window downward if the window is beyond the > on-disk size and there are written extents after the EOF block. This > ensures that speculative post-EOF preallocations are not left uncovered. This does sound really sketchy. Do you have any performance numbers justifying something this nasty?