From nobody Mon May  5 06:44:26 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 4624E1C07C8
	for <mptcp@lists.linux.dev>; Sun,  2 Feb 2025 04:36:05 +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=1738470965; cv=none;
 b=V3qB5sOE8XExKOfv32IWhUROhkub2eKCBlD0oz8ulvYmDkbjY+pwqlHuTdF7Ba9MfKzUn48MhDz67XJuPoKfmYjn4lBy+A8GiyiZrJz9t4WkbjI2P+ZIUwkfl7CAJ4HLQIn/y8PoAYt0JTXEFkR0C6VAtblq9oEaPPdsUktC6ps=
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
	s=arc-20240116; t=1738470965; c=relaxed/simple;
	bh=7+9tzmSBEyJZstB88VcME9Hams9OlyqDoObVFKD9GZM=;
	h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
	 MIME-Version;
 b=YCDnuKt+yOUfc2ZqhSVMlYBBE5KhyhRYov6A6CwFd2YGv+lNGVm7X4pCoYrUXxSY4OFpl9RE6erd5pVawdNyQfZvppCtPT+YAm3/29RFWO9kUwgdMJzjmNUPqkuUWM6Vh8yCuQixbf8KTGNbKD5OrshbfYH5a+sY7pPoT2dLDO4=
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
 dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
 header.b=hA2xF4zj; 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="hA2xF4zj"
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 53EA6C4CED2;
	Sun,  2 Feb 2025 04:36:04 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1738470965;
	bh=7+9tzmSBEyJZstB88VcME9Hams9OlyqDoObVFKD9GZM=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=hA2xF4zjqXjM9+J/xPttin+BBblYrUwAsG7D9DbXVKUWS+Ni3zzgwQCE5MOTdstP2
	 2MPLLpP7ac5tgIzFAr5naZ0kr+iI1ITCJ3q+Cv1/mjQDXhG6KgbTF/tPI0HxwH6rH+
	 ild0N2kD/hiUpcgPl3DAcxYpBCSP+f9EQ0d0aWxfrKofPCb24qPPOZCM8djnx//4k8
	 yXY2EJzcyXYK0InZ7UHTg8NKxxGXCEOqV3wzDRNrSoITUv3lvPuyf67XYZblPPMcu/
	 aTlNF+gWQmOQi8t4bwhNPUHT/u4KGmm2AmdFiYqYMPD/tmlYXZIpoMRPKobSmygDYZ
	 XMWurLVok8VtA==
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v2 1/5] Revert "bpf: Extend bpf_skc_to_mptcp_sock
 to MPTCP sock"
Date: Sun,  2 Feb 2025 12:35:07 +0800
Message-ID: 
 <d18b087f8bc283ac0c5c224b3626b8ddd018092e.1738470660.git.tanggeliang@kylinos.cn>
X-Mailer: git-send-email 2.43.0
In-Reply-To: <cover.1738470660.git.tanggeliang@kylinos.cn>
References: <cover.1738470660.git.tanggeliang@kylinos.cn>
Precedence: bulk
X-Mailing-List: mptcp@lists.linux.dev
List-Id: <mptcp.lists.linux.dev>
List-Subscribe: <mailto:mptcp+subscribe@lists.linux.dev>
List-Unsubscribe: <mailto:mptcp+unsubscribe@lists.linux.dev>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

From: Geliang Tang <tanggeliang@kylinos.cn>

bpf_core_cast() can be used in mptcp_subflow bpf_iter selftests to get the
msk, instead of using bpf_skc_to_mptcp_sock(). No need to add this patch
anymore, revert it.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
 include/net/mptcp.h |  4 ++--
 net/core/filter.c   |  2 +-
 net/mptcp/bpf.c     | 10 ++--------
 3 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/include/net/mptcp.h b/include/net/mptcp.h
index 72d6e6597add..2c85ca92bb1c 100644
--- a/include/net/mptcp.h
+++ b/include/net/mptcp.h
@@ -323,9 +323,9 @@ static inline void mptcpv6_handle_mapped(struct sock *s=
k, bool mapped) { }
 #endif
=20
 #if defined(CONFIG_MPTCP) && defined(CONFIG_BPF_SYSCALL)
