Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: smc: SMC_HS_CTRL_BPF should depend on BPF_JIT

If CONFIG_BPF_SYSCALL=y, but CONFIG_BPF_JIT=n:

net/smc/smc_hs_bpf.c: In function ‘bpf_smc_hs_ctrl_init’:
include/linux/bpf.h:2068:50: error: statement with no effect [-Werror=unused-value]
2068 | #define register_bpf_struct_ops(st_ops, type) ({ (void *)(st_ops); 0; })
| ^~~~~~~~~~~~~~~~
net/smc/smc_hs_bpf.c:139:16: note: in expansion of macro ‘register_bpf_struct_ops’
139 | return register_bpf_struct_ops(&bpf_smc_hs_ctrl_ops, smc_hs_ctrl);
| ^~~~~~~~~~~~~~~~~~~~~~~

While this compile error is caused by a bug in <linux/bpf.h>, none of
the code in net/smc/smc_hs_bpf.c becomes effective if CONFIG_BPF_JIT is
not enabled. Hence add a dependency on BPF_JIT.

While at it, add the missing newline at the end of the file.

Fixes: 15f295f55656658e ("net/smc: bpf: Introduce generic hook for handshake flow")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
Link: https://patch.msgid.link/988c61e5fea280872d81b3640f1f34d0619cfbbf.1764843951.git.geert@linux-m68k.org

authored by

Geert Uytterhoeven and committed by
Martin KaFai Lau
861111b6 835a5075

+1 -1
+1 -1
net/smc/Kconfig
··· 22 22 23 23 config SMC_HS_CTRL_BPF 24 24 bool "Generic eBPF hook for SMC handshake flow" 25 - depends on SMC && BPF_SYSCALL 25 + depends on SMC && BPF_JIT && BPF_SYSCALL 26 26 default y 27 27 help 28 28 SMC_HS_CTRL_BPF enables support to register generic eBPF hook for SMC