Commit 70779b89 authored by Pan Bian's avatar Pan Bian Committed by David Sterba
Browse files

fs/affs: release old buffer head on error path



The reference count of the old buffer head should be decremented on path
that fails to get the new buffer head.

Fixes: 6b465766 ("fs/affs: add rename exchange")
CC: stable@vger.kernel.org # 4.14+
Signed-off-by: default avatarPan Bian <bianpan2016@163.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent 92bf2261
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -460,8 +460,10 @@ affs_xrename(struct inode *old_dir, struct dentry *old_dentry,
		return -EIO;

	bh_new = affs_bread(sb, d_inode(new_dentry)->i_ino);
	if (!bh_new)
	if (!bh_new) {
		affs_brelse(bh_old);
		return -EIO;
	}

	/* Remove old header from its parent directory. */
	affs_lock_dir(old_dir);