-struct mptcp_sock *bpf_mptcp_sock_from_sock(struct sock *sk);
+struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock *sk);
 #else
-static inline struct mptcp_sock *bpf_mptcp_sock_from_sock(struct sock *sk)=
 { return NULL; }
+static inline struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock *=
sk) { return NULL; }
 #endif
=20
 #if !IS_ENABLED(CONFIG_MPTCP)
diff --git a/net/core/filter.c b/net/core/filter.c
index fc094e8d53d3..2ec162dd83c4 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -11843,7 +11843,7 @@ const struct bpf_func_proto bpf_skc_to_unix_sock_pr=
oto =3D {
 BPF_CALL_1(bpf_skc_to_mptcp_sock, struct sock *, sk)
 {
 	BTF_TYPE_EMIT(struct mptcp_sock);
-	return (unsigned long)bpf_mptcp_sock_from_sock(sk);
+	return (unsigned long)bpf_mptcp_sock_from_subflow(sk);
 }
=20
 const struct bpf_func_proto bpf_skc_to_mptcp_sock_proto =3D {
diff --git a/net/mptcp/bpf.c b/net/mptcp/bpf.c
index be222fa5f308..7e9d9c9a04cf 100644
--- a/net/mptcp/bpf.c
+++ b/net/mptcp/bpf.c
@@ -195,15 +195,9 @@ static struct bpf_struct_ops bpf_mptcp_sched_ops =3D {
 };
 #endif /* CONFIG_BPF_JIT */
=20
-struct mptcp_sock *bpf_mptcp_sock_from_sock(struct sock *sk)
+struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock *sk)
 {
-	if (unlikely(!sk || !sk_fullsock(sk)))
-		return NULL;
-
-	if (sk->sk_protocol =3D=3D IPPROTO_MPTCP)
-		return mptcp_sk(sk);
-
-	if (sk->sk_protocol =3D=3D IPPROTO_TCP && sk_is_mptcp(sk))
+	if (sk && sk_fullsock(sk) && sk->sk_protocol =3D=3D IPPROTO_TCP && sk_is_=
mptcp(sk))
 		return mptcp_sk(mptcp_subflow_ctx(sk)->conn);
=20
 	return NULL;
--=20
2.43.0
From nobody Mon May  5 06:44:26 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 94EC31CAA8B
	for <mptcp@lists.linux.dev>; Sun,  2 Feb 2025 04:36:06 +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=1738470966; cv=none;
 b=iTQ7yFcAqCvovt40luWGOL0v2sdUdc0XiIdJ13Ro/i1lQd6cNvtHyfdP22WKZ564IxsPjqetBm2jIcA8/8muE5TNYrz2TfKFCMnbko0CJVM4qJp+3Ok6M4TpHCkDi2jTi+/10ala3iMPWe04v1k7aAgLuwWpDORRUWPtfqdnS78=
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
	s=arc-20240116; t=1738470966; c=relaxed/simple;
	bh=Y/nSLpzRC0NZxGyn2KF0Yxwg1I5WdIB6hNFwT4Y3kEw=;
	h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
	 MIME-Version;
 b=scOiQ8NYIft1aihaFGLc1YJ8ogp6REx6BIiIwyzvUkH1c+n94QjI6y1iy/4gX6m+eaOPF2xMcQEnTkjWP/7Oo3vCNlIi6eRXmbaxOH0p47nBHXj3FndElt2vYM0nrAYRqz/elZE6XlUBYe1Gx3+GELWTe+ErGkMykKVw5T99hDo=
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
 dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
 header.b=gHmUzBay; 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="gHmUzBay"
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A4926C4CED2;
	Sun,  2 Feb 2025 04:36:05 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1738470966;
	bh=Y/nSLpzRC0NZxGyn2KF0Yxwg1I5WdIB6hNFwT4Y3kEw=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=gHmUzBay+3sFY9hpmzpnM9MU+mYGibNh+7+qI0+cx6SFdNoJt7lqM2vYr09PNJyfT
	 PUKUx73YJ0o/edH7s2N0FsZaq2Tv5jKd5Y2x3eRAXpwqVf1lt9zZjHXVmy53NN1DyR
	 eclle5E+v4DLzV4Ygp6m4w0Y8fO2/7Vm4FWqBaNfwUv2pbm2JDNaw0x8ndR5WskYp3
	 ukM+DzdzBG4N6KaoMI6IasIDSyVVIxUbIVx2lAxrCHpr/wJ9CtnFtT141O0m2Bfg2t
	 fEg/nf4oYHV4qxW3ciEkaM+GZRvO+jOGPBaLwLDkygIR1Reumjd4dApxB9Vohoojqg
	 JvFilHjem/vLA==
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v2 2/5] Revert "bpf: Allow use of skc_to_mptcp_sock
 in cg_sockopt"
Date: Sun,  2 Feb 2025 12:35:08 +0800
Message-ID: 
 <af3a4509bca7ded4444861ec2c9a009f3b4afc7e.1738470660.git.tanggeliang@kylinos.cn>
X-Mailer: git-send-email 2.43.0
In-Reply-To: <cover.1738470660.git.tanggeliang@kylinos.cn>
References: <cover.1738470660.git.tanggeliang@kylinos.cn>
Precedence: bulk
X-Mailing-List: mptcp@lists.linux.dev
List-Id: <mptcp.lists.linux.dev>
List-Subscribe: <mailto:mptcp+subscribe@lists.linux.dev>
List-Unsubscribe: <mailto:mptcp+unsubscribe@lists.linux.dev>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

From: Geliang Tang <tanggeliang@kylinos.cn>

bpf_core_cast() can be used in mptcp_subflow bpf_iter selftests to get the
msk, instead of using bpf_skc_to_mptcp_sock(). No need to add this patch
anymore, revert it.

This reverts commit d8d42f5a4542c2dc31e4e00c58508a821c6ab789.
---
 kernel/bpf/cgroup.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/kernel/bpf/cgroup.c b/kernel/bpf/cgroup.c
index 1ca22e4842cf..46e5db65dbc8 100644
--- a/kernel/bpf/cgroup.c
+++ b/kernel/bpf/cgroup.c
@@ -2358,8 +2358,6 @@ cg_sockopt_func_proto(enum bpf_func_id func_id, const=
 struct bpf_prog *prog)
 #ifdef CONFIG_INET
 	case BPF_FUNC_tcp_sock:
 		return &bpf_tcp_sock_proto;
-	case BPF_FUNC_skc_to_mptcp_sock:
-		return &bpf_skc_to_mptcp_sock_proto;
 #endif
 	case BPF_FUNC_perf_event_output:
 		return &bpf_event_output_data_proto;
--=20
2.43.0
From nobody Mon May  5 06:44:26 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 DCD741CAA84
	for <mptcp@lists.linux.dev>; Sun,  2 Feb 2025 04:36:07 +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=1738470967; cv=none;
 b=BvijbZvxN5T1s+/HqffXdqDetFIOejozLznxwmxoRTkf6jgzcL69A5Zd7Wp22M7nPVb6Zdri88q8dQ9YzmG4A5NJTjS3zK+YNFbqbRShQOshUf00xZQIJC0/P5OzuLaaNOKHVlaYX+/pH0zz+J2F9kKoJ/jE8eLCtT3lqwKjyMI=
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
	s=arc-20240116; t=1738470967; c=relaxed/simple;
	bh=AlZ/IX+19BzIw4KGnMnChGJpo9RGvmipFLmqNjBj1aQ=;
	h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
	 MIME-Version;
 b=ZsupHJBf19gIMvkszW/fhspNBRQe2kw52HHGEgn91ZKVJsAbQFFGHuxzMK0p8X4esUbmEne1i118uncjSQ1ffWy/WrGu3MFOPkWWdkAONIauK1HW+nvWs6Kwckknm5CN4HrFQ7nSXOyEgXfvQOVybfIYPThTXyfEBMHUeXP9JEU=
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
 dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
 header.b=hBjtyMWp; 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="hBjtyMWp"
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0150AC4CED1;
	Sun,  2 Feb 2025 04:36:06 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1738470967;
	bh=AlZ/IX+19BzIw4KGnMnChGJpo9RGvmipFLmqNjBj1aQ=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=hBjtyMWp7Dxzu3hIuen16xexfzwQ+6+kRJTdkWP1MXjWn8L10rwEbc9XjfwYp1HvR
	 XzV9jRyEBj1KU+Xv3oNNy30sT9LIv2NZ4ndXnaJaLV5VP0WIDtBjYJEzq1vItQCYYp
	 bz2X9mxzguirTdRjorC9EVLhMYtQYqALW/t8BK4DDCfM+zGkrDLcOmFGGF/D7kLt57
	 wRVMcH8kUEPmqr6Icn9cB//MJyncRhsFzYuB99dkx5BeA1OfMtN2My21/hOw1WxJJS
	 Dh2r2HMmkso3JX7uhoVYcesjzc+ZKVCkfzLpHMs7eJupsnddLflu6sBceirb/XzE+t
	 p3BnYI+Kl72TA==
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v2 3/5] Squash to "bpf: Add mptcp_subflow bpf_iter"
Date: Sun,  2 Feb 2025 12:35:09 +0800
Message-ID: 
 <3af2d8f14fc6870ba12201ee2885b2f509e4e85b.1738470660.git.tanggeliang@kylinos.cn>
