ext4: fix fdatasync(2) after extent manipulation operations
[firefly-linux-kernel-4.4.55.git] / fs / ext4 / inode.c
index 27e34fbb0aa53f19b68896304fb49d0282c0de95..801c32ef9047a8d5d6de8aa08246766102368bf3 100644 (file)
@@ -3793,6 +3793,8 @@ int ext4_punch_hole(struct inode *inode, loff_t offset, loff_t length)
 
        inode->i_mtime = inode->i_ctime = ext4_current_time(inode);
        ext4_mark_inode_dirty(handle, inode);
+       if (ret >= 0)
+               ext4_update_inode_fsync_trans(handle, inode, 1);
 out_stop:
        ext4_journal_stop(handle);
 out_dio: