x86/boot: Fix data placement around __high_start()
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 29 Nov 2021 19:52:05 +0000 (19:52 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 2 Dec 2021 20:02:55 +0000 (20:02 +0000)
commitffa5d037c78fe175f31373deec0759ff8cc8d66c
tree6e9c6c20bcfbd1d90fb35d87821b181a42c7a14e
parent3099ff3ce15481b4f1536470cb87ac0ebf82b7bb
x86/boot: Fix data placement around __high_start()

multiboot_ptr should be in __initdata - it is only used on the BSP path.
Furthermore, the .align 8 then .long means that stack_start is misaligned.

Move both into setup.c, which lets the compiler handle the details correctly,
as well as providing proper debug information for them.

Declare stack_start in setup.h and avoid extern-ing it locally in smpboot.c.

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