From nobody Thu Nov 27 13:59:27 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 B6BE32ED15D; Fri, 21 Nov 2025 17:02:35 +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=1763744555; cv=none; b=mCFzFmJlravIgZkOWErRU6pa59/DApe6Pd0QoXjJRnpXKJS2qDDpxoKiRhr84Stsd75RUZTukJMpZGpIjxcVGdSMkV9HurC7urjOrLskWf0QbHS+2ZoJTjh0JzU1rmUTT0/YNHWk4XKfUG3eROmhwnYTlYB6bhE1KZeqOBLLEK8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763744555; c=relaxed/simple; bh=0S2Dl/LwDiEUosVGC/2CWwzwI/BJ/rbvoLABLOoz4Jo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TvEHiV3PuQrV8R9btG8cL6giRYVds4WfjNM5I50W/DHgnMzKG0r95QYRQMFsVYCHcaoIN1uTvrC+M2thN8C1qh9JdhTusV1qT5VoNuFuK+BHpHudrjlSSooGyjruTkUJWEN5ZDA9S+4sZiH0umaL9XHYQ6F0kLw6XeaNeFXvFxo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=edUiglc1; 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="edUiglc1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 23F60C116C6; Fri, 21 Nov 2025 17:02:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1763744555; bh=0S2Dl/LwDiEUosVGC/2CWwzwI/BJ/rbvoLABLOoz4Jo=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=edUiglc18eTAHAXbz4xdaykCLWbkZGRNecOm9BKlIarDcfw5QdlErvL1rApCqvmpW ctGdrPQTlKk1N4SNtwFMXF5VyMCQPUTohzpK/7khpnFvKddJb6zTrAwkwIuZfskyRy Cfp6FWQwUQde1dUbxoDt+V8K1z4Kw3M4XnU9RRy3SYy5O+biqXMgh0NaTxPzcIOMf3 cCIFRjIclM6eNKZzrfOM60U2Qd/VreArsMshOi8eIF45Ig37rrWI6M95ZHsfRdkJV3 p6rrJ/gclgEVDn+xbiqeG1TJuCcJpCLavLtQ509PEN1YfpDDnMl1Dw7/5U5bEPB/x/ NFuKwRa4iof+A== From: "Matthieu Baerts (NGI0)" Date: Fri, 21 Nov 2025 18:02:01 +0100 Subject: [PATCH net-next 02/14] mptcp: factor-out cgroup data inherit helper 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: <20251121-net-next-mptcp-memcg-backlog-imp-v1-2-1f34b6c1e0b1@kernel.org> References: <20251121-net-next-mptcp-memcg-backlog-imp-v1-0-1f34b6c1e0b1@kernel.org> In-Reply-To: <20251121-net-next-mptcp-memcg-backlog-imp-v1-0-1f34b6c1e0b1@kernel.org> To: Eric Dumazet , Kuniyuki Iwashima , Paolo Abeni , Willem de Bruijn , "David S. Miller" , Jakub Kicinski , Simon Horman , David Ahern , Mat Martineau , Geliang Tang , Peter Krystad , Florian Westphal , Christoph Paasch Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, mptcp@lists.linux.dev, Davide Caratti , "Matthieu Baerts (NGI0)" X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2371; i=matttbe@kernel.org; h=from:subject:message-id; bh=5JqcFvBV+VrzUQAyfBZzw40qaie6ZII/3JwjK0LcD90=; b=owGbwMvMwCVWo/Th0Gd3rumMp9WSGDIVZgsJ3P3Osrfil7HAhK7ZBTNkNgTkZpkGrHf4J+T9M 0b/guLTjlIWBjEuBlkxRRbptsj8mc+reEu8/Cxg5rAygQxh4OIUgIlYFjP8s2krufNN/V+Y8e05 KyZsP77uAqvdt3nhz/UTNyVe/zvJKpKR4VUxw/KZfr2Gu328Q/3kH5g8fti758Tj8IjPn8OPp3+ fwgEA X-Developer-Key: i=matttbe@kernel.org; a=openpgp; fpr=E8CB85F76877057A6E27F77AF6B7824F4269A073 From: Paolo Abeni MPTCP will soon need the same functionality for passive sockets, factor them out in a common helper. No functional change intended. Signed-off-by: Paolo Abeni Reviewed-by: Geliang Tang Reviewed-by: Matthieu Baerts (NGI0) Signed-off-by: Matthieu Baerts (NGI0) --- net/mptcp/protocol.h | 2 ++ net/mptcp/subflow.c | 20 ++++++++++++-------- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index a23780ff670f..6d9de13c1f9c 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -707,6 +707,8 @@ mptcp_subflow_delegated_next(struct mptcp_delegated_act= ion *delegated) return ret; } =20 +void __mptcp_inherit_cgrp_data(struct sock *sk, struct sock *ssk); + int mptcp_is_enabled(const struct net *net); unsigned int mptcp_get_add_addr_timeout(const struct net *net); int mptcp_is_checksum_enabled(const struct net *net); diff --git a/net/mptcp/subflow.c b/net/mptcp/subflow.c index ddd0fc6fcf45..d98d151392d2 100644 --- a/net/mptcp/subflow.c +++ b/net/mptcp/subflow.c @@ -1712,21 +1712,25 @@ int __mptcp_subflow_connect(struct sock *sk, const = struct mptcp_pm_local *local, return err; } =20 -static void mptcp_attach_cgroup(struct sock *parent, struct sock *child) +void __mptcp_inherit_cgrp_data(struct sock *sk, struct sock *ssk) { #ifdef CONFIG_SOCK_CGROUP_DATA - struct sock_cgroup_data *parent_skcd =3D &parent->sk_cgrp_data, - *child_skcd =3D &child->sk_cgrp_data; + struct sock_cgroup_data *sk_cd =3D &sk->sk_cgrp_data, + *ssk_cd =3D &ssk->sk_cgrp_data; =20 /* only the additional subflows created by kworkers have to be modified */ - if (cgroup_id(sock_cgroup_ptr(parent_skcd)) !=3D - cgroup_id(sock_cgroup_ptr(child_skcd))) { - cgroup_sk_free(child_skcd); - *child_skcd =3D *parent_skcd; - cgroup_sk_clone(child_skcd); + if (cgroup_id(sock_cgroup_ptr(sk_cd)) !=3D + cgroup_id(sock_cgroup_ptr(ssk_cd))) { + cgroup_sk_free(ssk_cd); + *ssk_cd =3D *sk_cd; + cgroup_sk_clone(sk_cd); } #endif /* CONFIG_SOCK_CGROUP_DATA */ +} =20 +static void mptcp_attach_cgroup(struct sock *parent, struct sock *child) +{ + __mptcp_inherit_cgrp_data(parent, child); if (mem_cgroup_sockets_enabled) mem_cgroup_sk_inherit(parent, child); } --=20 2.51.0