summaryrefslogtreecommitdiff
path: root/fs/smb/client
diff options
context:
space:
mode:
authorShyam Prasad N <sprasad@microsoft.com>2024-01-17 08:55:39 +0300
committerSteve French <stfrench@microsoft.com>2024-01-19 06:01:04 +0300
commit936eba9cfb5cfbf6a2c762cd163605f2b784e03e (patch)
treebbb89bc7021f2342c57c612da0dca54aaf736c9b /fs/smb/client
parentd7851dc13d87688e2c532f0e77c2bd29f902d6cf (diff)
downloadlinux-936eba9cfb5cfbf6a2c762cd163605f2b784e03e.tar.xz
cifs: open_cached_dir should not rely on primary channel
open_cached_dir today selects ses->server a.k.a primary channel to send requests. When multichannel is used, the primary channel maybe down. So it does not make sense to rely only on that channel. This fix makes this function pick a channel with the standard helper function cifs_pick_channel. Signed-off-by: Shyam Prasad N <sprasad@microsoft.com> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/smb/client')
-rw-r--r--fs/smb/client/cached_dir.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/smb/client/cached_dir.c b/fs/smb/client/cached_dir.c
index d64a306a414b..971892620504 100644
--- a/fs/smb/client/cached_dir.c
+++ b/fs/smb/client/cached_dir.c
@@ -151,7 +151,7 @@ int open_cached_dir(unsigned int xid, struct cifs_tcon *tcon,
return -EOPNOTSUPP;
ses = tcon->ses;
- server = ses->server;
+ server = cifs_pick_channel(ses);
cfids = tcon->cfids;
if (!server->ops->new_lease_key)