summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-03-04 01:14:55 -0500
committerBob Copeland <me@bobcopeland.com>2011-03-05 16:20:30 -0500
commit013e4f4a285d8c7d952d8d7be9f10783a85b5d3c (patch)
tree50f72ff88035306d4054bdfad5f2202db875d080
parent85e2efbb1db9a18d218006706d6e4fbeb0216213 (diff)
downloadop-kernel-dev-013e4f4a285d8c7d952d8d7be9f10783a85b5d3c.zip
op-kernel-dev-013e4f4a285d8c7d952d8d7be9f10783a85b5d3c.tar.gz
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>
-rw-r--r--fs/omfs/dir.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/omfs/dir.c b/fs/omfs/dir.c
index 393f3f6..9990fc8 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;
}
OpenPOWER on IntegriCloud