vserver 1.9.5.x5
[linux-2.6.git] / include / asm-sparc / highmem.h
index 7ca1a85..3de42e7 100644 (file)
@@ -24,7 +24,7 @@
 #include <asm/fixmap.h>
 #include <asm/vaddrs.h>
 #include <asm/kmap_types.h>
-#include <asm/pgtsrmmu.h>
+#include <asm/pgtable.h>
 
 /* declarations for highmem.c */
 extern unsigned long highstart_pfn, highend_pfn;
@@ -43,7 +43,7 @@ extern void kmap_init(void) __init;
  */
 #define LAST_PKMAP 1024
 #define PKMAP_SIZE (LAST_PKMAP << PAGE_SHIFT)
-#define PKMAP_BASE SRMMU_PMD_ALIGN_SOFT(SRMMU_NOCACHE_VADDR + (SRMMU_MAX_NOCACHE_PAGES << PAGE_SHIFT))
+#define PKMAP_BASE PMD_ALIGN(SRMMU_NOCACHE_VADDR + (SRMMU_MAX_NOCACHE_PAGES << PAGE_SHIFT))
 
 #define LAST_PKMAP_MASK (LAST_PKMAP - 1)
 #define PKMAP_NR(virt)  ((virt - PKMAP_BASE) >> PAGE_SHIFT)
@@ -57,7 +57,7 @@ extern void kunmap_high(struct page *page);
 static inline void *kmap(struct page *page)
 {
        BUG_ON(in_interrupt());
-       if (page < highmem_start_page)
+       if (!PageHighMem(page))
                return page_address(page);
        return kmap_high(page);
 }
@@ -65,7 +65,7 @@ static inline void *kmap(struct page *page)
 static inline void kunmap(struct page *page)
 {
        BUG_ON(in_interrupt());
-       if (page < highmem_start_page)
+       if (!PageHighMem(page))
                return;
        kunmap_high(page);
 }