On Sat 31-10-20 13:05:15, Harshad Shirwadkar wrote: > This patch adds a small number of misc fast commit fixes. Along with > functional fixes such as setting the right buffer flags, there also > typo fixes and comment additions. > > Suggested-by: Jan Kara <jack@xxxxxxx> > Signed-off-by: Harshad Shirwadkar <harshadshirwadkar@xxxxxxxxx> Again, please don't merge logically separate fixes into one commit. > diff --git a/fs/ext4/ext4_jbd2.h b/fs/ext4/ext4_jbd2.h > index 00dc668e052b..10855cd230c7 100644 > --- a/fs/ext4/ext4_jbd2.h > +++ b/fs/ext4/ext4_jbd2.h > @@ -422,9 +422,13 @@ static inline int ext4_journal_force_commit(journal_t *journal) > static inline int ext4_jbd2_inode_add_write(handle_t *handle, > struct inode *inode, loff_t start_byte, loff_t length) > { > - if (ext4_handle_valid(handle)) > + if (ext4_handle_valid(handle)) { > + ext4_fc_track_range(handle, inode, > + start_byte >> inode->i_sb->s_blocksize_bits, > + (start_byte + length) >> inode->i_sb->s_blocksize_bits); > return jbd2_journal_inode_ranged_write(handle, > EXT4_I(inode)->jinode, start_byte, length); > + } Why this change? A good changelog would tell me... I'm suspicious here because ext4_jbd2_inode_add_write() gets called only in data=ordered mode but fastcommit can run also in data=writeback mode... I suppose this is for the mmap coverage we were speaking about. Now that I'm speaking about it again maybe the ext4_fc_track_range() call in ext4_map_blocks() is actually enough? I mean once we allocate blocks for a range (either from page fault, write, or writeback of delalloc), they will become properly tracked in ext4_map_blocks() and that's all we need? But then I'm missing why we have so many ext4_fc_track_range() calls around the code... Can you please explain? Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR