Message ID | 1452159126-22877-6-git-send-email-yanmiaobest@gmail.com |
---|---|
State | Accepted |
Delegated to: | Bin Meng |
Headers | show |
On Thu, Jan 7, 2016 at 5:32 PM, Miao Yan <yanmiaobest@gmail.com> wrote: > Use actual CPU number, instead of maximum cpu configured, to allocate > stack memory in 'load_sipi_vector' > > Signed-off-by: Miao Yan <yanmiaobest@gmail.com> > Reviewed-by: Simon Glass <sjg@chromium.org> > Reviewed-by: Bin Meng <bmeng.cn@gmail.com> > --- > arch/x86/cpu/mp_init.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > Tested-by: Bin Meng <bmeng.cn@gmail.com>
On Tue, Jan 12, 2016 at 11:48 AM, Bin Meng <bmeng.cn@gmail.com> wrote: > On Thu, Jan 7, 2016 at 5:32 PM, Miao Yan <yanmiaobest@gmail.com> wrote: >> Use actual CPU number, instead of maximum cpu configured, to allocate >> stack memory in 'load_sipi_vector' >> >> Signed-off-by: Miao Yan <yanmiaobest@gmail.com> >> Reviewed-by: Simon Glass <sjg@chromium.org> >> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> >> --- >> arch/x86/cpu/mp_init.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> > > Tested-by: Bin Meng <bmeng.cn@gmail.com> applied to u-boot-x86/next, thanks!
diff --git a/arch/x86/cpu/mp_init.c b/arch/x86/cpu/mp_init.c index 2f34317..2a3ce48 100644 --- a/arch/x86/cpu/mp_init.c +++ b/arch/x86/cpu/mp_init.c @@ -210,7 +210,7 @@ static int save_bsp_msrs(char *start, int size) return msr_count; } -static int load_sipi_vector(atomic_t **ap_countp) +static int load_sipi_vector(atomic_t **ap_countp, int num_cpus) { struct sipi_params_16bit *params16; struct sipi_params *params; @@ -239,7 +239,7 @@ static int load_sipi_vector(atomic_t **ap_countp) params->idt_ptr = (uint32_t)x86_get_idt(); params->stack_size = CONFIG_AP_STACK_SIZE; - size = params->stack_size * CONFIG_MAX_CPUS; + size = params->stack_size * num_cpus; stack = memalign(size, 4096); if (!stack) return -ENOMEM; @@ -483,7 +483,7 @@ int mp_init(struct mp_params *p) mp_info.records = p->flight_plan; /* Load the SIPI vector */ - ret = load_sipi_vector(&ap_count); + ret = load_sipi_vector(&ap_count, num_cpus); if (ap_count == NULL) return -1;