patch-2.4.0-test6 linux/drivers/char/cpia.c

Next file: linux/drivers/char/drm/Config.in
Previous file: linux/drivers/char/console.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test5/linux/drivers/char/cpia.c linux/drivers/char/cpia.c
@@ -199,9 +199,10 @@
 		if (!pmd_none(*pmd)) {
 			ptep = pte_offset(pmd, adr);
 			pte = *ptep;
-			if (pte_present(pte))
-				ret = page_address(pte_page(pte)) |
-				      (adr & (PAGE_SIZE-1));
+			if (pte_present(pte)) {
+				ret = (unsigned long) page_address(pte_page(pte));
+				ret |= (adr & (PAGE_SIZE-1));
+			}
 		}
 	}
 	return ret;
@@ -238,7 +239,7 @@
 	adr = (unsigned long) mem;
 	while (size > 0) {
 		page = kvirt_to_pa(adr);
-		mem_map_reserve(MAP_NR(__va(page)));
+		mem_map_reserve(virt_to_page(__va(page)));
 		adr += PAGE_SIZE;
 		if (size > PAGE_SIZE)
 			size -= PAGE_SIZE;
@@ -262,7 +263,7 @@
 	adr = (unsigned long) mem;
 	while (size > 0) {
 		page = kvirt_to_pa(adr);
-		mem_map_unreserve(MAP_NR(__va(page)));
+		mem_map_unreserve(virt_to_page(__va(page)));
 		adr += PAGE_SIZE;
 		if (size > PAGE_SIZE)
 			size -= PAGE_SIZE;

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