Re: [PATCH v3] kbuild: Show marked Kconfig fragments in "help"

From: Masahiro Yamada
Date: Fri Sep 01 2023 - 03:59:19 EST


On Fri, Sep 1, 2023 at 4:13 AM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
>
> Currently the Kconfig fragments in kernel/configs and arch/*/configs
> that aren't used internally aren't discoverable through "make help",
> which consists of hard-coded lists of config fragments. Instead, list
> all the fragment targets that have a "# Help: " comment prefix so the
> targets can be generated dynamically.
>
> Add logic to the Makefile to search for and display the fragment and
> comment. Add comments to fragments that are intended to be direct targets.
>
> Cc: Nicolas Schier <nicolas@xxxxxxxxx>
> Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
> Cc: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
> Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Cc: x86@xxxxxxxxxx
> Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> Cc: linuxppc-dev@xxxxxxxxxxxxxxxx
> Cc: linux-riscv@xxxxxxxxxxxxxxxxxxx
> Cc: linux-s390@xxxxxxxxxxxxxxx
> Cc: linux-kbuild@xxxxxxxxxxxxxxx
> Cc: linux-hardening@xxxxxxxxxxxxxxx
> Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
> Co-developed-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
> ---
> v3:
> - Use Makefile logic from Masahiro Yamada
> - Use "# Help: " prefix, but only on desired fragment targets
> v2: https://lore.kernel.org/all/20230825194329.gonna.911-kees@xxxxxxxxxx
> v1: https://lore.kernel.org/all/20230824223606.never.762-kees@xxxxxxxxxx
> ---
> Makefile | 1 -
> arch/arm/configs/dram_0x00000000.config | 1 +
> arch/arm/configs/dram_0xc0000000.config | 1 +
> arch/arm/configs/dram_0xd0000000.config | 1 +
> arch/arm/configs/lpae.config | 1 +
> arch/arm64/configs/virt.config | 1 +
> arch/powerpc/configs/disable-werror.config | 1 +
> arch/powerpc/configs/security.config | 4 +++-
> arch/riscv/configs/32-bit.config | 1 +
> arch/riscv/configs/64-bit.config | 1 +
> arch/s390/configs/btf.config | 1 +
> arch/s390/configs/kasan.config | 1 +
> arch/x86/Makefile | 4 ----
> kernel/configs/debug.config | 2 ++
> kernel/configs/kvm_guest.config | 1 +
> kernel/configs/nopm.config | 2 ++
> kernel/configs/rust.config | 1 +
> kernel/configs/tiny.config | 2 ++
> kernel/configs/x86_debug.config | 1 +
> kernel/configs/xen.config | 2 ++
> scripts/kconfig/Makefile | 15 ++++++++++++---
> 21 files changed, 36 insertions(+), 9 deletions(-)
>


Just one thing.





> diff --git a/kernel/configs/tiny.config b/kernel/configs/tiny.config
> index 00009f7d0835..60a4b6d80b36 100644
> --- a/kernel/configs/tiny.config
> +++ b/kernel/configs/tiny.config
> @@ -1,3 +1,5 @@
> +# Help: Size-optimized kernel image


I will drop this.


We already have a hard-coded help message.

tinyconfig - Configure the tiniest possible kernel




Then, some lines below, again.

tiny.config - Size-optimized kernel image



tiny.config is for internal use for tinyconfig.




--
Best Regards
Masahiro Yamada