From: Steve French Date: Sat, 8 May 2021 01:00:41 +0000 (-0500) Subject: smb3: do not attempt multichannel to server which does not support it X-Git-Tag: v5.15~1146^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9c2dc11df50d1c8537075ff6b98472198e24438e;p=platform%2Fkernel%2Flinux-starfive.git smb3: do not attempt multichannel to server which does not support it We were ignoring CAP_MULTI_CHANNEL in the server response - if the server doesn't support multichannel we should not be attempting it. See MS-SMB2 section 3.2.5.2 Reviewed-by: Shyam Prasad N Reviewed-By: Tom Talpey Cc: # v5.8+ Signed-off-by: Steve French --- diff --git a/fs/cifs/sess.c b/fs/cifs/sess.c index 63d517b..a92a1fb 100644 --- a/fs/cifs/sess.c +++ b/fs/cifs/sess.c @@ -97,6 +97,12 @@ int cifs_try_adding_channels(struct cifs_sb_info *cifs_sb, struct cifs_ses *ses) 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; + return 0; + } + /* * Make a copy of the iface list at the time and use that * instead so as to not hold the iface spinlock for opening