Re: [RFC PATCH] x86/Kconfig: Disable KASLR on debug builds

From: Peter Zijlstra
Date: Thu Nov 30 2023 - 07:08:43 EST


On Thu, Nov 30, 2023 at 01:05:52PM +0100, Borislav Petkov wrote:
> From: "Borislav Petkov (AMD)" <bp@xxxxxxxxx>
>
> Having KASLR enabled makes debugging a kernel completely useless because
> virtual addresses are not stable, leading to people poking at kernel
> internals to have to go and rebuild with RANDOMIZE_BASE=off.
>
> Just disable it on debugging builds where it is not needed anyway.

Works for me, but I have "nokaslr no_hash_pointers" on all my machines
by now. It goes right along with "debug ignore_loglevel
sysrq_always_enabled earlyprintk=serial,ttyS0,115200" :-)

> Signed-off-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
> ---
> arch/x86/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index c456c9b1fc7c..da94354b1b75 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -2159,7 +2159,7 @@ config RELOCATABLE
>
> config RANDOMIZE_BASE
> bool "Randomize the address of the kernel image (KASLR)"
> - depends on RELOCATABLE
> + depends on RELOCATABLE && !DEBUG_KERNEL
> default y
> help
> In support of Kernel Address Space Layout Randomization (KASLR),
> --
> 2.42.0.rc0.25.ga82fb66fed25
>