2008-03-26 10:46:14

by Jan Kara

[permalink] [raw]
Subject: [PATCH] ext3: Fix update of mtime and ctime on rename

The patch below makes ext3 update mtime and ctime of the directory
into which we move file even if the directory entry already exists.

Signed-off-by: Jan Kara <[email protected]>
---
fs/ext3/namei.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/fs/ext3/namei.c b/fs/ext3/namei.c
index dec3e0d..b0f377f 100644
--- a/fs/ext3/namei.c
+++ b/fs/ext3/namei.c
@@ -2318,6 +2318,8 @@ static int ext3_rename (struct inode * old_dir, struct dentry *old_dentry,
EXT3_FEATURE_INCOMPAT_FILETYPE))
new_de->file_type = old_de->file_type;
new_dir->i_version++;
+ new_dir->i_ctime = new_dir->i_mtime = CURRENT_TIME_SEC;
+ ext3_mark_inode_dirty(handle, new_dir);
BUFFER_TRACE(new_bh, "call ext3_journal_dirty_metadata");
ext3_journal_dirty_metadata(handle, new_bh);
brelse(new_bh);
--
1.5.2.4



2008-03-26 10:55:27

by Jan Kara

[permalink] [raw]
Subject: [PATCH] ext4: Fix update of mtime and ctime on rename

The patch below makes ext4 update mtime and ctime of the directory
into which we move file even if the directory entry already exists.

Signed-off-by: Jan Kara <[email protected]>
---
fs/ext4/namei.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index 28aa2ed..d04bc73 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -2347,6 +2347,9 @@ static int ext4_rename (struct inode * old_dir, struct dentry *old_dentry,
EXT4_FEATURE_INCOMPAT_FILETYPE))
new_de->file_type = old_de->file_type;
new_dir->i_version++;
+ new_dir->i_ctime = new_dir->i_mtime =
+ ext4_current_time(new_dir);
+ ext4_mark_inode_dirty(handle, new_dir);
BUFFER_TRACE(new_bh, "call ext4_journal_dirty_metadata");
ext4_journal_dirty_metadata(handle, new_bh);
brelse(new_bh);
--
1.5.2.4