]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-generic/memory_model.h
[PATCH] remove zone_mem_map
[linux-2.6-omap-h63xx.git] / include / asm-generic / memory_model.h
index a7bb4978e808c1d2e7c1c77b568fa3184ee29533..0cfb086dd3736e5a5bf5ed4ebe4cef1bc694f5df 100644 (file)
@@ -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)