From: Arnd Bergmann <arnd@xxxxxxxx> The newly added function is unused in some random configurations: net/netfilter/nf_bpf_link.c:32:1: error: 'get_proto_defrag_hook' defined but not used [-Werror=unused-function] 32 | get_proto_defrag_hook(struct bpf_nf_link *link, | ^~~~~~~~~~~~~~~~~~~~~ Change the preprocessor conditionals to if() checks that the compiler can understand to avoid the warning. Fixes: 91721c2d02d3a ("netfilter: bpf: Support BPF_F_NETFILTER_IP_DEFRAG in netfilter link") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> --- net/netfilter/nf_bpf_link.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/net/netfilter/nf_bpf_link.c b/net/netfilter/nf_bpf_link.c index 8fe594bbc7e24..6028fd4c1ab4c 100644 --- a/net/netfilter/nf_bpf_link.c +++ b/net/netfilter/nf_bpf_link.c @@ -74,24 +74,26 @@ static int bpf_nf_enable_defrag(struct bpf_nf_link *link) const struct nf_defrag_hook __maybe_unused *hook; switch (link->hook_ops.pf) { -#if IS_ENABLED(CONFIG_NF_DEFRAG_IPV4) case NFPROTO_IPV4: + if (!IS_ENABLED(CONFIG_NF_DEFRAG_IPV4)) + return -EAFNOSUPPORT; + hook = get_proto_defrag_hook(link, nf_defrag_v4_hook, "nf_defrag_ipv4"); if (IS_ERR(hook)) return PTR_ERR(hook); link->defrag_hook = hook; return 0; -#endif -#if IS_ENABLED(CONFIG_NF_DEFRAG_IPV6) case NFPROTO_IPV6: + if (!IS_ENABLED(CONFIG_NF_DEFRAG_IPV6)) + return -EAFNOSUPPORT; + hook = get_proto_defrag_hook(link, nf_defrag_v6_hook, "nf_defrag_ipv6"); if (IS_ERR(hook)) return PTR_ERR(hook); link->defrag_hook = hook; return 0; -#endif default: return -EAFNOSUPPORT; } -- 2.39.2