Skip to content

Commit

Permalink
x86: fix WARN_ON() message: teach page_is_ram() about the special 4Kb…
Browse files Browse the repository at this point in the history
… bios data page

This patch teaches page_is_ram() about the fact that the first
4Kb of memory are special on x86, even though the E820 table
normally doesn't exclude it.

This fixes the WARN_ON() reported by Laurent Riffard who was also
very helpful in diagnosing the issue.

[ mingo@elte.hu: we are working on doing this properly in the e820
  space, but for 2.6.25 this is the better fix. ]

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  • Loading branch information
Arjan van de Ven authored and Ingo Molnar committed Feb 19, 2008
1 parent 7c6357d commit d8a9e6a
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions arch/x86/mm/ioremap.c
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down

0 comments on commit d8a9e6a

Please sign in to comment.