Commit c6fa76da authored by Markus Elfring's avatar Markus Elfring Committed by Richard Weinberger
Browse files

ubifs: Call iput(xino) only once in ubifs_purge_xattrs()



An iput(xino) call was immediately used after a return value check
for a remove_xattr() call in this function implementation.
Thus call such a function only once instead directly before the check.

This issue was transformed by using the Coccinelle software.

Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
Reviewed-by: default avatarZhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
parent 5580cdae
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -541,16 +541,14 @@ int ubifs_purge_xattrs(struct inode *host)

		clear_nlink(xino);
		err = remove_xattr(c, host, xino, &nm);
		iput(xino);
		if (err) {
			kfree(pxent);
			kfree(xent);
			iput(xino);
			ubifs_err(c, "cannot remove xattr, error %d", err);
			goto out_err;
		}

		iput(xino);

		kfree(pxent);
		pxent = xent;
		key_read(c, &xent->key, &key);