^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) config USERMODE_DRIVER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) menuconfig BPF_PRELOAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) bool "Preload BPF file system with kernel specific program and map iterators"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) depends on BPF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) depends on BPF_SYSCALL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) # The dependency on !COMPILE_TEST prevents it from being enabled
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) # in allmodconfig or allyesconfig configurations
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) depends on !COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) select USERMODE_DRIVER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) This builds kernel module with several embedded BPF programs that are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) pinned into BPF FS mount point as human readable files that are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) useful in debugging and introspection of BPF programs and maps.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) if BPF_PRELOAD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) config BPF_PRELOAD_UMD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) tristate "bpf_preload kernel module with user mode driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) depends on CC_CAN_LINK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) depends on m || CC_CAN_LINK_STATIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) default m
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) This builds bpf_preload kernel module with embedded user mode driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) endif