From 984760dbf5e48f6224dfe9e26e03536b3d38b6cd Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Tue, 8 Aug 2000 22:17:26 +0000 Subject: Merge with Linux 2.4.0-test6-pre8. --- arch/arm/mm/init.c | 10 +++++----- arch/arm/mm/mm-armv.c | 4 ++-- arch/arm/mm/small_page.c | 6 ++---- 3 files changed, 9 insertions(+), 11 deletions(-) (limited to 'arch/arm') diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index 589653111..72eaa2e47 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c @@ -534,8 +534,8 @@ void __init paging_init(struct meminfo *mi) memzero(zero_page, PAGE_SIZE); memzero(bad_page, PAGE_SIZE); - empty_zero_page = mem_map + MAP_NR(zero_page); - empty_bad_page = mem_map + MAP_NR(bad_page); + empty_zero_page = virt_to_page(zero_page); + empty_bad_page = virt_to_page(bad_page); empty_bad_pte_table = ((pte_t *)bad_table) + TABLE_OFFSET; } @@ -598,7 +598,7 @@ void __init mem_init(void) static inline void free_area(unsigned long addr, unsigned long end, char *s) { unsigned int size = (end - addr) >> 10; - struct page *page = mem_map + MAP_NR(addr); + struct page *page = virt_to_page(addr); for (; addr < end; addr += PAGE_SIZE, page ++) { ClearPageReserved(page); @@ -632,8 +632,8 @@ void free_initrd_mem(unsigned long start, unsigned long end) if (!keep_initrd) { for (addr = start; addr < end; addr += PAGE_SIZE) { - ClearPageReserved(mem_map + MAP_NR(addr)); - set_page_count(mem_map+MAP_NR(addr), 1); + ClearPageReserved(virt_to_page(addr)); + set_page_count(virt_to_page(addr), 1); free_page(addr); totalram_pages++; } diff --git a/arch/arm/mm/mm-armv.c b/arch/arm/mm/mm-armv.c index 1edbc35fd..e656a25d2 100644 --- a/arch/arm/mm/mm-armv.c +++ b/arch/arm/mm/mm-armv.c @@ -417,8 +417,8 @@ static inline void free_memmap(unsigned long start, unsigned long end) start = __phys_to_virt(start); end = __phys_to_virt(end); - pg = PAGE_ALIGN((unsigned long)(mem_map + MAP_NR(start))); - pgend = ((unsigned long)(mem_map + MAP_NR(end))) & PAGE_MASK; + pg = PAGE_ALIGN((unsigned long)(virt_to_page(start))); + pgend = ((unsigned long)(virt_to_page(end))) & PAGE_MASK; start = __virt_to_phys(pg); end = __virt_to_phys(pgend); diff --git a/arch/arm/mm/small_page.c b/arch/arm/mm/small_page.c index 40c91ba32..27fb0f663 100644 --- a/arch/arm/mm/small_page.c +++ b/arch/arm/mm/small_page.c @@ -142,12 +142,10 @@ no_page: static void __free_small_page(unsigned long spage, struct order *order) { unsigned long flags; - unsigned long nr; struct page *page; - nr = MAP_NR(spage); - if (nr < max_mapnr) { - page = mem_map + nr; + page = virt_to_page(spage); + if (VALID_PAGE(page)) { /* * The container-page must be marked Reserved -- cgit v1.2.3