Re: [PATCH v3 0/2] x86/boot: fix relying on link order

From: Ingo Molnar
Date: Mon Jan 09 2023 - 12:23:55 EST



* Alexander Lobakin <alexandr.lobakin@xxxxxxxxx> wrote:

> Currently, the x86 decompressor code expects the kernel entry point to be
> exactly at the beginning of the kernel image. It's always been true, but
> is hacky in multiple ways: special .head.text section and linking certain
> object files first to have them at the beginning.
> Make the code independent from the link order and then kill the latter.
> The former is to be resolved a bit later.
>
> I didn't put any "Fixes:" tag since it's not linear. The lines changed
> with 0001 came from the initial x86 KASLR series, but that unconditional
> jump to the kernel beginning already was there. It goes at least from the
> set that brought relocatable kernel support to x86, but this is quite
> prehistoric already and might not look really relatable.
>
> Alexander Lobakin (2):
> x86/boot: robustify calling startup_{32,64}() from the decompressor
> code
> scripts/head-object-list: remove x86 from the list
>
> arch/x86/boot/compressed/head_32.S | 2 +-
> arch/x86/boot/compressed/head_64.S | 2 +-
> arch/x86/boot/compressed/misc.c | 18 +++++++++++-------
> scripts/head-object-list.txt | 6 ------
> 4 files changed, 13 insertions(+), 15 deletions(-)

That's a really nice fix/robustification improvement - I've applied your
series to tip:x86/boot and will push it out after some testing.

Thanks,

Ingo