On Thu, 2008-04-10 at 15:11 +0200, Solofo.Ramangalahy@xxxxxxxx wrote: > Mingming Cao writes: > > Shouldn't we mark inode dirty after the ctime and and mtime is changed? > > I should have been more careful when mimicing the non-extent case or > examine more closely the patch queue (I am just noticing > ext4-update-mtime-and-ctime-on-rename.patch). I honestly do not have > a definitive answer now, but I trust you and Jan more than me. > > ... so, yes, we should. > > Looking back at the code, there is actually a pattern > ext4_current_time() followed by ext4_mark_inode_dirty(), but I do not > think it is worth a refactoring. > > Attached the updated patch. > > Thanks and sorry for the trouble, Np, I updated the patch in the patch queue. BTW, it would be nice to generate the patch with -p next time to show which function the changes are modifying. Mingming > -- > solofo > > ext4: update ctime and mtime for truncate with extents. > > From: Solofo Ramangalahy <Solofo.Ramangalahy@xxxxxxxx> > > The recently announced "Linux POSIX file system test suite" > http://ntfs3g.org/sw/qa/pjd-fstest-20080402.tgz catched a truncate > issue when using extents: > mtime and ctime are not updated despite truncate being successful. > > This is the single issue catched with "default" ext4 (mkfs and mount > with minimal options). > The testsuite does not report failure with -o noextents. > > With the following patch, all tests of the testsuite passes: > > Signed-off-by: Solofo Ramangalahy <Solofo.Ramangalahy@xxxxxxxx> > > --- > fs/ext4/extents.c | 2 ++ > 1 file changed, 2 insertions(+) > > Index: linux-2.6.25-rc8-git5-ext4-52c7a8013ad2c452551a68ff4daab4bacbe28f9d/fs/ext4/extents.c > =================================================================== > --- linux-2.6.25-rc8-git5-ext4-52c7a8013ad2c452551a68ff4daab4bacbe28f9d.orig/fs/ext4/extents.c > +++ linux-2.6.25-rc8-git5-ext4-52c7a8013ad2c452551a68ff4daab4bacbe28f9d/fs/ext4/extents.c > @@ -2947,6 +2947,8 @@ out_stop: > ext4_orphan_del(handle, inode); > > up_write(&EXT4_I(inode)->i_data_sem); > + inode->i_mtime = inode->i_ctime = ext4_current_time(inode); > + ext4_mark_inode_dirty(handle, inode); > ext4_journal_stop(handle); > } > -- > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html