mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-06-06 14:51:35 +00:00
x86: use actual CPU number for allocating memory
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> Tested-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
parent
24fb49073e
commit
b28cecdfb8
1 changed files with 3 additions and 3 deletions
|
@ -210,7 +210,7 @@ static int save_bsp_msrs(char *start, int size)
|
||||||
return msr_count;
|
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_16bit *params16;
|
||||||
struct sipi_params *params;
|
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->idt_ptr = (uint32_t)x86_get_idt();
|
||||||
|
|
||||||
params->stack_size = CONFIG_AP_STACK_SIZE;
|
params->stack_size = CONFIG_AP_STACK_SIZE;
|
||||||
size = params->stack_size * CONFIG_MAX_CPUS;
|
size = params->stack_size * num_cpus;
|
||||||
stack = memalign(size, 4096);
|
stack = memalign(size, 4096);
|
||||||
if (!stack)
|
if (!stack)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -483,7 +483,7 @@ int mp_init(struct mp_params *p)
|
||||||
mp_info.records = p->flight_plan;
|
mp_info.records = p->flight_plan;
|
||||||
|
|
||||||
/* Load the SIPI vector */
|
/* Load the SIPI vector */
|
||||||
ret = load_sipi_vector(&ap_count);
|
ret = load_sipi_vector(&ap_count, num_cpus);
|
||||||
if (ap_count == NULL)
|
if (ap_count == NULL)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue