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>
This commit is contained in:
Al Viro 2011-03-04 01:14:55 -05:00 committed by Bob Copeland
parent 85e2efbb1d
commit 013e4f4a28

View File

@ -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;
}