diff options
author | Steve French <stfrench@microsoft.com> | 2021-09-23 19:18:37 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-10-06 15:31:10 +0200 |
commit | 43d2e0fbc67f8bcfb069130f4028a04887ae76b6 (patch) | |
tree | 325be317a214250d66a4b3e792016006d6075be8 /fs | |
parent | 05ace2fa3c15a012aa3a07c59f1201c74b889aee (diff) | |
download | linux-stable-43d2e0fbc67f8bcfb069130f4028a04887ae76b6.tar.gz linux-stable-43d2e0fbc67f8bcfb069130f4028a04887ae76b6.tar.bz2 linux-stable-43d2e0fbc67f8bcfb069130f4028a04887ae76b6.zip |
cifs: fix incorrect check for null pointer in header_assemble
commit 9ed38fd4a15417cac83967360cf20b853bfab9b6 upstream.
Although very unlikely that the tlink pointer would be null in this case,
get_next_mid function can in theory return null (but not an error)
so need to check for null (not for IS_ERR, which can not be returned
here).
Address warning:
fs/smbfs_client/connect.c:2392 cifs_match_super()
warn: 'tlink' isn't an ERR_PTR
Pointed out by Dan Carpenter via smatch code analysis tool
CC: stable@vger.kernel.org
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/connect.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index 6285085195c1..b5aba1c895cb 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c @@ -3374,9 +3374,10 @@ cifs_match_super(struct super_block *sb, void *data) spin_lock(&cifs_tcp_ses_lock); cifs_sb = CIFS_SB(sb); tlink = cifs_get_tlink(cifs_sb_master_tlink(cifs_sb)); - if (IS_ERR(tlink)) { + if (tlink == NULL) { + /* can not match superblock if tlink were ever null */ spin_unlock(&cifs_tcp_ses_lock); - return rc; + return 0; } tcon = tlink_tcon(tlink); ses = tcon->ses; |