From: ZhangPeng <zhangpeng362@xxxxxxxxxx> Dan Carpenter reported a Smatch static checker warning: fs/ntfs3/namei.c:96 ntfs_lookup() error: potential NULL/IS_ERR bug 'inode' It will cause null-ptr-deref when dir_search_u() returns NULL if the file is not found. Fix this by replacing IS_ERR() with IS_ERR_OR_NULL() to add a check for NULL. Fixes: fb6b59b5a2d6 ("fs/ntfs3: Fix null-ptr-deref on inode->i_op in ntfs_lookup()") Reported-by: Dan Carpenter <error27@xxxxxxxxx> Signed-off-by: ZhangPeng <zhangpeng362@xxxxxxxxxx> --- fs/ntfs3/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/ntfs3/namei.c b/fs/ntfs3/namei.c index 3db34d5c03dc..f23c2c26dd08 100644 --- a/fs/ntfs3/namei.c +++ b/fs/ntfs3/namei.c @@ -93,7 +93,7 @@ static struct dentry *ntfs_lookup(struct inode *dir, struct dentry *dentry, * If the MFT record of ntfs inode is not a base record, inode->i_op can be NULL. * This causes null pointer dereference in d_splice_alias(). */ - if (!IS_ERR(inode) && inode->i_op == NULL) { + if (!IS_ERR_OR_NULL(inode) && inode->i_op == NULL) { iput(inode); inode = ERR_PTR(-EINVAL); } -- 2.25.1