From a62813ec1d1cf69bf95eab5649189640f6e326ba Mon Sep 17 00:00:00 2001 From: Arjan van de Ven Date: Mon, 18 Feb 2008 09:54:33 -0800 Subject: [PATCH] --- yaml --- r: 85997 b: refs/heads/master c: d8a9e6a51ec58486f850e3606e3fcb86b5b7da41 h: refs/heads/master i: 85995: f3ecff6520fb2e4aaaae4f620be5f1deed219ef0 v: v3 --- [refs] | 2 +- trunk/arch/x86/mm/ioremap.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 3db875f84ef8..b71577a98a3e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7c6357da1185d286adaa4452d829ac9b27c4d12f +refs/heads/master: d8a9e6a51ec58486f850e3606e3fcb86b5b7da41 diff --git a/trunk/arch/x86/mm/ioremap.c b/trunk/arch/x86/mm/ioremap.c index 9f42d7e9c158..7fb6eff644b3 100644 --- a/trunk/arch/x86/mm/ioremap.c +++ b/trunk/arch/x86/mm/ioremap.c @@ -42,6 +42,15 @@ int page_is_ram(unsigned long pagenr) unsigned long addr, end; int i; + /* + * A special case is the first 4Kb of memory; + * This is a BIOS owned area, not kernel ram, but generally + * not listed as such in the E820 table. + */ + if (pagenr == 0) + return 0; + + for (i = 0; i < e820.nr_map; i++) { /* * Not usable memory: