[PATCH] remove zone_mem_map
This patch removes zone_mem_map. pfn_to_page uses pgdat, page_to_pfn uses zone. page_to_pfn can use pgdat instead of zone, which is only one user of zone_mem_map. By modifing it, we can remove zone_mem_map. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Dave Hansen <haveblue@us.ibm.com> Cc: Christoph Lameter <christoph@lameter.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:

committed by
Linus Torvalds

parent
0ecd702bcb
commit
a0140c1d85
@@ -45,11 +45,11 @@ extern unsigned long page_to_pfn(struct page *page);
|
||||
NODE_DATA(__nid)->node_mem_map + arch_local_page_offset(__pfn, __nid);\
|
||||
})
|
||||
|
||||
#define page_to_pfn(pg) \
|
||||
({ struct page *__pg = (pg); \
|
||||
struct zone *__zone = page_zone(__pg); \
|
||||
(unsigned long)(__pg - __zone->zone_mem_map) + \
|
||||
__zone->zone_start_pfn; \
|
||||
#define page_to_pfn(pg) \
|
||||
({ struct page *__pg = (pg); \
|
||||
struct pglist_data *__pgdat = NODE_DATA(page_to_nid(__pg)); \
|
||||
(unsigned long)(__pg - __pgdat->node_mem_map) + \
|
||||
__pgdat->node_start_pfn; \
|
||||
})
|
||||
|
||||
#elif defined(CONFIG_SPARSEMEM)
|
||||
|
Reference in New Issue
Block a user