On Wed, Nov 15, 2017 at 07:54:19PM +0800, Eryu Guan wrote: > Currently, fallocate(2) with KEEP_SIZE followed by a fdatasync(2) > then crash, we'll see wrong allocated block number (stat -c %b), the > blocks allocated beyond EOF are all lost. fstests generic/468 > exposes this bug. > > Commit 67a7d5f561f4 ("ext4: fix fdatasync(2) after extent > manipulation operations") fixed all the other extent manipulation > operation paths such as hole punch, zero range, collapse range etc., > but forgot the fallocate case. > > So similarly, fix it by recording the correct journal tid in ext4 > inode in fallocate(2) path, so that ext4_sync_file() will wait for > the right tid to be committed on fdatasync(2). > > Signed-off-by: Eryu Guan <eguan@xxxxxxxxxx> Thanks, applied. - Ted