aboutsummaryrefslogtreecommitdiff
path: root/src/cpu/x86/pae/pgtbl.c
diff options
context:
space:
mode:
authorJacob Garber <jgarber1@ualberta.ca>2019-05-14 11:21:41 -0600
committerStefan Reinauer <stefan.reinauer@coreboot.org>2019-05-16 18:08:50 +0000
commitbc674765a93bc5c9bf2c20ce2444389dccc754e1 (patch)
treeb363bda561b009f204ff3580f68afe318aead52b /src/cpu/x86/pae/pgtbl.c
parent2e8188aa13b84f607fd3a1e95fb7b63b26ff1d89 (diff)
{arch,cpu}/x86, drivers/intel: Restore cpu_index error handling
Previously cpu_index() always succeeded, but since commit 095c931 (src/arch/x86: Use core apic id to get cpu_index()) it is now possible for it to indicate an error by returning -1. This commit adds error handling for all calls to cpu_index(), and restores several checks that were removed in commit 7c712bb (Fix code that would trip -Wtype-limits) but are now needed. Signed-off-by: Jacob Garber <jgarber1@ualberta.ca> Change-Id: I5436eed4cb5675f916924eb9670db04592a8b927 Reviewed-on: https://review.coreboot.org/c/coreboot/+/32795 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/cpu/x86/pae/pgtbl.c')
-rw-r--r--src/cpu/x86/pae/pgtbl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cpu/x86/pae/pgtbl.c b/src/cpu/x86/pae/pgtbl.c
index 062ee402f1..9c921342f1 100644
--- a/src/cpu/x86/pae/pgtbl.c
+++ b/src/cpu/x86/pae/pgtbl.c
@@ -116,12 +116,12 @@ void *map_2M_page(unsigned long page)
static struct pg_table pgtbl[CONFIG_MAX_CPUS]
__attribute__((aligned(4096)));
static unsigned long mapped_window[CONFIG_MAX_CPUS];
- unsigned long index;
+ int index;
unsigned long window;
void *result;
int i;
index = cpu_index();
- if (index >= CONFIG_MAX_CPUS)
+ if (index < 0)
return MAPPING_ERROR;
window = page >> 10;
if (window != mapped_window[index]) {