lkml.org 
[lkml]   [2010]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 3/3] x86: use the generic page_is_ram()
The generic resource based page_is_ram() works better with memory
hotplug/hotremove. So switch the x86 e820map based code to it.

CC: Andi Kleen <andi@firstfloor.org>
CC: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
CC: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
---
arch/x86/include/asm/page_types.h | 1 -
arch/x86/mm/ioremap.c | 21 ---------------------
2 files changed, 22 deletions(-)

--- linux-mm.orig/arch/x86/include/asm/page_types.h 2010-01-22 11:20:29.000000000 +0800
+++ linux-mm/arch/x86/include/asm/page_types.h 2010-01-22 11:20:39.000000000 +0800
@@ -40,7 +40,6 @@

#ifndef __ASSEMBLY__

-extern int page_is_ram(unsigned long pagenr);
extern int devmem_is_allowed(unsigned long pagenr);

extern unsigned long max_low_pfn_mapped;
--- linux-mm.orig/arch/x86/mm/ioremap.c 2010-01-22 11:20:37.000000000 +0800
+++ linux-mm/arch/x86/mm/ioremap.c 2010-01-22 11:20:39.000000000 +0800
@@ -24,27 +24,6 @@

#include "physaddr.h"

-int page_is_ram(unsigned long pagenr)
-{
- resource_size_t addr, end;
- int i;
-
- for (i = 0; i < e820.nr_map; i++) {
- /*
- * Not usable memory:
- */
- if (e820.map[i].type != E820_RAM)
- continue;
- addr = (e820.map[i].addr + PAGE_SIZE-1) >> PAGE_SHIFT;
- end = (e820.map[i].addr + e820.map[i].size) >> PAGE_SHIFT;
-
-
- if ((pagenr >= addr) && (pagenr < end))
- return 1;
- }
- return 0;
-}
-
/*
* Fix up the linear direct mapping of the kernel to avoid cache attribute
* conflicts.



\
 
 \ /
  Last update: 2010-01-22 04:33    [W:0.126 / U:2.132 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site