MAINTAINERS | 1 + tools/testing/selftests/bpf/bpf_mptcp_helpers.h | 14 ++++++++++++++ tools/testing/selftests/bpf/bpf_tcp_helpers.h | 5 ----- tools/testing/selftests/bpf/progs/mptcp_sock.c | 2 +- 4 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 tools/testing/selftests/bpf/bpf_mptcp_helpers.h
Use dedicated bpf_mptcp_helpers.h for MPTCP tests, instead of sharing
with bpf_tcp_helpers.h.
This patch will conflict with the next three patches.
1. selftests: bpf: verify token of struct mptcp_sock
CONFLICT (content): Merge conflict in tools/testing/selftests/bpf/bpf_tcp_helpers.h
Drop these lines in bpf_tcp_helpers.h:
'''
<<<<<<< HEAD
=======
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
} __attribute__((preserve_access_index));
>>>>>>> 81f7e2dd50fa (selftests: bpf: verify token of struct mptcp_sock)
'''
Merge it into bpf_mptcp_helpers.h:
'''
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
} __attribute__((preserve_access_index));
'''
2. selftests: bpf: verify ca_name of struct mptcp_sock
CONFLICT (content): Merge conflict in tools/testing/selftests/bpf/bpf_tcp_helpers.h
Drop these lines in bpf_tcp_helpers.h:
'''
<<<<<<< HEAD
=======
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
char ca_name[TCP_CA_NAME_MAX];
} __attribute__((preserve_access_index));
>>>>>>> dc3031fdfe35 (selftests: bpf: verify ca_name of struct mptcp_sock)
'''
Merge it into bpf_mptcp_helpers.h:
'''
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
char ca_name[TCP_CA_NAME_MAX];
} __attribute__((preserve_access_index));
'''
3. selftests: bpf: verify first of struct mptcp_sock
CONFLICT (content): Merge conflict in tools/testing/selftests/bpf/bpf_tcp_helpers.h
Drop these lines in bpf_tcp_helpers.h:
'''
<<<<<<< HEAD
=======
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
struct sock *first;
char ca_name[TCP_CA_NAME_MAX];
} __attribute__((preserve_access_index));
>>>>>>> afb45ac4de7f (selftests: bpf: verify first of struct mptcp_sock)
'''
Merge it into bpf_mptcp_helpers.h:
'''
struct mptcp_sock {
struct inet_connection_sock sk;
__u32 token;
struct sock *first;
char ca_name[TCP_CA_NAME_MAX];
} __attribute__((preserve_access_index));
'''
Note: 'first' is inserted between 'token' and 'ca_name', to keep the order of
mptcp_sock in kernel.
v2:
- Update newly added file in MAINTAINERS.
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
---
MAINTAINERS | 1 +
tools/testing/selftests/bpf/bpf_mptcp_helpers.h | 14 ++++++++++++++
tools/testing/selftests/bpf/bpf_tcp_helpers.h | 5 -----
tools/testing/selftests/bpf/progs/mptcp_sock.c | 2 +-
4 files changed, 16 insertions(+), 6 deletions(-)
create mode 100644 tools/testing/selftests/bpf/bpf_mptcp_helpers.h
diff --git a/MAINTAINERS b/MAINTAINERS
index 778cbf7c5a3b..40a62dc29e31 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13745,6 +13745,7 @@ F: include/net/mptcp.h
F: include/trace/events/mptcp.h
F: include/uapi/linux/mptcp.h
F: net/mptcp/
+F: tools/testing/selftests/bpf/bpf_mptcp_helpers.h
F: tools/testing/selftests/bpf/progs/mptcp_sock.c
F: tools/testing/selftests/bpf/prog_tests/mptcp.c
F: tools/testing/selftests/net/mptcp/
diff --git a/tools/testing/selftests/bpf/bpf_mptcp_helpers.h b/tools/testing/selftests/bpf/bpf_mptcp_helpers.h
new file mode 100644
index 000000000000..18da4cc65e89
--- /dev/null
+++ b/tools/testing/selftests/bpf/bpf_mptcp_helpers.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/* Copyright (c) 2022, SUSE. */
+
+#ifndef __BPF_MPTCP_HELPERS_H
+#define __BPF_MPTCP_HELPERS_H
+
+#include "bpf_tcp_helpers.h"
+
+struct mptcp_sock {
+ struct inet_connection_sock sk;
+
+} __attribute__((preserve_access_index));
+
+#endif
diff --git a/tools/testing/selftests/bpf/bpf_tcp_helpers.h b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
index d71616873a3c..b1ede6f0b821 100644
--- a/tools/testing/selftests/bpf/bpf_tcp_helpers.h
+++ b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
@@ -83,11 +83,6 @@ struct tcp_sock {
__u64 tcp_mstamp; /* most recent packet received/sent */
} __attribute__((preserve_access_index));
-struct mptcp_sock {
- struct inet_connection_sock sk;
-
-} __attribute__((preserve_access_index));
-
static __always_inline struct inet_connection_sock *inet_csk(const struct sock *sk)
{
return (struct inet_connection_sock *)sk;
diff --git a/tools/testing/selftests/bpf/progs/mptcp_sock.c b/tools/testing/selftests/bpf/progs/mptcp_sock.c
index a58cd24da777..5cfaec4e7245 100644
--- a/tools/testing/selftests/bpf/progs/mptcp_sock.c
+++ b/tools/testing/selftests/bpf/progs/mptcp_sock.c
@@ -3,7 +3,7 @@
#include <linux/bpf.h>
#include <bpf/bpf_helpers.h>
-#include "bpf_tcp_helpers.h"
+#include "bpf_mptcp_helpers.h"
char _license[] SEC("license") = "GPL";
__u32 _version SEC("version") = 1;
--
2.34.1
Hi Geliang, On 31/03/2022 10:15, Geliang Tang wrote: > Use dedicated bpf_mptcp_helpers.h for MPTCP tests, instead of sharing > with bpf_tcp_helpers.h. Thank you for the patch and the instructions! Now in our tree: New patches for t/upstream: - d5c86aa2ae25: Squash to "selftests: bpf: test bpf_skc_to_mptcp_sock" - 9a0c295c72ec: conflict in t/selftests-bpf-verify-token-of-struct-mptcp_sock - fcd9fe171917: conflict in t/selftests-bpf-verify-ca_name-of-struct-mptcp_sock - dc518d373c04: conflict in t/selftests-bpf-verify-first-of-struct-mptcp_sock - Results: 3012e4c62c2c..92bd3ceeef3e (export) Builds and tests are now in progress: https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20220331T133156 https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export Cheers, Matt -- Tessares | Belgium | Hybrid Access Solutions www.tessares.net
© 2016 - 2024 Red Hat, Inc.