X-Mailer: git-send-email 2.43.0
In-Reply-To: <cover.1738470660.git.tanggeliang@kylinos.cn>
References: <cover.1738470660.git.tanggeliang@kylinos.cn>
Precedence: bulk
X-Mailing-List: mptcp@lists.linux.dev
List-Id: <mptcp.lists.linux.dev>
List-Subscribe: <mailto:mptcp+subscribe@lists.linux.dev>
List-Unsubscribe: <mailto:mptcp+unsubscribe@lists.linux.dev>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

From: Geliang Tang <tanggeliang@kylinos.cn>

Drop the NULL check as Martin suggested.

Use the "struct sock *sk" instead of "struct mptcp-sock *msk" as the
argument in the bpf_iter_mptcp_subflow_new as Martin suggested.

Use msk_owned_by_me().

v2:
 - check the owner before assigning the msk as Mat suggested.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
 net/mptcp/bpf.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/net/mptcp/bpf.c b/net/mptcp/bpf.c
index 7e9d9c9a04cf..c0ac11f611b0 100644
--- a/net/mptcp/bpf.c
+++ b/net/mptcp/bpf.c
@@ -235,24 +235,26 @@ bpf_mptcp_subflow_ctx(const struct sock *sk)
=20
 __bpf_kfunc static int
 bpf_iter_mptcp_subflow_new(struct bpf_iter_mptcp_subflow *it,
-			   struct mptcp_sock *msk)
+			   struct sock *sk)
 {
 	struct bpf_iter_mptcp_subflow_kern *kit =3D (void *)it;
-	struct sock *sk =3D (struct sock *)msk;
+	struct mptcp_sock *msk;
=20
 	BUILD_BUG_ON(sizeof(struct bpf_iter_mptcp_subflow_kern) >
 		     sizeof(struct bpf_iter_mptcp_subflow));
 	BUILD_BUG_ON(__alignof__(struct bpf_iter_mptcp_subflow_kern) !=3D
 		     __alignof__(struct bpf_iter_mptcp_subflow));
=20
-	kit->msk =3D msk;
-	if (!msk)
+	if (unlikely(!sk || !sk_fullsock(sk)))
 		return -EINVAL;
=20
-	if (!sock_owned_by_user_nocheck(sk) &&
-	    !spin_is_locked(&sk->sk_lock.slock))
+	if (sk->sk_protocol !=3D IPPROTO_MPTCP)
 		return -EINVAL;
=20
+	msk =3D mptcp_sk(sk);
+	msk_owned_by_me(msk);
+
+	kit->msk =3D msk;
 	kit->pos =3D &msk->conn_list;
 	return 0;
 }
