lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <5710e8f7-6c09-538f-a636-2ea1863ab208@tessares.net> Date: Tue, 12 Jul 2022 11:06:38 +0200 From: Matthieu Baerts <matthieu.baerts@...sares.net> To: Mat Martineau <mathew.j.martineau@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org> Cc: Alexei Starovoitov <ast@...nel.org>, Daniel Borkmann <daniel@...earbox.net>, Andrii Nakryiko <andrii@...nel.org>, netdev@...r.kernel.org, bpf@...r.kernel.org, Martin KaFai Lau <kafai@...com>, Song Liu <songliubraving@...com>, Yonghong Song <yhs@...com>, John Fastabend <john.fastabend@...il.com>, KP Singh <kpsingh@...omium.org>, Geliang Tang <geliang.tang@...e.com>, mptcp@...ts.linux.dev Subject: Re: [PATCH bpf-next] mptcp: Add struct mptcp_sock definition when CONFIG_MPTCP is disabled Hi Jiri, Mat, On 11/07/2022 23:21, Mat Martineau wrote: > On Mon, 11 Jul 2022, Jiri Olsa wrote: > >> The btf_sock_ids array needs struct mptcp_sock BTF ID for >> the bpf_skc_to_mptcp_sock helper. >> >> When CONFIG_MPTCP is disabled, the 'struct mptcp_sock' is not >> defined and resolve_btfids will complain with: >> >> BTFIDS vmlinux >> WARN: resolve_btfids: unresolved symbol mptcp_sock >> >> Adding empty difinition for struct mptcp_sock when CONFIG_MPTCP >> is disabled. >> >> Signed-off-by: Jiri Olsa <jolsa@...nel.org> >> --- >> include/net/mptcp.h | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/include/net/mptcp.h b/include/net/mptcp.h >> index ac9cf7271d46..25741a52c666 100644 >> --- a/include/net/mptcp.h >> +++ b/include/net/mptcp.h >> @@ -59,6 +59,10 @@ struct mptcp_addr_info { >> }; >> }; >> >> +#if !IS_ENABLED(CONFIG_MPTCP) >> +struct mptcp_sock { }; >> +#endif > > The only use of struct mptcp_sock I see with !CONFIG_MPTCP is from this > stub at the end of mptcp.h: > > static inline struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock > *sk) { return NULL; } > > It's normally defined in net/mptcp/protocol.h for the MPTCP subsystem code. > > The conditional could be added on the line before the stub to make it > clear that the empty struct is associated with that inline stub. If this is required only for this specific BPF function, why not modifying this stub (or add a define) to return "void *" instead of "struct mptcp_sock *"? Cheers, Matt -- Tessares | Belgium | Hybrid Access Solutions www.tessares.net
Powered by blists - more mailing lists