]> xenbits.xensource.com Git - people/dwmw2/xen.git/commit
x86/boot: Rationalise stack handling during early boot
authorAndrew Cooper <andrew.cooper3@citrix.com>
Wed, 8 Jan 2020 13:36:42 +0000 (13:36 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 9 Jan 2020 14:29:53 +0000 (14:29 +0000)
commitfae249d23413b2bf7d98a97d8f649cf7d102c1ae
tree8f04010f3935311bfac58d55e51acf30509ae850
parent09488b2bb76da2c78b9e25c7041e004baba1ca6a
x86/boot: Rationalise stack handling during early boot

The top (numerically higher addresses) of cpu0_stack[] contains the BSP's
cpu_info block.  Logic in Xen expects this to be initialised to 0, but this
area of stack is also used during early boot.

Update the head.S code to avoid using the cpu_info block.  Additionally,
update the stack_start variable to match, which avoids __high_start() and
efi_arch_post_exit_boot() needing to make the adjustment manually.

Finally, leave a big warning by the BIOS BSS initialisation, because it is by
no means obvious that the stack doesn't survive the REP STOS.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
xen/arch/x86/boot/head.S
xen/arch/x86/boot/x86_64.S
xen/arch/x86/efi/efi-boot.h
xen/arch/x86/smpboot.c