patch-2.4.0-test6 linux/arch/arm/mm/small_page.c

Next file: linux/arch/i386/Makefile
Previous file: linux/arch/arm/mm/mm-armv.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test5/linux/arch/arm/mm/small_page.c linux/arch/arm/mm/small_page.c
@@ -116,7 +116,7 @@
 		remove_page_from_queue(page);
 	restore_flags(flags);
 
-	return page_address(page) + (offset << order->shift);
+	return (unsigned long) page_address(page) + (offset << order->shift);
 
 need_new_page:
 	page = alloc_page(priority);
@@ -142,12 +142,10 @@
 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

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)