From 6412f0dc5e5c3fa4916db893d9b38c581a58e638 Mon Sep 17 00:00:00 2001 From: Wang Ming Date: Mon, 4 Dec 2023 17:12:01 +0800 Subject: [PATCH] fs: Fix error checking for d_hash_and_lookup() mainline inclusion from mainline-v6.6-rc1 commit 0d5a4f8f775ff990142cdc810a84eae078589d27 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I8LNLY?from=project-issue Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0d5a4f8f775ff990142cdc810a84eae078589d27 -------------------------------- The d_hash_and_lookup() function returns error pointers or NULL. Most incorrect error checks were fixed, but the one in int path_pts() was forgotten. Fixes: eedf265aa003 ("devpts: Make each mount of devpts an independent filesystem.") Signed-off-by: Wang Ming Message-Id: <20230713120555.7025-1-machel@vivo.com> Signed-off-by: Christian Brauner Signed-off-by: Zizhi Wo (cherry picked from commit 013285a4c7e5b601ab7d90e9822b55c82570ddb6) --- fs/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/namei.c b/fs/namei.c index efed178cbf59..247751adb38d 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -2647,7 +2647,7 @@ int path_pts(struct path *path) dput(path->dentry); path->dentry = parent; child = d_hash_and_lookup(parent, &this); - if (!child) + if (IS_ERR_OR_NULL(child)) return -ENOENT; path->dentry = child; -- Gitee