--=20
2.43.0
From nobody Mon May  5 06:44:26 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 3964B1CAA84
	for <mptcp@lists.linux.dev>; Sun,  2 Feb 2025 04:36:09 +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=1738470969; cv=none;
 b=RrRs2W9OUZQep58yMFGvuuXGdMHPcVB8TG+P9dGBqnmf/7duLCR/UY/woIeKXEHDuwXySh3+N+62cMuYpZisY7HvM9vkLwBFIcOXiU+qOIbuwD/rCQqaYTD5Y7VZhIr4fAXKhYrW1xy1OoihRNF84HrOA55UDoheBxOblikZnVI=
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
	s=arc-20240116; t=1738470969; c=relaxed/simple;
	bh=f8dTKPfnG9ZPz08IOWZ/i1ldFiBG8mEHo3twTxc7vH0=;
	h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
	 MIME-Version;
 b=tKO82j9nu1smJ4xMBVEISg9IXSgHPpw1crkGAOgEMtQ5CafPB/cEvI652NMguEWeY77zskt0oEq+vgRMrzHiFon2kUWI/vo2ZAumUSlbsAihTnbTjXVUCdNLERau/5wfgcd5jV+d5NjTzC1p+iz0nOMXKLv6i47aL+B49feVOrk=
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
 dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
 header.b=XbN80OXF; 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="XbN80OXF"
