Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e79eedb authored by Tetsuo Handa's avatar Tetsuo Handa Committed by Al Viro
Browse files

[patch 4/5] vfs: reuse local variable in vfs_link()



Why not reuse "inode" which is assigned as

  struct inode *inode = old_dentry->d_inode;

in the beginning of vfs_link() ?

Signed-off-by: default avatarTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
parent 2f1936b8
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -2524,19 +2524,19 @@ int vfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *new_de
		return -EPERM;
	if (!dir->i_op || !dir->i_op->link)
		return -EPERM;
	if (S_ISDIR(old_dentry->d_inode->i_mode))
	if (S_ISDIR(inode->i_mode))
		return -EPERM;

	error = security_inode_link(old_dentry, dir, new_dentry);
	if (error)
		return error;

	mutex_lock(&old_dentry->d_inode->i_mutex);
	mutex_lock(&inode->i_mutex);
	DQUOT_INIT(dir);
	error = dir->i_op->link(old_dentry, dir, new_dentry);
	mutex_unlock(&old_dentry->d_inode->i_mutex);
	mutex_unlock(&inode->i_mutex);
	if (!error)
		fsnotify_link(dir, old_dentry->d_inode, new_dentry);
		fsnotify_link(dir, inode, new_dentry);
	return error;
}