lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 10 Apr 2008 15:11:55 +0200
From:	Solofo.Ramangalahy@...l.net
To:	cmm@...ibm.com
Cc:	linux-ext4@...r.kernel.org, Szabolcs Szakacsits <szaka@...s-3g.com>
Subject: Re: [PATCH] ext4: update ctime and mtime for truncate with extents.

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,
--
solofo

ext4: update ctime and mtime for truncate with extents.

From: Solofo Ramangalahy <Solofo.Ramangalahy@...l.net>

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@...l.net>

---
 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@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