| From d448d6efbea220fbff7b81afa09ba55e8dc7ec51 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 16 Feb 2022 13:23:53 -0600 |
| Subject: cifs: fix confusing unneeded warning message on smb2.1 and earlier |
| |
| From: Steve French <stfrench@microsoft.com> |
| |
| [ Upstream commit 53923e0fe2098f90f339510aeaa0e1413ae99a16 ] |
| |
| When mounting with SMB2.1 or earlier, even with nomultichannel, we |
| log the confusing warning message: |
| "CIFS: VFS: multichannel is not supported on this protocol version, use 3.0 or above" |
| |
| Fix this so that we don't log this unless they really are trying |
| to mount with multichannel. |
| |
| BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=215608 |
| Reported-by: Kim Scarborough <kim@scarborough.kim> |
| Cc: stable@vger.kernel.org # 5.11+ |
| Reviewed-by: Paulo Alcantara (SUSE) <pc@cjr.nz> |
| Signed-off-by: Steve French <stfrench@microsoft.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| fs/cifs/sess.c | 11 ++++++----- |
| 1 file changed, 6 insertions(+), 5 deletions(-) |
| |
| diff --git a/fs/cifs/sess.c b/fs/cifs/sess.c |
| index a1e688113645f..5500ea7837845 100644 |
| --- a/fs/cifs/sess.c |
| +++ b/fs/cifs/sess.c |
| @@ -76,11 +76,6 @@ int cifs_try_adding_channels(struct cifs_sb_info *cifs_sb, struct cifs_ses *ses) |
| struct cifs_server_iface *ifaces = NULL; |
| size_t iface_count; |
| |
| - if (ses->server->dialect < SMB30_PROT_ID) { |
| - cifs_dbg(VFS, "multichannel is not supported on this protocol version, use 3.0 or above\n"); |
| - return 0; |
| - } |
| - |
| spin_lock(&ses->chan_lock); |
| |
| new_chan_count = old_chan_count = ses->chan_count; |
| @@ -94,6 +89,12 @@ int cifs_try_adding_channels(struct cifs_sb_info *cifs_sb, struct cifs_ses *ses) |
| return 0; |
| } |
| |
| + if (ses->server->dialect < SMB30_PROT_ID) { |
| + spin_unlock(&ses->chan_lock); |
| + cifs_dbg(VFS, "multichannel is not supported on this protocol version, use 3.0 or above\n"); |
| + return 0; |
| + } |
| + |
| if (!(ses->server->capabilities & SMB2_GLOBAL_CAP_MULTI_CHANNEL)) { |
| cifs_dbg(VFS, "server %s does not support multichannel\n", ses->server->hostname); |
| ses->chan_max = 1; |
| -- |
| 2.34.1 |
| |