From f372c40b90dd770d22dbc7350d6a09ca29cdb9c8 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Thu, 7 Sep 2023 09:59:41 +0200 Subject: [PATCH] x86/tables: Upgrade error to critical When more ACPI tables are written than space is available in CBMEM, the buffer overflow corrupts other CBMEM tables and a successful boot is unlikely. Upgrade the error message to critical and be more precise what to do. Change-Id: I152842945f552905729265f7d623cd581dd0a8d0 Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/c/coreboot/+/77714 Tested-by: build bot (Jenkins) Reviewed-by: Naresh --- src/arch/x86/tables.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/arch/x86/tables.c b/src/arch/x86/tables.c index 1cff61436d..273263820b 100644 --- a/src/arch/x86/tables.c +++ b/src/arch/x86/tables.c @@ -101,8 +101,10 @@ static unsigned long write_acpi_table(unsigned long rom_table_end) rom_table_end = ALIGN_UP(rom_table_end, 16); new_high_table_pointer = write_acpi_tables(high_table_pointer); if (new_high_table_pointer > (high_table_pointer - + max_acpi_size)) - printk(BIOS_ERR, "Increase ACPI size\n"); + + max_acpi_size)) { + printk(BIOS_CRIT, "ACPI tables overflowed and corrupted CBMEM!\n"); + printk(BIOS_ERR, "Increase config MAX_ACPI_TABLE_SIZE_KB!\n"); + } printk(BIOS_DEBUG, "ACPI tables: %ld bytes.\n", new_high_table_pointer - high_table_pointer);