]> err.no Git - linux-2.6/blobdiff - include/asm-um/page.h
Merge with ../linux-2.6-smp
[linux-2.6] / include / asm-um / page.h
index 504ea8e486b0532d5d70c387cf262d3c92d8a148..5afee8a8cdf39ea0ec3135feab5b45c269daccdd 100644 (file)
@@ -98,7 +98,13 @@ extern unsigned long uml_physmem;
 
 extern unsigned long to_phys(void *virt);
 extern void *to_virt(unsigned long phys);
-#define __pa(virt) to_phys((void *) virt)
+
+/* Cast to unsigned long before casting to void * to avoid a warning from
+ * mmap_kmem about cutting a long long down to a void *.  Not sure that
+ * casting is the right thing, but 32-bit UML can't have 64-bit virtual
+ * addresses
+ */
+#define __pa(virt) to_phys((void *) (unsigned long) virt)
 #define __va(phys) to_virt((unsigned long) phys)
 
 #define page_to_pfn(page) ((page) - mem_map)