diff -r 7c5c3aa858cc xen/arch/x86/acpi/boot.c --- a/xen/arch/x86/acpi/boot.c Tue Jul 31 15:09:45 2007 +0100 +++ b/xen/arch/x86/acpi/boot.c Thu Aug 09 09:08:52 2007 -0400 @@ -473,6 +476,12 @@ static int __init acpi_parse_fadt(unsign return 0; } + if (strncmp(fadt->signature, "FADT", 4)) { + printk(KERN_ERR PREFIX "Invalid FADT signature %.4s\n", + fadt->signature); + return 0; + } + #ifdef CONFIG_ACPI_INTERPRETER /* initialize sci_int early for INT_SRC_OVR MADT parsing */ acpi_fadt.sci_int = fadt->sci_int;