]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net: smc: SMC_HS_CTRL_BPF should depend on BPF_JIT
authorGeert Uytterhoeven <geert@linux-m68k.org>
Thu, 4 Dec 2025 10:29:16 +0000 (11:29 +0100)
committerMartin KaFai Lau <martin.lau@kernel.org>
Thu, 4 Dec 2025 19:07:18 +0000 (11:07 -0800)
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
net/smc/Kconfig

index 325addf83cc69f6cab39490aca002fc292b3cff0..277ef504bc26ef89fca58a0730f87c5e800f3b6e 100644 (file)
@@ -22,10 +22,10 @@ config SMC_DIAG
 
 config SMC_HS_CTRL_BPF
        bool "Generic eBPF hook for SMC handshake flow"
-       depends on SMC && BPF_SYSCALL
+       depends on SMC && BPF_JIT && BPF_SYSCALL
        default y
        help
          SMC_HS_CTRL_BPF enables support to register generic eBPF hook for SMC
          handshake flow, which offer much greater flexibility in modifying the behavior
          of the SMC protocol stack compared to a complete kernel-based approach. Select
-         this option if you want filtring the handshake process via eBPF programs.
\ No newline at end of file
+         this option if you want filtring the handshake process via eBPF programs.