Received: by smtp.kernel.org (Postfix) with ESMTPSA id 45B12C4CEE3;
	Sun,  2 Feb 2025 04:36:08 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1738470969;
	bh=f8dTKPfnG9ZPz08IOWZ/i1ldFiBG8mEHo3twTxc7vH0=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=XbN80OXFzA/JLUMoYqwLZc/skRc0aIcfeTraDB3atWeKTDM+fHDhAkLxdG2C/1Ehw
	 SjbxMyOOKXmOBh8E9FQdv7IqYEjfhTDIO4mfvpEG61Xt2YyEt1wMewehEKeXvkO4Tr
	 p9VPqDraDZ1ACWaZ6Hbx1/cQtexCK2rOeJmkOLm0o6WPVxL95RzcbBY31O5V1RhCCk
	 JziXPAXVw+hWpFNtJkr+SlfuvZHD185rJ0/6MHMLrOBFYn4kaaDvzL554N3ncUx33S
	 nvrLrMZ26TdnIP7PSpEvv9rgxMnU8DYCnSnY+JazqhoZMDbHxbpe84n4H+QFQalTDH
	 fBUVl8mN1BZ9Q==
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v2 4/5] Revert "bpf: Acquire and release mptcp
 socket"
Date: Sun,  2 Feb 2025 12:35:10 +0800
Message-ID: 
 <fe7228964295fd898a3e1468231709cfd5386d23.1738470660.git.tanggeliang@kylinos.cn>
X-Mailer: git-send-email 2.43.0
In-Reply-To: <cover.1738470660.git.tanggeliang@kylinos.cn>
References: <cover.1738470660.git.tanggeliang@kylinos.cn>
Precedence: bulk
X-Mailing-List: mptcp@lists.linux.dev
List-Id: <mptcp.lists.linux.dev>
List-Subscribe: <mailto:mptcp+subscribe@lists.linux.dev>
List-Unsubscribe: <mailto:mptcp+unsubscribe@lists.linux.dev>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

From: Geliang Tang <tanggeliang@kylinos.cn>

Drop this patch as Martin suggested.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
 net/mptcp/bpf.c | 19 -------------------
 1 file changed, 19 deletions(-)

diff --git a/net/mptcp/bpf.c b/net/mptcp/bpf.c
index c0ac11f611b0..a74173cc8998 100644
--- a/net/mptcp/bpf.c
+++ b/net/mptcp/bpf.c
@@ -276,23 +276,6 @@ bpf_iter_mptcp_subflow_destroy(struct bpf_iter_mptcp_s=
ubflow *it)
 {
 }
