summaryrefslogtreecommitdiff
path: root/src/arch/x86
diff options
context:
space:
mode:
authorRaul E Rangel <rrangel@chromium.org>2021-07-23 10:34:38 -0600
committerPatrick Georgi <pgeorgi@google.com>2021-07-26 07:30:36 +0000
commite279d90d4de18a0333fc7650710b0dba7e2fcd7f (patch)
treeaa2d9d9d8ec4c1bad10cbf9b20b3c4052526ff1b /src/arch/x86
parent474781b2703de37ea7a484fd4cdfde5103e48d01 (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/arch/x86')
-rw-r--r--src/arch/x86/include/arch/cpu.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arch/x86/include/arch/cpu.h b/src/arch/x86/include/arch/cpu.h
index 3fd4c1b2ea..42201e282e 100644
--- a/src/arch/x86/include/arch/cpu.h
+++ b/src/arch/x86/include/arch/cpu.h
@@ -225,7 +225,7 @@ struct thread;
struct cpu_info {
struct device *cpu;
- unsigned int index;
+ size_t index;
#if CONFIG(COOP_MULTITASKING)
struct thread *thread;
#endif