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. Acked-by: Martin KaFai Lau <kafai@xxxxxx> Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx> --- include/net/mptcp.h | 4 ++++ 1 file changed, 4 insertions(+) v2 changes: - moved the new empty struct declaration next to the inline bpf_mptcp_sock_from_subflow function [Mat] diff --git a/include/net/mptcp.h b/include/net/mptcp.h index ac9cf7271d46..412479ebf5ad 100644 --- a/include/net/mptcp.h +++ b/include/net/mptcp.h @@ -291,4 +291,8 @@ struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock *sk); static inline struct mptcp_sock *bpf_mptcp_sock_from_subflow(struct sock *sk) { return NULL; } #endif +#if !IS_ENABLED(CONFIG_MPTCP) +struct mptcp_sock { }; +#endif + #endif /* __NET_MPTCP_H */ -- 2.37.1