lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220308104215.q4asb6z3vicq2vja@maple.lan>
Date:   Tue, 8 Mar 2022 10:42:15 +0000
From:   Daniel Thompson <daniel.thompson@...aro.org>
To:     Qian Cai <quic_qiancai@...cinc.com>
Cc:     Andrew Morton <akpm@...ux-foundation.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] configs/debug: set CONFIG_DEBUG_INFO=y properly

On Tue, Mar 01, 2022 at 03:29:20PM -0500, Qian Cai wrote:
> CONFIG_DEBUG_INFO can't be set by user directly,

What do you mean by "can't be set by user directly"? DEBUG_INFO
is fully controlable via menuconfig.


> so set CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y instead.
> Otherwise, we end up with no debuginfo in vmlinux which is
> a big no-no for kernel debugging.
> 
> Signed-off-by: Qian Cai <quic_qiancai@...cinc.com>
> ---
>  kernel/configs/debug.config | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kernel/configs/debug.config b/kernel/configs/debug.config
> index e9ffb0cc1eec..07df6d93c4df 100644
> --- a/kernel/configs/debug.config
> +++ b/kernel/configs/debug.config
> @@ -16,7 +16,7 @@ CONFIG_SYMBOLIC_ERRNAME=y
>  #
>  # Compile-time checks and compiler options
>  #
> -CONFIG_DEBUG_INFO=y
> +CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y

Does this change actually work in the kernels it has merged into?

DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT existence is predicated on DEBUG_INFO
being set. It makes no sense at all to set the former without the later.

I tried this with ARCH=arm64 and it is clearly not working and should
probably be reverted from v5.17:
~~~
maple$ git describe
v5.17-rc7
maple$ make defconfig
*** Default configuration is based on 'defconfig'
#
# No change to .config
#
maple$ scripts/config --disable DEBUG_INFO && make oldconfig
#
# configuration written to .config
#
maple$ grep DEBUG_INFO .config
# CONFIG_DEBUG_INFO is not set
maple$ make debug.config
<removed-long-output-here>
maple$ grep DEBUG_INFO .config
# CONFIG_DEBUG_INFO is not set
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
           ^^^^^^^^^
	       ^
maple$ echo CONFIG_DEBUG_INFO=y kernel/configs/debug_info.config
CONFIG_DEBUG_INFO=y kernel/configs/debug_info.config
maple$ make debug_info.config
Using .config as base
Merging ./kernel/configs/debug_info.config
Value of CONFIG_DEBUG_INFO is redefined by fragment ./kernel/configs/debug_info.config:
Previous value: # CONFIG_DEBUG_INFO is not set
New value: CONFIG_DEBUG_INFO=y

#
# merged configuration written to .config (needs make)
#
#
# configuration written to .config
#
maple$ grep DEBUG_INFO .config
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_INFO_REDUCED is not set
# CONFIG_DEBUG_INFO_COMPRESSED is not set
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
# CONFIG_DEBUG_INFO_DWARF4 is not set
# CONFIG_DEBUG_INFO_DWARF5 is not set
~~~


Daniel.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