diff mbox series

lightly updated versions of Shyam's recent multichannel patches

Message ID CAH2r5mtnq1WjAiZ7sLB3uVdFHCxDh=_QEvB=YZfhCvL-SUCsRg@mail.gmail.com (mailing list archive)
State New, archived
Headers show
Series lightly updated versions of Shyam's recent multichannel patches | expand

Commit Message

Steve French Jan. 19, 2024, 3:05 a.m. UTC
multichannel set of patches from Shyam.

There are three additional patches of his that need more fixup, but
these eight looked ok (I did minor updates to a few)

Comments

Shyam Prasad N Jan. 19, 2024, 11:41 a.m. UTC | #1
On Fri, Jan 19, 2024 at 8:35 AM Steve French <smfrench@gmail.com> wrote:
>
> multichannel set of patches from Shyam.
>
> There are three additional patches of his that need more fixup, but
> these eight looked ok (I did minor updates to a few)
>
>
>
> --
> Thanks,
>
> Steve

Please hold off on the following patch till I do some more rounds of testing:
0004-cifs-cifs_pick_channel-should-try-selecting-active-c.patch

Rest looks good.
I'll send these out formally in some time with some additional patches.
diff mbox series

Patch

From 936eba9cfb5cfbf6a2c762cd163605f2b784e03e Mon Sep 17 00:00:00 2001
From: Shyam Prasad N <sprasad@microsoft.com>
Date: Wed, 17 Jan 2024 05:55:39 +0000
Subject: [PATCH 1/8] 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>
---
 fs/smb/client/cached_dir.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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)
-- 
2.40.1