]> Pileus Git - ~andy/linux/blobdiff - include/asm-sh/pgtable.h
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
[~andy/linux] / include / asm-sh / pgtable.h
index af62bd33a02af03d24917e1432b52894ad07e04c..184d7fcaaf107a068f3c5e8967f60a1fd5aaa934 100644 (file)
@@ -43,17 +43,17 @@ extern unsigned long empty_zero_page[PAGE_SIZE / sizeof(unsigned long)];
 /* PGD bits */
 #define PGDIR_SHIFT    (PTE_SHIFT + PTE_BITS)
 #define PGDIR_BITS     (32 - PGDIR_SHIFT)
-#define PGDIR_SIZE     (1 << PGDIR_SHIFT)
+#define PGDIR_SIZE     (1UL << PGDIR_SHIFT)
 #define PGDIR_MASK     (~(PGDIR_SIZE-1))
 
 /* Entries per level */
-#define PTRS_PER_PTE   (PAGE_SIZE / 4)
+#define PTRS_PER_PTE   (PAGE_SIZE / (1 << PTE_MAGNITUDE))
 #define PTRS_PER_PGD   (PAGE_SIZE / 4)
 
 #define USER_PTRS_PER_PGD      (TASK_SIZE/PGDIR_SIZE)
 #define FIRST_USER_ADDRESS     0
 
-#define PTE_PHYS_MASK  0x1ffff000
+#define PTE_PHYS_MASK          (0x20000000 - PAGE_SIZE)
 
 /*
  * First 1MB map is used by fixed purpose.
@@ -548,7 +548,7 @@ extern void update_mmu_cache(struct vm_area_struct * vma,
 #else
 #define __swp_type(x)                  ((x).val & 0xff)
 #define __swp_offset(x)                        ((x).val >> 10)
-#define __swp_entry(type, offset)      ((swp_entry_t){(type) | (offset) <<10)})
+#define __swp_entry(type, offset)      ((swp_entry_t){(type) | (offset) <<10})
 
 #define __pte_to_swp_entry(pte)                ((swp_entry_t) { pte_val(pte) >> 1 })
 #define __swp_entry_to_pte(x)          ((pte_t) { (x).val << 1 })