From: Keir Fraser Date: Fri, 19 Oct 2007 16:47:12 +0000 (+0100) Subject: Avoid passing uninitialised ACPI tables to dom0 when checksums fail. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~14847^2~11 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f475a034a7560a64416f9fde0f035b74ef3ac2ea;p=xen.git Avoid passing uninitialised ACPI tables to dom0 when checksums fail. If during boot, ACPI checksum failures disable ACPI support in Xen, pass 'acpi=off' to the domain 0 kernel to avoid a fatal page fault as domain 0 attempts to access the uninitialized ACPI tables. Signed-off-by: David Lively Signed-off-by: Steve Ofsthun --- diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index a9c1beeba8..47d81c4ada 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -972,6 +972,11 @@ void __init __start_xen(unsigned long mbi_p) if ( acpi_skip_timer_override && !strstr(dom0_cmdline, "acpi_skip_timer_override") ) safe_strcat(dom0_cmdline, " acpi_skip_timer_override"); + if ( (strlen(acpi_param) == 0) && acpi_disabled ) + { + printk("ACPI is disabled, notifying Domain 0 (acpi=off)\n"); + safe_strcpy(acpi_param, "off"); + } if ( (strlen(acpi_param) != 0) && !strstr(dom0_cmdline, "acpi=") ) { safe_strcat(dom0_cmdline, " acpi=");