On Mon, 2008-02-18 at 02:40 -0800, Joel Becker wrote: > On Sun, Feb 17, 2008 at 06:49:21PM +0000, Ian Campbell wrote:
> > x86/xen: Do not scan for DMI unless the DMI region is reserved by e820. > This fixed it. I'm now booting successfully. Thank you! Excellent. Jeremy, are you happy for this to go in? >From 23e4ec12b95064320f83fca1cc1ad5c7b2eb3386 Mon Sep 17 00:00:00 2001 From: Ian Campbell <[EMAIL PROTECTED]> Date: Tue, 19 Feb 2008 21:57:45 +0000 Subject: [PATCH] x86/xen: Do not scan for DMI unless the DMI region is reserved by e820. Under Xen the memory at 0xf0000 is regular RAM and so can potentially contain a page table and hence cannot be mapped. The e820 map given to guest reflects this. Signed-off-by: Ian Campbell <[EMAIL PROTECTED]> --- drivers/firmware/dmi_scan.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c index 653265a..7d29403 100644 --- a/drivers/firmware/dmi_scan.c +++ b/drivers/firmware/dmi_scan.c @@ -7,6 +7,7 @@ #include <linux/bootmem.h> #include <linux/slab.h> #include <asm/dmi.h> +#include <asm/e820.h> static char dmi_empty_string[] = " "; @@ -371,6 +372,9 @@ void __init dmi_scan_machine(void) } } else { + if (!e820_all_mapped(0xF0000, 0xF0000+0x10000, E820_RESERVED)) + goto out; + /* * no iounmap() for that ioremap(); it would be a no-op, but * it's so early in setup that sucker gets confused into doing -- 1.5.4.2 -- Ian Campbell After the game the king and the pawn go in the same box. -- Italian proverb -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/