diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2011-03-04 07:14:55 +0100 |
---|---|---|
committer | Bob Copeland <me@bobcopeland.com> | 2011-03-05 22:20:30 +0100 |
commit | 013e4f4a285d8c7d952d8d7be9f10783a85b5d3c (patch) | |
tree | 50f72ff88035306d4054bdfad5f2202db875d080 /fs/omfs/dir.c | |
parent | Linux 2.6.38-rc5 (diff) | |
download | linux-013e4f4a285d8c7d952d8d7be9f10783a85b5d3c.tar.xz linux-013e4f4a285d8c7d952d8d7be9f10783a85b5d3c.zip |
omfs: rename() needs to mark old_inode dirty after ctime update
we *do* mark it dirty before, but it doesn't guarantee that we
don't get preempted just before assignment to ->i_ctime, with
inode getting written out before we get CPU back...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Bob Copeland <me@bobcopeland.com>
Diffstat (limited to '')
-rw-r--r-- | fs/omfs/dir.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/omfs/dir.c b/fs/omfs/dir.c index 393f3f659da7..9990fc856959 100644 --- a/fs/omfs/dir.c +++ b/fs/omfs/dir.c @@ -423,6 +423,7 @@ static int omfs_rename(struct inode *old_dir, struct dentry *old_dentry, goto out; old_inode->i_ctime = CURRENT_TIME_SEC; + mark_inode_dirty(old_inode); out: return err; } |