diff options
author | Raul E Rangel <rrangel@chromium.org> | 2021-07-23 10:34:38 -0600 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2021-07-26 07:30:36 +0000 |
commit | e279d90d4de18a0333fc7650710b0dba7e2fcd7f (patch) | |
tree | aa2d9d9d8ec4c1bad10cbf9b20b3c4052526ff1b /src/cpu/x86 | |
parent | 474781b2703de37ea7a484fd4cdfde5103e48d01 (diff) |
arch/x86,cpu/x86/mp_init: Switch cpu_info index type to size_t
The alignment for `struct cpu_info` is wrong on x86_64. c_start.S uses
the `push` instruction when setting up the cpu_info struct. This
instruction will push 8 bytes but `unsigned int` is 4 bytes. By making
it a `size_t` we get the correct size for both x86_32 and x86_64.
BUG=b:179699789
TEST=Boot guybrush to the OS
Suggested-by: Julius Werner <jwerner@chromium.org>
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Change-Id: I8ef311aaa8333ccf8a5b3f1f0e852bb26777671c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56573
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Diffstat (limited to 'src/cpu/x86')
-rw-r--r-- | src/cpu/x86/mp_init.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cpu/x86/mp_init.c b/src/cpu/x86/mp_init.c index cd6d8ca63d..a3a6becad7 100644 --- a/src/cpu/x86/mp_init.c +++ b/src/cpu/x86/mp_init.c @@ -569,7 +569,7 @@ static void init_bsp(struct bus *cpu_bus) info->cpu->name = processor_name; if (info->index != 0) - printk(BIOS_CRIT, "BSP index(%d) != 0!\n", info->index); + printk(BIOS_CRIT, "BSP index(%zd) != 0!\n", info->index); /* Track BSP in cpu_map structures. */ cpu_add_map_entry(info->index); |