Re: [PATCH] bpf: merge two CONFIG_BPF entries

From: Yonghong Song
Date: Sun Feb 04 2024 - 19:22:26 EST



On 2/4/24 3:37 PM, Masahiro Yamada wrote:
On Mon, Feb 5, 2024 at 3:11 AM Yonghong Song <yonghong.song@xxxxxxxxx> wrote:

On 2/3/24 11:56 PM, Masahiro Yamada wrote:
'config BPF' exists in both init/Kconfig and kernel/bpf/Kconfig.

Commit b24abcff918a ("bpf, kconfig: Add consolidated menu entry for bpf
with core options") added the second one to kernel/bpf/Kconfig instead
of moving the existing one.

Merge them together.

Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
---

init/Kconfig | 5 -----
kernel/bpf/Kconfig | 1 +
2 files changed, 1 insertion(+), 5 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index 8d4e836e1b6b..46ccad83a664 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1457,11 +1457,6 @@ config SYSCTL_ARCH_UNALIGN_ALLOW
config HAVE_PCSPKR_PLATFORM
bool

-# interpreter that classic socket filters depend on
-config BPF
- bool
- select CRYPTO_LIB_SHA1
-
menuconfig EXPERT
bool "Configure standard kernel features (expert users)"
# Unhide debug options, to make the on-by-default options visible
diff --git a/kernel/bpf/Kconfig b/kernel/bpf/Kconfig
index 6a906ff93006..bc25f5098a25 100644
--- a/kernel/bpf/Kconfig
+++ b/kernel/bpf/Kconfig
@@ -3,6 +3,7 @@
# BPF interpreter that, for example, classic socket filters depend on.
config BPF
bool
+ select CRYPTO_LIB_SHA1
Currently, the kernel/bpf directory is guarded with CONFIG_BPF
obj-$(CONFIG_BPF) += bpf/
in kernel/bpf/Makefile.

Wrong.

"in kernel/Makefile".


Why is it related to this patch?

Sorry, my obvious mistake.




Your patch probably works since there are lots of some other BPF related
configurations which requires CONFIG_BPF. But maybe we sould
keep 'config BPF' in init/Kconfig and remove 'config BPF'
in kernel/bpf/Kconfig. This will be less confusing?

Why?

The 'less confusing' part is just my initial feeling. I found
some CGROUP related configs are defined in init/Kconfig but not
under kernel/cgroup directory. So I thought 'config BPF' could
stay in init/Kconfig as well.

But I just did some other checking. For example, 'config NET'
is actually under 'net' directory. So probably you are right,
let us remove the one in init/Kconfig and use the one
in kernel/bpf/Kconfig.

So

Acked-by: Yonghong Song <yonghong.song@xxxxxxxxx>




# Used by archs to tell that they support BPF JIT compiler plus which
# flavour. Only one of the two can be selected for a specific arch since