From nobody Mon Oct 6 15:12:22 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B4524221FD2; Fri, 18 Jul 2025 22:07:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876444; cv=none; b=ltalxQFHWW77WFkSz1c3fI54yO64BC9xYQUeXVWU1x0rAzL1yg/Fp2VYDuAnnL9VUPlLN6bI6jiKrmEScLcT+UkcTDfUq5xxdfaoEUtrwlyQ4jcWLvlwk2G+C1nEdBcBjqxETo1dwoFt/vc0grM/+m6DwSW8JJjNbMBo3o/ifVM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876444; c=relaxed/simple; bh=420QYmMY0wmOtX/SXHLWfvY10xt3pIcBXfE3TtnLy2Q=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=trjOaJUOg4tPplTpgkDB0OKtzl1cJKweHP6Qg+qfFUf1OgxphC8Y5Vh6fuCVj2mn9tyKgTerlaU6jxAMJ6Cu/rokExMvqu4lJa4TX3z6LSXt2XfEMSh/EpUEWSfb56JTZISrP761O8ALIa1aKJJ4MCN2E0gSnNfi4IQmelkLGc8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=OCLtDpa+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="OCLtDpa+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E10D5C4CEF8; Fri, 18 Jul 2025 22:07:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752876444; bh=420QYmMY0wmOtX/SXHLWfvY10xt3pIcBXfE3TtnLy2Q=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=OCLtDpa+VTSP5eTlSD2mVu3F4/OVM9b9AU8Rm/FfvOPDvypOwghr9PZdvep1jlkbf HKUqrkaq1/STefdCHahb6S7XsW2An/BD2s7eJcJGTBvDHCABVw8nsqu+njiDrU10DQ JOhBNO4WeSCS+ZIKtxi7uEVyQbZi9EzzdnGJHhSsw3pbTiyPrrstX95KeHWEmm7aj1 5x1mAZcQvAY+bcsABnoH3zgxBHavJ9lAYcCsFu2dfGB2CkpT0TWwTkWSs7DBQIbiZW VQfXnX3N99PJF5LMMBJdQpIneoE8RxSslW5e48cqu1F1HUu7sbTnlC1qzU4CkDKw1E MLw9bUlMsEUMA== From: "Matthieu Baerts (NGI0)" Date: Sat, 19 Jul 2025 00:06:56 +0200 Subject: [PATCH net-next v2 1/4] mptcp: sockopt: drop redundant tcp_getsockopt Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250719-net-next-mptcp-tcp_maxseg-v2-1-8c910fbc5307@kernel.org> References: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> In-Reply-To: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> To: mptcp@lists.linux.dev, Mat Martineau , Geliang Tang , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Neal Cardwell , Kuniyuki Iwashima , David Ahern Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "Matthieu Baerts (NGI0)" , Geliang Tang X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1286; i=matttbe@kernel.org; h=from:subject:message-id; bh=qdD75UMq+XWOs/t4m+2jVqNG0JZGcjJknqKh4cn2e6I=; b=owGbwMvMwCVWo/Th0Gd3rumMp9WSGDKqjk6oOzZlW+2PBx12WpdmbNhx+9waXuZN56Sar51f+ NyvzbGGq6OUhUGMi0FWTJFFui0yf+bzKt4SLz8LmDmsTCBDGLg4BWAigssZ/nBmmzbJZKe/9ms0 +xXwv+ztrLcL/ijVzl8U/GLq3/x2jhWMDCfirub8i9216MuCRbMtPW+Jr55/barWh0s6yekz7x1 KmMcLAA== X-Developer-Key: i=matttbe@kernel.org; a=openpgp; fpr=E8CB85F76877057A6E27F77AF6B7824F4269A073 From: Geliang Tang tcp_getsockopt() is called twice in mptcp_getsockopt_first_sf_only() in different conditions, which makes the code a bit redundant. The first call to tcp_getsockopt() when the first subflow exists can be replaced by going to a new label "get" before the second call. Signed-off-by: Geliang Tang Reviewed-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) --- net/mptcp/sockopt.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/net/mptcp/sockopt.c b/net/mptcp/sockopt.c index 3caa0a9d3b3885ce6399570f2d98a2e8f103638d..afa54fba51e215bc2efb21f16ed= 7d0a0fb120972 100644 --- a/net/mptcp/sockopt.c +++ b/net/mptcp/sockopt.c @@ -914,10 +914,8 @@ static int mptcp_getsockopt_first_sf_only(struct mptcp= _sock *msk, int level, int =20 lock_sock(sk); ssk =3D msk->first; - if (ssk) { - ret =3D tcp_getsockopt(ssk, level, optname, optval, optlen); - goto out; - } + if (ssk) + goto get; =20 ssk =3D __mptcp_nmpc_sk(msk); if (IS_ERR(ssk)) { @@ -925,6 +923,7 @@ static int mptcp_getsockopt_first_sf_only(struct mptcp_= sock *msk, int level, int goto out; } =20 +get: ret =3D tcp_getsockopt(ssk, level, optname, optval, optlen); =20 out: --=20 2.50.0 From nobody Mon Oct 6 15:12:22 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9A7752236E3; Fri, 18 Jul 2025 22:07:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876447; cv=none; b=NpQXX/7X7sVnl+sgvVjIYGaov3+0Q3ngz/IjPuf7Rm9LD9B2k07qQeXr3jsuOeHCrhefxJZy9Xz1mZjzVzP0Fi8Ka9LYq0ZwU7VtY0CU6OzYxIG4rn6VLl5VOtCfytr+LJryU6hmr7xqxpvQuquNhX6WImt/p3KdjzF/G5dx+Xw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876447; c=relaxed/simple; bh=/SQtUJyCpLjbf+fckE/nrzvl+r8miFRFPNgU2sEtSZs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hefZavSF3tKi+9NEJKaT7x7dP8uvZyEC1F8xAJhGJ9NkLDhynIgqzsxBPC4QII+E9XhbxZSYmkwtYuzc1vj4BEOPeRSdYg652sXEMij47iqQ5gxTBeeGu2LW3nMqS4S07kNAqONoi8wrZSI2MlEZj6XRsFZw4o0lbzLeZ9/0198= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Lx8Ys5QY; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Lx8Ys5QY" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BD1F4C4CEF9; Fri, 18 Jul 2025 22:07:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752876447; bh=/SQtUJyCpLjbf+fckE/nrzvl+r8miFRFPNgU2sEtSZs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=Lx8Ys5QYkHmp2rZY76f0bnPRwRGeY37a5q1o0e6PwsQHTu5KPOuaxaXjE0UY/3lR7 oY//6LSBDM4syZDXtf+VLXaBEzx+DhL6u1dObTKKdAjW6JIyEGXoBO5WFFC1vgNhjB TVAgytCnaQbV8QbNHXA49HLSBjmyhj9LHqHCBxRTRAvkTp+n0Ko5zMlpwynOi+/wLn INj+Gdgj+nQlzbYKpqtkJIwQsEQSlHA5qqGrsjjBf36YulB2T3rWCPDasP3wljgapJ l1YvBOaMh0sxLBeMTq+FrzOMB2+z0aHO65h9si+c4xw6Trpt6H0NrNXJyaqKwoP+RA q6PgEYsOkOScA== From: "Matthieu Baerts (NGI0)" Date: Sat, 19 Jul 2025 00:06:57 +0200 Subject: [PATCH net-next v2 2/4] tcp: add tcp_sock_set_maxseg Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250719-net-next-mptcp-tcp_maxseg-v2-2-8c910fbc5307@kernel.org> References: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> In-Reply-To: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> To: mptcp@lists.linux.dev, Mat Martineau , Geliang Tang , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Neal Cardwell , Kuniyuki Iwashima , David Ahern Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "Matthieu Baerts (NGI0)" , Geliang Tang X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2363; i=matttbe@kernel.org; h=from:subject:message-id; bh=YqIJfnbK+sopMAVXCbVtu06VBqQwQt1h8xVTfpnCAag=; b=owGbwMvMwCVWo/Th0Gd3rumMp9WSGDKqjk5KbW6/nxu+yvPzlymT9Xn8n4tkCM7vmDnbQevM+ 9xrks89OkpZGMS4GGTFFFmk2yLzZz6v4i3x8rOAmcPKBDKEgYtTACbSKMvI0FudbLa8qsjvcZqP 9pJtjq8fmrSs36v7kafhWKa31oavBxj+10zJKrwY0dHkyz373B5PoQO8U1xcj/FrH4nx6lkbces bOwA= X-Developer-Key: i=matttbe@kernel.org; a=openpgp; fpr=E8CB85F76877057A6E27F77AF6B7824F4269A073 From: Geliang Tang Add a helper tcp_sock_set_maxseg() to directly set the TCP_MAXSEG sockopt from kernel space. This new helper will be used in the following patch from MPTCP. Signed-off-by: Geliang Tang Acked-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) --- Notes: - v2: Set the return value of tcp_sock_set_maxseg() to err. --- include/linux/tcp.h | 1 + net/ipv4/tcp.c | 23 ++++++++++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/include/linux/tcp.h b/include/linux/tcp.h index 1a5737b3753d06165bc71e257a261bcd7a0085ce..57e478bfaef20369f5dba1cff54= 0e52c9302ebf4 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h @@ -621,6 +621,7 @@ void tcp_sock_set_nodelay(struct sock *sk); void tcp_sock_set_quickack(struct sock *sk, int val); int tcp_sock_set_syncnt(struct sock *sk, int val); int tcp_sock_set_user_timeout(struct sock *sk, int val); +int tcp_sock_set_maxseg(struct sock *sk, int val); =20 static inline bool dst_tcp_usec_ts(const struct dst_entry *dst) { diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index 31149a0ac849192b46c67dd569efeeeb0a041a0b..71a956fbfc5533224ee00e792de= 2cfdccd4d40aa 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -3751,6 +3751,19 @@ int tcp_set_window_clamp(struct sock *sk, int val) return 0; } =20 +int tcp_sock_set_maxseg(struct sock *sk, int val) +{ + /* Values greater than interface MTU won't take effect. However + * at the point when this call is done we typically don't yet + * know which interface is going to be used + */ + if (val && (val < TCP_MIN_MSS || val > MAX_TCP_WINDOW)) + return -EINVAL; + + tcp_sk(sk)->rx_opt.user_mss =3D val; + return 0; +} + /* * Socket option code for TCP. */ @@ -3883,15 +3896,7 @@ int do_tcp_setsockopt(struct sock *sk, int level, in= t optname, =20 switch (optname) { case TCP_MAXSEG: - /* Values greater than interface MTU won't take effect. However - * at the point when this call is done we typically don't yet - * know which interface is going to be used - */ - if (val && (val < TCP_MIN_MSS || val > MAX_TCP_WINDOW)) { - err =3D -EINVAL; - break; - } - tp->rx_opt.user_mss =3D val; + err =3D tcp_sock_set_maxseg(sk, val); break; =20 case TCP_NODELAY: --=20 2.50.0 From nobody Mon Oct 6 15:12:22 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7F637224AF7; Fri, 18 Jul 2025 22:07:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876450; cv=none; b=Lbw3KpDjKnZW0JfrLQcsgUAhMyzJtL57+bKIo4XCzJxR9NGuK/t1WtzI3ldjnomkMz8XM4O90hgTtyG6njByj6bOZ8RhDhpbpqa3vcEQDBU1O5Ao3qXNIF0VFoNRtK6UlsrSa4pCNmCbc7lQScomE/xoT1NkgGZH2UUxsr+4f6c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876450; c=relaxed/simple; bh=7SSiioxiLII3ysPv2lQU8H4/tcSwpZwpPrA2dwJQOo4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AzfDbknP7JOhjh7YfzOXQSUTitHicjQwYGON+FUkQGuEO/977+RBfYV9OlFxqH7iuzU6RTEdPyoxiUGV4bnOBKJ14KkW1t+feN3dIwBG8418gX5906Ih8Qs+cIiEsnh3zgiRSkWp2nsDVed0lCqTMMCsdRW6ZISPw6AjVEPLB9Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uobIUb0+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uobIUb0+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 98B13C4CEF1; Fri, 18 Jul 2025 22:07:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752876450; bh=7SSiioxiLII3ysPv2lQU8H4/tcSwpZwpPrA2dwJQOo4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=uobIUb0+YbtLQs+1v53pxDykuTx0ov5UeHN7xcaIlhMOOqae/DhlW1LnEjal5YFWM S0QhPRTrErImAVqobraYb/vaExWZBGcUtgdEzWRmT9rtZoWap9uYpOOKlb6qVo2rg2 zMebLgwV+Zwb9FAtEgBp6O801Y/WXWk0CEWH+lJGV6NQfkdCsF1XB/YOuFIm6MG40l PG3MgaWl9YAZ9x0t8n/D0mnMUroCh7VsmfTTvVMU/cW5RxTNlmyiK8hzei4fRYIYtI QNlQGL0pHrbfhZE4pLUgJE9XBiX+cbkBD+oeBs9fAOy4v7l2/lXsg/AlfBRhDUEh8M p9f/NgWbxjCcw== From: "Matthieu Baerts (NGI0)" Date: Sat, 19 Jul 2025 00:06:58 +0200 Subject: [PATCH net-next v2 3/4] mptcp: add TCP_MAXSEG sockopt support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250719-net-next-mptcp-tcp_maxseg-v2-3-8c910fbc5307@kernel.org> References: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> In-Reply-To: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> To: mptcp@lists.linux.dev, Mat Martineau , Geliang Tang , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Neal Cardwell , Kuniyuki Iwashima , David Ahern Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "Matthieu Baerts (NGI0)" , Geliang Tang X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3663; i=matttbe@kernel.org; h=from:subject:message-id; bh=+DEK5/ZH1GKJo4HP82FajrZLT3Z02xFfmM9jAyFCTh0=; b=owGbwMvMwCVWo/Th0Gd3rumMp9WSGDKqjk65qOngXGReEPZTbm7CWjNFv9imdzx9nx5tbNBnf DbvHKNJRykLgxgXg6yYIot0W2T+zOdVvCVefhYwc1iZQIYwcHEKwERsaxn+6fzZfsJ1h8T7rEDn p6KnJIzezJ5meN3yQI/0naPOLa3MxxgZvtqUP4ry5kv+dGH33Wxzw4CW86UGG/nfz1xS26jc/OU 8OwA= X-Developer-Key: i=matttbe@kernel.org; a=openpgp; fpr=E8CB85F76877057A6E27F77AF6B7824F4269A073 From: Geliang Tang The TCP_MAXSEG socket option is currently not supported by MPTCP, mainly because it has never been requested before. But there are still valid use-cases, e.g. with HAProxy. This patch adds its support in MPTCP by propagating the value to all subflows. The get part looks at the value on the first subflow, to be as closed as possible to TCP. Only one value can be returned for the cached MSS, so this can come only from one subflow. Similar to mptcp_setsockopt_first_sf_only(), a generic helper mptcp_setsockopt_all_subflows() is added to set sockopt for each subflows of the mptcp socket. Add a new member for struct mptcp_sock to store the TCP_MAXSEG value, and return this value in getsockopt. Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/515 Signed-off-by: Geliang Tang Reviewed-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) --- Notes: - v2: make mptcp_setsockopt_all_sf() returns only once. --- net/mptcp/protocol.h | 1 + net/mptcp/sockopt.c | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index 6ec245fd2778ef30e0dc84d309d27ecd1f62e0d1..1a32edf6f34364eedd5d077eae7= a82a7db8c3a9e 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -326,6 +326,7 @@ struct mptcp_sock { int keepalive_cnt; int keepalive_idle; int keepalive_intvl; + int maxseg; struct work_struct work; struct sk_buff *ooo_last_skb; struct rb_root out_of_order_queue; diff --git a/net/mptcp/sockopt.c b/net/mptcp/sockopt.c index afa54fba51e215bc2efb21f16ed7d0a0fb120972..2c267aff95bec90d341de9f9e13= 6b9d2df9b8e13 100644 --- a/net/mptcp/sockopt.c +++ b/net/mptcp/sockopt.c @@ -798,6 +798,23 @@ static int mptcp_setsockopt_first_sf_only(struct mptcp= _sock *msk, int level, int return ret; } =20 +static int mptcp_setsockopt_all_sf(struct mptcp_sock *msk, int level, + int optname, sockptr_t optval, + unsigned int optlen) +{ + struct mptcp_subflow_context *subflow; + int ret =3D 0; + + mptcp_for_each_subflow(msk, subflow) { + struct sock *ssk =3D mptcp_subflow_tcp_sock(subflow); + + ret =3D tcp_setsockopt(ssk, level, optname, optval, optlen); + if (ret) + break; + } + return ret; +} + static int mptcp_setsockopt_sol_tcp(struct mptcp_sock *msk, int optname, sockptr_t optval, unsigned int optlen) { @@ -859,6 +876,11 @@ static int mptcp_setsockopt_sol_tcp(struct mptcp_sock = *msk, int optname, &msk->keepalive_cnt, val); break; + case TCP_MAXSEG: + msk->maxseg =3D val; + ret =3D mptcp_setsockopt_all_sf(msk, SOL_TCP, optname, optval, + optlen); + break; default: ret =3D -ENOPROTOOPT; } @@ -1406,6 +1428,9 @@ static int mptcp_getsockopt_sol_tcp(struct mptcp_sock= *msk, int optname, return mptcp_put_int_option(msk, optval, optlen, msk->notsent_lowat); case TCP_IS_MPTCP: return mptcp_put_int_option(msk, optval, optlen, 1); + case TCP_MAXSEG: + return mptcp_getsockopt_first_sf_only(msk, SOL_TCP, optname, + optval, optlen); } return -EOPNOTSUPP; } @@ -1552,6 +1577,7 @@ static void sync_socket_options(struct mptcp_sock *ms= k, struct sock *ssk) tcp_sock_set_keepidle_locked(ssk, msk->keepalive_idle); tcp_sock_set_keepintvl(ssk, msk->keepalive_intvl); tcp_sock_set_keepcnt(ssk, msk->keepalive_cnt); + tcp_sock_set_maxseg(ssk, msk->maxseg); =20 inet_assign_bit(TRANSPARENT, ssk, inet_test_bit(TRANSPARENT, sk)); inet_assign_bit(FREEBIND, ssk, inet_test_bit(FREEBIND, sk)); --=20 2.50.0 From nobody Mon Oct 6 15:12:22 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6C9D92264B8; Fri, 18 Jul 2025 22:07:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876453; cv=none; b=pmP7E2n0V2pcqGAtbHZ0Ex++PEpmsXf032dDof0y+d05PQkGk//cT/G36FlGHe6uWs8dd0+XWqbqx8n5/IH7Ta5WlQCvsLmmnt21LQWB0pqTr/i5wzG4wyqc0JlA314yNFCExW7Yj+5kIsrW4LrAODjWLCJaiajgWvovkm99I+Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752876453; c=relaxed/simple; bh=VFHMq/5snyRulbgLVAfNm9sRY7pyS+dRYaYaXX8B1VU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZixMP0psDCYRNxR8qrsncVCuAQmJFGjIksEGwbBR02ZtcuTUHle8mNbCcR5ikHBo+OAZTH/GRrT+QUYX/7uUpMJfO2zE+V8863dIvU7G0rg4CSrO3b3/WHYY9V9yxmhv6MCrkXOhy7B1y+/8Ym63GvEcNjqfJO/klx9MovNvk9Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rFQbtlrK; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rFQbtlrK" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 74ACFC4CEF6; Fri, 18 Jul 2025 22:07:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752876453; bh=VFHMq/5snyRulbgLVAfNm9sRY7pyS+dRYaYaXX8B1VU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=rFQbtlrKbOtJ78EDhQc926qkTbp64JUNdYHEi4WL2T1s8rjzJgROQKTQtUYPp2rV4 mJ6m6YzLLhTEVnvtG8CIS2Sui8zEhw2lBTWe9rdlzLiql0I1sLxxhTQ2UzgFt5kx5e HVU4tC7OctOdM3y3U/7k4hg7ePFKturK3bYME0G501AlaIdvB6QXPMGWdTn3s8sMtT 5zEp/9ZMlXwPV985ZvgebYJyMGyqY27WhQ8IffS2iWP2lVKbdFYJcRP5mQMtYqSTIo NLT7F1vrx6iDiMfIjUYp6fPTy/AGsQIoD2M9mPKe6tUpMrmPz0Ghs1xRpkJZCB/W1S tKlUdBNmecAiw== From: "Matthieu Baerts (NGI0)" Date: Sat, 19 Jul 2025 00:06:59 +0200 Subject: [PATCH net-next v2 4/4] mptcp: fix typo in a comment Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250719-net-next-mptcp-tcp_maxseg-v2-4-8c910fbc5307@kernel.org> References: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> In-Reply-To: <20250719-net-next-mptcp-tcp_maxseg-v2-0-8c910fbc5307@kernel.org> To: mptcp@lists.linux.dev, Mat Martineau , Geliang Tang , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Neal Cardwell , Kuniyuki Iwashima , David Ahern Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "Matthieu Baerts (NGI0)" , moyuanhao X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1302; i=matttbe@kernel.org; h=from:subject:message-id; bh=kXxCpxBoe193+fin7GD8gP/kJaiRnrkRTpUKWV/Vk6Y=; b=owGbwMvMwCVWo/Th0Gd3rumMp9WSGDKqjk59pfNNaHJe4KUHRdycUrZyrdWXO/s8vpSucd10/ eAsHTOHjlIWBjEuBlkxRRbptsj8mc+reEu8/Cxg5rAygQxh4OIUgIlclWT4Z/N+dk3j9F69/xsq jy08s2ZFyOOoT7ERBpvmzxS+xC3Ebc3wT93yodOmrSZ7DTLm9L9x+XqDPXVLzsvJNdPt3pxPLEk yZwIA X-Developer-Key: i=matttbe@kernel.org; a=openpgp; fpr=E8CB85F76877057A6E27F77AF6B7824F4269A073 From: moyuanhao This patch fixes the follow spelling mistake in a comment: greter -> greater Signed-off-by: moyuanhao Reviewed-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) --- Notes: - The same patch has already been sent to the netdev ML, but when net-next was closed: https://lore.kernel.org/20250530181004.261417-1-moyuanhao3676@163.com --- net/mptcp/protocol.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c index 2ad1c41e963ec30cccd8387201f622c4f4d4c471..6c448a0be9495b22ced4a2b51da= 2f80831040aba 100644 --- a/net/mptcp/protocol.c +++ b/net/mptcp/protocol.c @@ -1387,7 +1387,7 @@ struct sock *mptcp_subflow_get_send(struct mptcp_sock= *msk) * - estimate the faster flow linger time * - use the above to estimate the amount of byte transferred * by the faster flow - * - check that the amount of queued data is greter than the above, + * - check that the amount of queued data is greater than the above, * otherwise do not use the picked, slower, subflow * We select the subflow with the shorter estimated time to flush * the queued mem, which basically ensure the above. We just need --=20 2.50.0