On Sun, Feb 14, 2016 at 11:19 AM, Simon Glass <[email protected]> wrote: > On 12 February 2016 at 14:27, Stephen Warren <[email protected]> wrote: >> From: Stephen Warren <[email protected]> >> >> Purely by code inspection, it looks like the parameter order to memalign() >> is swapped; its parameters are (align, size). 4096 is a likely desired >> alignment, and a variable named size sounds like a size:-) >> >> Fixes: 45b5a37836d5 ("x86: Add multi-processor init") >> Signed-off-by: Stephen Warren <[email protected]> >> --- >> I've taken a quick look at all the other memalign() calls in U-Boot, and >> I /think/ they're all correct. >> --- >> arch/x86/cpu/mp_init.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/x86/cpu/mp_init.c b/arch/x86/cpu/mp_init.c >> index 7917350bff26..fc2fb5bf445c 100644 >> --- a/arch/x86/cpu/mp_init.c >> +++ b/arch/x86/cpu/mp_init.c >> @@ -243,7 +243,7 @@ static int load_sipi_vector(atomic_t **ap_countp, int >> num_cpus) >> >> params->stack_size = CONFIG_AP_STACK_SIZE; >> size = params->stack_size * num_cpus; >> - stack = memalign(size, 4096); >> + stack = memalign(4096, size); >> if (!stack) >> return -ENOMEM; >> params->stack_top = (u32)(stack + size); >> -- >> 2.7.0 >> > > Reviewed-by: Simon Glass <[email protected]> > > Thanks. I'm a little surprised this hasn't caused problems with CPU > start-up!
Tested on QEMU Tested-by: Bin Meng <[email protected]> _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

