Linux CIFS filesystem development
 help / color / mirror / Atom feed
From: aman1cifs@gmail.com
To: linux-cifs@vger.kernel.org, sfrench@samba.org, pc@manguebit.com,
	sprasad@microsoft.com, tom@talpey.com, ronniesahlberg@gmail.com,
	bharathsm@microsoft.com, psachdeva@microsoft.com
Cc: Aman <aman1@microsoft.com>
Subject: [PATCH 1/2] CIFS: Propagate min offload along with other parameters from primary to secondary channels.
Date: Thu,  6 Mar 2025 17:46:43 +0000	[thread overview]
Message-ID: <20250306174642.584848-2-aman1cifs@gmail.com> (raw)
In-Reply-To: <20250214124306.498808-1-aman1cifs@gmail.com>

From: Aman <aman1@microsoft.com>

In a multichannel setup, it was observed that a few fields were not being
copied over to the secondary channels, which impacted performance in cases
where these options were relevant but not properly synchronized. To address
this, this patch introduces copying the following parameters from the
primary channel to the secondary channels:

- min_offload
- compression.requested
- dfs_conn
- ignore_signature
- leaf_fullpath
- noblockcnt
- retrans
- sign

By copying these parameters, we ensure consistency across channels and
prevent performance degradation due to missing or outdated settings.

Signed-off-by: Aman <aman1@microsoft.com>
---
 fs/smb/client/connect.c | 1 +
 fs/smb/client/sess.c    | 7 +++++++
 2 files changed, 8 insertions(+)

diff --git a/fs/smb/client/connect.c b/fs/smb/client/connect.c
index eaa6be445..eb82458eb 100644
--- a/fs/smb/client/connect.c
+++ b/fs/smb/client/connect.c
@@ -1721,6 +1721,7 @@ cifs_get_tcp_session(struct smb3_fs_context *ctx,
 	/* Grab netns reference for this server. */
 	cifs_set_net_ns(tcp_ses, get_net(current->nsproxy->net_ns));
 
+	tcp_ses->sign = ctx->sign;
 	tcp_ses->conn_id = atomic_inc_return(&tcpSesNextId);
 	tcp_ses->noblockcnt = ctx->rootfs;
 	tcp_ses->noblocksnd = ctx->noblocksnd || ctx->rootfs;
diff --git a/fs/smb/client/sess.c b/fs/smb/client/sess.c
index 91d4d409c..b4d76a37a 100644
--- a/fs/smb/client/sess.c
+++ b/fs/smb/client/sess.c
@@ -522,6 +522,13 @@ cifs_ses_add_channel(struct cifs_ses *ses,
 	ctx->sockopt_tcp_nodelay = ses->server->tcp_nodelay;
 	ctx->echo_interval = ses->server->echo_interval / HZ;
 	ctx->max_credits = ses->server->max_credits;
+	ctx->min_offload = ses->server->min_offload;
+	ctx->compress = ses->server->compression.requested;
+	ctx->dfs_conn = ses->server->dfs_conn;
+	ctx->ignore_signature = ses->server->ignore_signature;
+	ctx->leaf_fullpath = ses->server->leaf_fullpath;
+	ctx->rootfs = ses->server->noblockcnt;
+	ctx->retrans = ses->server->retrans;
 
 	/*
 	 * This will be used for encoding/decoding user/domain/pw
-- 
2.43.0


  parent reply	other threads:[~2025-03-06 17:47 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-14 12:43 [PATCH 1/2] CIFS: Propagate min offload along with other parameters from primary to secondary channels aman1cifs
2025-02-14 12:43 ` [PATCH 2/2] CIFS: adds min_offload and other params to cifs_debug aman1cifs
2025-02-14 17:55   ` Steve French
2025-02-27 16:33 ` [PATCH 1/2] CIFS: Propagate min offload along with other parameters from primary to secondary channels Paulo Alcantara
2025-03-06 17:46 ` aman1cifs [this message]
2025-03-11  3:25   ` Steve French
2025-03-11 11:21     ` aman
     [not found] <Z66BwJnHAI8zDOzP@linuxbox.oloxx3b4wsrernbskgt3tooxxe.gx.internal.cloudapp.net>
2025-03-28  6:13 ` aman1cifs
2025-03-28  7:19   ` Shyam Prasad N

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250306174642.584848-2-aman1cifs@gmail.com \
    --to=aman1cifs@gmail.com \
    --cc=aman1@microsoft.com \
    --cc=bharathsm@microsoft.com \
    --cc=linux-cifs@vger.kernel.org \
    --cc=pc@manguebit.com \
    --cc=psachdeva@microsoft.com \
    --cc=ronniesahlberg@gmail.com \
    --cc=sfrench@samba.org \
    --cc=sprasad@microsoft.com \
    --cc=tom@talpey.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox