--- src/mptable.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/mptable.c b/src/mptable.c index 525188d..7e8486d 100644 --- a/src/mptable.c +++ b/src/mptable.c @@ -86,6 +86,12 @@ mptable_init(void) cpu->cpusignature = 0x600; cpu->featureflag = 0x201; } + + /* Limit the CPU count to 15 in the MPS tables, which is the limit in + the 4-bit legacy APIC addressing scheme. Operating systems can find + all CPUs through the ACPI tables. */ + if (actual_cpu_count >= 15) + break; }
config->entrycount = actual_cpu_count + 2 + 16;