Re: [PATCH] ext4: delayed inode update for the consistency of file size after a crash
From: Christoph Hellwig <hch@infradead.org>
Date: 2017-12-18 12:32:02
Also in:
linux-fsdevel, lkml
From: Christoph Hellwig <hch@infradead.org>
Date: 2017-12-18 12:32:02
Also in:
linux-fsdevel, lkml
that update of the timestamp and i_size needs to be moved to an I/O completion handler. We do this already to convert unwritten requests to be written in fs/ext4/page_io.c. See ext4_put_io_end_defer() in fs/ext4/page_io.c; if we need to convert unwritten extents the EXT4_IO_END_UNWRITTEN flag is set, and ext4_add_complete_io() tacks the io_end queue onto a workqueue. This infrastructure could be made more general so that it can do other work after the I/O has been completed, including the i_size update.
That's what we do for the i_size update in XFS.