diff options
author | Jia-Ju Bai <baijiaju1990@gmail.com> | 2021-03-09 09:00:20 +0100 |
---|---|---|
committer | Mike Marshall <hubcap@omnibond.com> | 2021-10-11 20:25:34 +0200 |
commit | 4c2b46c824a78fc8190d8eafaaea5a9078fe7479 (patch) | |
tree | c3c8cc267f837bd51bdfd1db804ad0f43fc0a565 | |
parent | orangefs: Remove redundant initialization of variable ret (diff) | |
download | linux-4c2b46c824a78fc8190d8eafaaea5a9078fe7479.tar.xz linux-4c2b46c824a78fc8190d8eafaaea5a9078fe7479.zip |
fs: orangefs: fix error return code of orangefs_revalidate_lookup()
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: 8bb8aefd5afb ("OrangeFS: Change almost all instances of the string PVFS2 to OrangeFS.")
Reported-by: TOTE Robot <oslab@tsinghua.edu.cn>
Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
-rw-r--r-- | fs/orangefs/dcache.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/orangefs/dcache.c b/fs/orangefs/dcache.c index fe484cf93e5c..8bbe9486e3a6 100644 --- a/fs/orangefs/dcache.c +++ b/fs/orangefs/dcache.c @@ -26,8 +26,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; |