From: Yang Wen Date: Sun, 22 Mar 2026 15:32:06 +0000 (+0800) Subject: exfat: fix passing zero to ERR_PTR() in exfat_mkdir() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=73f01258002fe35d6c6b20f92c75b891e7215b06;p=thirdparty%2Fkernel%2Flinux.git exfat: fix passing zero to ERR_PTR() in exfat_mkdir() Detected by Smatch. namei.c:890 exfat_mkdir() warn: passing zero to 'ERR_PTR' Signed-off-by: Yang Wen Signed-off-by: Namjae Jeon --- diff --git a/fs/exfat/namei.c b/fs/exfat/namei.c index ef2a3488c1b37..d0ea1ff81c090 100644 --- a/fs/exfat/namei.c +++ b/fs/exfat/namei.c @@ -874,9 +874,10 @@ static struct dentry *exfat_mkdir(struct mnt_idmap *idmap, struct inode *dir, i_pos = exfat_make_i_pos(&info); inode = exfat_build_inode(sb, &info, i_pos); - err = PTR_ERR_OR_ZERO(inode); - if (err) + if (IS_ERR(inode)) { + err = PTR_ERR(inode); goto unlock; + } inode_inc_iversion(inode); EXFAT_I(inode)->i_crtime = simple_inode_init_ts(inode); @@ -887,7 +888,7 @@ static struct dentry *exfat_mkdir(struct mnt_idmap *idmap, struct inode *dir, unlock: mutex_unlock(&EXFAT_SB(sb)->s_lock); - return ERR_PTR(err); + return err ? ERR_PTR(err) : NULL; } static int exfat_check_dir_empty(struct super_block *sb,