[PATCH] i386: srat on non-acpi hw fix

From: Magnus Damm
Date: Wed Oct 26 2005 - 03:05:33 EST


This patch adds a check for the return value of acpi_find_root_pointer().
Without this patch systems without ACPI support such as QEMU crashes when
booting a NUMA kernel with CONFIG_ACPI_SRAT=y.

Signed-off-by: Magnus Damm <magnus@xxxxxxxxxxxxx>
---

diff -urNp linux-2.6.14-rc5-mm1/arch/i386/kernel/srat.c linux-2.6.14-rc5-mm1-i386_srat_non_acpi/arch/i386/kernel/srat.c
--- linux-2.6.14-rc5-mm1/arch/i386/kernel/srat.c 2005-10-24 18:18:12.000000000 +0900
+++ linux-2.6.14-rc5-mm1-i386_srat_non_acpi/arch/i386/kernel/srat.c 2005-10-24 18:24:05.000000000 +0900
@@ -327,7 +327,12 @@ int __init get_memcfg_from_srat(void)
int tables = 0;
int i = 0;

- acpi_find_root_pointer(ACPI_PHYSICAL_ADDRESSING, rsdp_address);
+ if (ACPI_FAILURE(acpi_find_root_pointer(ACPI_PHYSICAL_ADDRESSING,
+ rsdp_address))) {
+ printk("%s: System description tables not found\n",
+ __FUNCTION__);
+ goto out_err;
+ }

if (rsdp_address->pointer_type == ACPI_PHYSICAL_POINTER) {
printk("%s: assigning address to rsdp\n", __FUNCTION__);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/