From c233bf54a2e29912f6a46a5238c93facd66cf96e Mon Sep 17 00:00:00 2001 From: Jason Chen CJ Date: Thu, 24 Jan 2019 19:28:39 +0800 Subject: [PATCH] make sure secondary CPU's stack is aligned with CPU STACK secondary CPU's stack should be aligned with 16 Tracked-On: #2410 Signed-off-by: Jason Chen CJ --- hypervisor/arch/x86/trampoline.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hypervisor/arch/x86/trampoline.c b/hypervisor/arch/x86/trampoline.c index dc36d5583..f642c318c 100644 --- a/hypervisor/arch/x86/trampoline.c +++ b/hypervisor/arch/x86/trampoline.c @@ -45,6 +45,7 @@ void write_trampoline_stack_sym(uint16_t pcpu_id) hva = (uint64_t *)(hpa2hva(trampoline_start16_paddr) + trampoline_relo_addr(secondary_cpu_stack)); stack_sym_addr = (uint64_t)&per_cpu(stack, pcpu_id)[CONFIG_STACK_SIZE - 1]; + stack_sym_addr &= ~(CPU_STACK_ALIGN - 1UL); *hva = stack_sym_addr; clflush(hva);