Hi Ard,

On Tue, 17 Feb 2026 at 16:10, Ard Biesheuvel <[email protected]> wrote:
>
> Hi Dave,
>
> On Tue, 17 Feb 2026, at 09:04, Dave Young wrote:
> > Kernel panic occurs during a kexec reboot when EFI runtime services
> > are not enabled in the first kernel. The issue is that the second
> > kernel cannot find the ACPI RSDP address during boot.
> >
> > In legacy boot, the acpi_rsdp_addr is set in early x86 boot code.
> > However, kernel decompression has moved to the EFI stub for EFI boot.
> > Therefore, the x86 EFI stub must also be updated to store the
> > acpi_rsdp_addr in the boot parameters to ensure the kexec kernel
> > can find it.
> >
> > (Note: If the pre-kexec kernel was itself a kexec boot, the later kexec
> > reboot will still utilize the legacy decompressor path, so the original
> > code remains functional though some cleanups can be done later.)
> >
> > Signed-off-by: Dave Young <[email protected]>
> > ---
> >  drivers/firmware/efi/libstub/x86-stub.c |   18 ++++++++++++++++++
> >  1 file changed, 18 insertions(+)
> >
>
> If this issue is kexec-specific, can we move this to where the kexec code 
> prepares the boot_params struct for the next kernel?
>

The kexec use case is it depends on the pre-kexec kernel saving it
during boot for noefi case.  I do not have a better idea to do it in
kexec code for the time being.  Otherwise it seems the early
acpi_rsdp_addr was introduced for other reason (KASLR) although I'm
not sure about the exact background:   (Before this the original kexec
fallback just depend on end user to put acpi_rsdp in kernel cmdline
explictily or in kexec-tools)
commit 3a63f70bf4c3a17f5d9c9bf3bc3288a23bdfefce
Author: Chao Fan <[email protected]>
Date:   Wed Jan 23 19:08:48 2019 +0800

    x86/boot: Early parse RSDP and save it in boot_params

Another thing is I do not have much time to work on big changes in
recent years, so if you suggest to have a resturcture I have to give
up :)   But I'm happy to do some trival thing during this week as I'm
in a holiday break and I have some time to play with it.

Thanks
Dave


Reply via email to