=20
-__bpf_kfunc static struct
-mptcp_sock *bpf_mptcp_sock_acquire(struct mptcp_sock *msk)
-{
-	struct sock *sk =3D (struct sock *)msk;
-
-	if (sk && refcount_inc_not_zero(&sk->sk_refcnt))
-		return msk;
-	return NULL;
-}
-
-__bpf_kfunc static void bpf_mptcp_sock_release(struct mptcp_sock *msk)
-{
-	struct sock *sk =3D (struct sock *)msk;
-
-	WARN_ON_ONCE(!sk || !refcount_dec_not_one(&sk->sk_refcnt));
-}
-
 __bpf_kfunc struct mptcp_subflow_context *
 bpf_mptcp_subflow_ctx_by_pos(const struct mptcp_sched_data *data, unsigned=
 int pos)
 {
@@ -313,8 +296,6 @@ BTF_ID_FLAGS(func, bpf_mptcp_subflow_ctx, KF_RET_NULL)
 BTF_ID_FLAGS(func, bpf_iter_mptcp_subflow_new, KF_ITER_NEW | KF_TRUSTED_AR=
GS)
 BTF_ID_FLAGS(func, bpf_iter_mptcp_subflow_next, KF_ITER_NEXT | KF_RET_NULL)
 BTF_ID_FLAGS(func, bpf_iter_mptcp_subflow_destroy, KF_ITER_DESTROY)
-BTF_ID_FLAGS(func, bpf_mptcp_sock_acquire, KF_ACQUIRE | KF_RET_NULL)
-BTF_ID_FLAGS(func, bpf_mptcp_sock_release, KF_RELEASE)
 BTF_KFUNCS_END(bpf_mptcp_common_kfunc_ids)
=20
 static const struct btf_kfunc_id_set bpf_mptcp_common_kfunc_set =3D {
--=20
2.43.0
From nobody Mon May  5 06:44:26 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 89F901C07C8
	for <mptcp@lists.linux.dev>; Sun,  2 Feb 2025 04:36:10 +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=1738470970; cv=none;
 b=Bde+I2Y3ggUG/ksmlqvcphb+nWX2xY4dj3lgkGpOzDsJz0AgJdAZTvkqr/U1UO0P0NLAxBTwh46TwquSJw5CAsbujdZeDnHsOk7WXOJCo1zUFQMtA6K13gtjpUywAP5/RzWaIWml/dr2pvrvUMLZMCThAB2jaa0X1F1SugQlEZw=
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
	s=arc-20240116; t=1738470970; c=relaxed/simple;
	bh=7QzOLXpGKUMbyhs+AvYypVItCDLQIAUOdG7nJ3xnPII=;
	h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:
	 MIME-Version;
 b=DXDlUplMCsl7zN0QFDJ31UjtbXq/c6fMRP/74fYAxWSMsQ5hus+DIKOcqJveVnOjj513xHoFtNrPX5AQKje/AWdMtlbJouHKSwCmPsiGGaygYwhtC0yh2cTH4uC08dMiQ2q8IwDHkoVKvxF7XJGdx89UBHnMxIB9r4YBBvL+9Js=
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org;
 dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org
 header.b=AtdIw3u3; 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="AtdIw3u3"
Received: by smtp.kernel.org (Postfix) with ESMTPSA id A3234C4CED1;
	Sun,  2 Feb 2025 04:36:09 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;
	s=k20201202; t=1738470970;
	bh=7QzOLXpGKUMbyhs+AvYypVItCDLQIAUOdG7nJ3xnPII=;
	h=From:To:Cc:Subject:Date:In-Reply-To:References:From;
	b=AtdIw3u3g7Ym0UT3Hk0t4hDbS7ODbD5/KHlmQy7J76eTorU5PObYSFra/cszkJfKf
	 fElB0RqxTKeDxDFErIKhKYozOmPOYCN2Zivx/7TV3yU7NWrTeQN8l01jCtrtEGgG8d
	 fiE/jWRHt5EoGZij8KoajjksN0pi7je+4yniYXLRLfdbSl1tfHzJ0TIq1b6M95ruwJ
	 RqD1Gi50A+FgpgiT1oPk3jcWZnbg7cd/v1KFTPrZNhOo7YYH+5BhuubwLeqe0KhkyU
	 PTo/+MipIt4+wHDs34DbEAywlVAD4uy5L17ClUR9uwREVFwmZiVq4yvw7NFUyhyOTH
	 pgIKPucsUkNBg==
From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v2 5/5] Squash to "selftests/bpf: Add mptcp_subflow
 bpf_iter subtest"
Date: Sun,  2 Feb 2025 12:35:11 +0800
Message-ID: 
 <b5fee152138c047d02911d31e12d7f5616ae56f2.1738470660.git.tanggeliang@kylinos.cn>
X-Mailer: git-send-email 2.43.0
In-Reply-To: <cover.1738470660.git.tanggeliang@kylinos.cn>
References: <cover.1738470660.git.tanggeliang@kylinos.cn>
Precedence: bulk
X-Mailing-List: mptcp@lists.linux.dev
List-Id: <mptcp.lists.linux.dev>
List-Subscribe: <mailto:mptcp+subscribe@lists.linux.dev>
List-Unsubscribe: <mailto:mptcp+unsubscribe@lists.linux.dev>
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

From: Geliang Tang <tanggeliang@kylinos.cn>

Use bpf_core_cast() instead of bpf_skc_to_mptcp_sock().
Change the 2nd parameter type of bpf_for_each() as 'struct sock'.
Drop bpf_mptcp_sock_acquire/release.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
---
 tools/testing/selftests/bpf/bpf_experimental.h      | 2 +-
 tools/testing/selftests/bpf/progs/mptcp_bpf.h       | 3 ---
 tools/testing/selftests/bpf/progs/mptcp_bpf_iters.c | 8 ++------
 3 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/tools/testing/selftests/bpf/bpf_experimental.h b/tools/testing=
/selftests/bpf/bpf_experimental.h
index 2ab3f0063c0f..6a96c56f0725 100644
--- a/tools/testing/selftests/bpf/bpf_experimental.h
+++ b/tools/testing/selftests/bpf/bpf_experimental.h
@@ -577,7 +577,7 @@ extern void bpf_iter_css_destroy(struct bpf_iter_css *i=
t) __weak __ksym;
=20
 struct bpf_iter_mptcp_subflow;
 extern int bpf_iter_mptcp_subflow_new(struct bpf_iter_mptcp_subflow *it,
-				      struct mptcp_sock *msk) __weak __ksym;
+				      struct sock *sk) __weak __ksym;
 extern struct mptcp_subflow_context *
 bpf_iter_mptcp_subflow_next(struct bpf_iter_mptcp_subflow *it) __weak __ks=
