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

Commit f0b6ae56 authored by Jia-Ju Bai's avatar Jia-Ju Bai Committed by Greg Kroah-Hartman
Browse files

fs: orangefs: fix error return code of orangefs_revalidate_lookup()



[ Upstream commit 4c2b46c824a78fc8190d8eafaaea5a9078fe7479 ]

When op_alloc() returns NULL to new_op, no error return code of
orangefs_revalidate_lookup() is assigned.
To fix this bug, ret is assigned with -ENOMEM in this case.

Fixes: 8bb8aefd ("OrangeFS: Change almost all instances of the string PVFS2 to OrangeFS.")
Reported-by: default avatarTOTE Robot <oslab@tsinghua.edu.cn>
Signed-off-by: default avatarJia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: default avatarMike Marshall <hubcap@omnibond.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent e92fac39
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -25,8 +25,10 @@ static int orangefs_revalidate_lookup(struct dentry *dentry)
	gossip_debug(GOSSIP_DCACHE_DEBUG, "%s: attempting lookup.\n", __func__);

	new_op = op_alloc(ORANGEFS_VFS_OP_LOOKUP);
	if (!new_op)
	if (!new_op) {
		ret = -ENOMEM;
		goto out_put_parent;
	}

	new_op->upcall.req.lookup.sym_follow = ORANGEFS_LOOKUP_LINK_NO_FOLLOW;
	new_op->upcall.req.lookup.parent_refn = parent->refn;