On 13.11.2024 12:52, Andrew Cooper wrote: > On 13/11/2024 10:23 am, Jan Beulich wrote: >> On 13.11.2024 10:30, Andrew Cooper wrote: >>> --- a/xen/arch/x86/include/asm/config.h >>> +++ b/xen/arch/x86/include/asm/config.h >>> @@ -51,8 +51,9 @@ >>> >>> #define IST_SHSTK_SIZE 1024 >>> >>> -#define TRAMPOLINE_STACK_SPACE PAGE_SIZE >>> -#define TRAMPOLINE_SPACE (KB(64) - TRAMPOLINE_STACK_SPACE) >>> +/* See asm/trampoline.h */ >>> +#define TRAMPOLINE_SIZE KB(64) >>> +#define TRAMPOLINE_HEAP_END (TRAMPOLINE_SIZE - PAGE_SIZE) >> Is there actually a reason these can't move to trampoline.h? > > I considered that, and ruled it out, but I can't remember why exactly. > > Right now, trampoline.h is C-only, but it can gain some __ASSEMBLY__ > easily enough. > > > The two later constants, WAKEUP_STACK_MIN and MBI_SPACE_MIN are used > only in linker assertions, and of dubious value. In particular, the > size of the VESA information in the heap is not accounted for in the > MBI_SPACE_MIN check. > > I have an idea to remove all of this boot metadata shuffling when the > boot_info work is a bit better done, which is why I left the constants > alone.
Fair enough then. Jan