]> err.no Git - linux-2.6/blobdiff - include/linux/highmem.h
[PATCH] ext4: uninitialised extent handling
[linux-2.6] / include / linux / highmem.h
index 7bd2593dbef9e53c177a22609dc570a8511c4a07..fd7d12daa94ff3e0c066ccc789b6878739c9a022 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef _LINUX_HIGHMEM_H
 #define _LINUX_HIGHMEM_H
 
-#include <linux/config.h>
 #include <linux/fs.h>
 #include <linux/mm.h>
 
@@ -13,17 +12,27 @@ static inline void flush_anon_page(struct page *page, unsigned long vmaddr)
 }
 #endif
 
+#ifndef ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE
+static inline void flush_kernel_dcache_page(struct page *page)
+{
+}
+#endif
+
 #ifdef CONFIG_HIGHMEM
 
 #include <asm/highmem.h>
 
 /* declarations for linux/mm/highmem.c */
 unsigned int nr_free_highpages(void);
+extern unsigned long totalhigh_pages;
 
 #else /* CONFIG_HIGHMEM */
 
 static inline unsigned int nr_free_highpages(void) { return 0; }
 
+#define totalhigh_pages 0
+
+#ifndef ARCH_HAS_KMAP
 static inline void *kmap(struct page *page)
 {
        might_sleep();
@@ -36,6 +45,7 @@ static inline void *kmap(struct page *page)
 #define kunmap_atomic(addr, idx)       do { } while (0)
 #define kmap_atomic_pfn(pfn, idx)      page_address(pfn_to_page(pfn))
 #define kmap_atomic_to_page(ptr)       virt_to_page(ptr)
+#endif
 
 #endif /* CONFIG_HIGHMEM */