diff options
author | Enzo Matsumiya <ematsumiya@suse.de> | 2025-06-22 17:04:10 -0300 |
---|---|---|
committer | Enzo Matsumiya <ematsumiya@suse.de> | 2025-06-22 17:04:10 -0300 |
commit | 5aea01db0af37260e4a0a0d17b6f22f4f1764d7e (patch) | |
tree | 62b2060c58bfd79ef6808103314933be93468f85 /fs/smb/client/connect.c | |
parent | d829bbabf99c4bfbdb82a1a8d24d71e76f3dd53b (diff) | |
download | linux-multichannel-fixes-v3.tar.gz linux-multichannel-fixes-v3.tar.bz2 linux-multichannel-fixes-v3.zip |
smb: client: multichannel picking WIPmultichannel-fixes-v3
Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
Diffstat (limited to 'fs/smb/client/connect.c')
-rw-r--r-- | fs/smb/client/connect.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/smb/client/connect.c b/fs/smb/client/connect.c index 90c8286ae39d..104e44092ceb 100644 --- a/fs/smb/client/connect.c +++ b/fs/smb/client/connect.c @@ -1751,6 +1751,7 @@ static int cifsd_start(struct TCP_Server_Info *server) if (!IS_ERR(server->tsk)) { cpumask_set_cpu(cifsd_cur_cpu, &cifsd_cpu_load); server->tsk_cpu = cifsd_cur_cpu = cpu; + pr_err("%s: starting on CPU %d\n", __func__, cpu); } else { ret = PTR_ERR(server->tsk); server->tsk = NULL; @@ -2180,10 +2181,12 @@ void __cifs_put_smb_ses(struct cifs_ses *ses) list_del_init(&ses->smb_ses_list); spin_unlock(&cifs_tcp_ses_lock); - pr_err("%s: channel changes %zu, fast %zu, slow %zu\n", __func__, ses->chan_changes, ses->fast_picks, ses->slow_picks); + pr_err("%s: channel changes %zu, fast %zu (first picks %zu), slow %zu\n", __func__, ses->chan_changes, ses->fast_picks, ses->fast_first, ses->slow_picks); /* close any extra channels */ + pr_err("%s: chan 0 used %zu times (recent cpu %zu)\n", __func__, ses->chans[0].used, ses->chans[0].same_cpu); for (i = 1; i < ses->chan_count; i++) { + pr_err("%s: chan %zu used %zu times (recent cpu %zu)\n", __func__, i, ses->chans[i].used, ses->chans[i].same_cpu); list_del_init(&ses->chans[i].head); if (ses->chans[i].iface) { kref_put(&ses->chans[i].iface->refcount, release_iface); @@ -2512,7 +2515,7 @@ retry_old_session: /* add server as first channel */ spin_lock(&ses->chan_lock); ses->chans[0].server = server; - list_add(&ses->chans[0].head, &ses->chans_lru); + list_add(&ses->chans[0].head, &ses->chans_prio); ses->chan_count = 1; ses->chan_max = ctx->multichannel ? ctx->max_channels:1; ses->chans_need_reconnect = 1; |