ym;
 extern void
diff --git a/tools/testing/selftests/bpf/progs/mptcp_bpf.h b/tools/testing/=
selftests/bpf/progs/mptcp_bpf.h
index b1f6e1fb467e..ede9111ee597 100644
--- a/tools/testing/selftests/bpf/progs/mptcp_bpf.h
+++ b/tools/testing/selftests/bpf/progs/mptcp_bpf.h
@@ -43,9 +43,6 @@ mptcp_subflow_tcp_sock(const struct mptcp_subflow_context=
 *subflow)
 }
=20
 /* ksym */
-extern struct mptcp_sock *bpf_mptcp_sock_acquire(struct mptcp_sock *msk) _=
_ksym;
-extern void bpf_mptcp_sock_release(struct mptcp_sock *msk) __ksym;
-
 extern struct mptcp_subflow_context *
 bpf_mptcp_subflow_ctx(const struct sock *sk) __ksym;
 extern struct sock *
diff --git a/tools/testing/selftests/bpf/progs/mptcp_bpf_iters.c b/tools/te=
sting/selftests/bpf/progs/mptcp_bpf_iters.c
index fd5691a4073b..2c0d11cb9864 100644
--- a/tools/testing/selftests/bpf/progs/mptcp_bpf_iters.c
+++ b/tools/testing/selftests/bpf/progs/mptcp_bpf_iters.c
@@ -24,14 +24,11 @@ int iters_subflow(struct bpf_sockopt *ctx)
 	if (ctx->level !=3D SOL_TCP || ctx->optname !=3D TCP_IS_MPTCP)
 		return 1;
=20
-	msk =3D bpf_skc_to_mptcp_sock(sk);
+	msk =3D bpf_core_cast(sk, struct mptcp_sock);
 	if (!msk || msk->pm.server_side || !msk->pm.subflows)
 		return 1;
=20
-	msk =3D bpf_mptcp_sock_acquire(msk);
-	if (!msk)
-		return 1;
-	bpf_for_each(mptcp_subflow, subflow, msk) {
+	bpf_for_each(mptcp_subflow, subflow, (struct sock *)sk) {
 		/* Here MPTCP-specific packet scheduler kfunc can be called:
 		 * this test is not doing anything really useful, only to
 		 * verify the iteration works.
@@ -58,6 +55,5 @@ int iters_subflow(struct bpf_sockopt *ctx)
 	ids =3D local_ids;
=20
 out:
-	bpf_mptcp_sock_release(msk);
 	return 1;
 }
--=20
2.43.0