cifs: do not reset chan_max if multichannel is not supported at mount
authorSteve French <stfrench@microsoft.com>
Fri, 26 Jan 2024 04:54:41 +0000 (22:54 -0600)
committerSteve French <stfrench@microsoft.com>
Sat, 27 Jan 2024 06:14:31 +0000 (00:14 -0600)
If the mount command has specified multichannel as a mount option,
but multichannel is found to be unsupported by the server at the time
of mount, we set chan_max to 1. Which means that the user needs to
remount the share if the server starts supporting multichannel.

This change removes this reset. What it means is that if the user
specified multichannel or max_channels during mount, and at this
time, multichannel is not supported, but the server starts supporting
it at a later point, the client will be capable of scaling out the
number of channels.

Cc: stable@vger.kernel.org
Signed-off-by: Shyam Prasad N <sprasad@microsoft.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/sess.c

index 919ace2d13d420337c4cce0caa6693f20dd81db8..cd474cf98f30e49da4a102f1f20963f65662634e 100644 (file)
@@ -186,7 +186,6 @@ int cifs_try_adding_channels(struct cifs_sb_info *cifs_sb, struct cifs_ses *ses)
        }
 
        if (!(server->capabilities & SMB2_GLOBAL_CAP_MULTI_CHANNEL)) {
-               ses->chan_max = 1;
                spin_unlock(&ses->chan_lock);
                cifs_server_dbg(VFS, "no multichannel support\n");
                return 0;