|
#define | USER_RING 1 /* user ring level */ |
|
#define | KERNEL_RING 0 /* kernel ring level */ |
|
#define | PGDIR_SHIFT 22 |
|
#define | PGDIR_SIZE (1UL << PGDIR_SHIFT) |
|
#define | PGDIR_MASK (~(PGDIR_SIZE-1)) |
|
#define | PTRS_PER_PTE 1024 |
|
#define | PTRS_PER_PTE_SHIFT 10 |
|
#define | PTRS_PER_PGD 1024 |
|
#define | PGD_ORDER 0 |
|
#define | USER_PTRS_PER_PGD (TASK_SIZE/PGDIR_SIZE) |
|
#define | FIRST_USER_ADDRESS 0 |
|
#define | FIRST_USER_PGD_NR (FIRST_USER_ADDRESS >> PGDIR_SHIFT) |
|
#define | VMALLOC_START 0xC0000000 |
|
#define | VMALLOC_END 0xC7FEFFFF |
|
#define | TLBTEMP_BASE_1 0xC7FF0000 |
|
#define | TLBTEMP_BASE_2 0xC7FF8000 |
|
#define | _PAGE_HW_EXEC (1<<0) /* hardware: page is executable */ |
|
#define | _PAGE_HW_WRITE (1<<1) /* hardware: page is writable */ |
|
#define | _PAGE_FILE (1<<1) /* non-linear mapping, if !present */ |
|
#define | _PAGE_PROTNONE (3<<0) /* special case for VM_PROT_NONE */ |
|
#define | _PAGE_CA_BYPASS (0<<2) /* bypass, non-speculative */ |
|
#define | _PAGE_CA_WB (1<<2) /* write-back */ |
|
#define | _PAGE_CA_WT (2<<2) /* write-through */ |
|
#define | _PAGE_CA_MASK (3<<2) |
|
#define | _PAGE_INVALID (3<<2) |
|
#define | _PAGE_USER (1<<4) /* user access (ring=1) */ |
|
#define | _PAGE_WRITABLE_BIT 6 |
|
#define | _PAGE_WRITABLE (1<<6) /* software: page writable */ |
|
#define | _PAGE_DIRTY (1<<7) /* software: page dirty */ |
|
#define | _PAGE_ACCESSED (1<<8) /* software: page accessed (read) */ |
|
#define | _PAGE_VALID (1<<0) |
|
#define | _PAGE_CHG_MASK (PAGE_MASK | _PAGE_ACCESSED | _PAGE_DIRTY) |
|
#define | _PAGE_PRESENT (_PAGE_VALID | _PAGE_CA_WB | _PAGE_ACCESSED) |
|
#define | PAGE_NONE __pgprot(0) |
|
#define | PAGE_SHARED __pgprot(0) |
|
#define | PAGE_COPY __pgprot(0) |
|
#define | PAGE_READONLY __pgprot(0) |
|
#define | PAGE_KERNEL __pgprot(0) |
|
#define | __P000 PAGE_NONE /* private --- */ |
|
#define | __P001 PAGE_READONLY /* private --r */ |
|
#define | __P010 PAGE_COPY /* private -w- */ |
|
#define | __P011 PAGE_COPY /* private -wr */ |
|
#define | __P100 PAGE_READONLY_EXEC /* private x-- */ |
|
#define | __P101 PAGE_READONLY_EXEC /* private x-r */ |
|
#define | __P110 PAGE_COPY_EXEC /* private xw- */ |
|
#define | __P111 PAGE_COPY_EXEC /* private xwr */ |
|
#define | __S000 PAGE_NONE /* shared --- */ |
|
#define | __S001 PAGE_READONLY /* shared --r */ |
|
#define | __S010 PAGE_SHARED /* shared -w- */ |
|
#define | __S011 PAGE_SHARED /* shared -wr */ |
|
#define | __S100 PAGE_READONLY_EXEC /* shared x-- */ |
|
#define | __S101 PAGE_READONLY_EXEC /* shared x-r */ |
|
#define | __S110 PAGE_SHARED_EXEC /* shared xw- */ |
|
#define | __S111 PAGE_SHARED_EXEC /* shared xwr */ |
|
#define | pte_ERROR(e) printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, pte_val(e)) |
|
#define | pgd_ERROR(e) printk("%s:%d: bad pgd entry %08lx.\n", __FILE__, __LINE__, pgd_val(e)) |
|
#define | ZERO_PAGE(vaddr) (virt_to_page(empty_zero_page)) |
|
#define | swapper_pg_dir NULL |
|
#define | pmd_page_vaddr(pmd) ((unsigned long)(pmd_val(pmd) & PAGE_MASK)) |
|
#define | pmd_page(pmd) virt_to_page(pmd_val(pmd)) |
|
#define | pte_none(pte) (pte_val(pte) == _PAGE_INVALID) |
|
#define | pte_present(pte) |
|
#define | pte_clear(mm, addr, ptep) do { update_pte(ptep, __pte(_PAGE_INVALID)); } while(0) |
|
#define | pmd_none(pmd) (!pmd_val(pmd)) |
|
#define | pmd_present(pmd) (pmd_val(pmd) & PAGE_MASK) |
|
#define | pmd_bad(pmd) (pmd_val(pmd) & ~PAGE_MASK) |
|
#define | pmd_clear(pmdp) do { set_pmd(pmdp, __pmd(0)); } while (0) |
|
#define | pte_pfn(pte) (pte_val(pte) >> PAGE_SHIFT) |
|
#define | pte_same(a, b) (pte_val(a) == pte_val(b)) |
|
#define | pte_page(x) pfn_to_page(pte_pfn(x)) |
|
#define | pfn_pte(pfn, prot) __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot)) |
|
#define | mk_pte(page, prot) pfn_pte(page_to_pfn(page), prot) |
|
#define | pgd_offset_k(address) pgd_offset(&init_mm, address) |
|
#define | pgd_offset(mm, address) ((mm)->pgd + pgd_index(address)) |
|
#define | pgd_index(address) ((address) >> PGDIR_SHIFT) |
|
#define | pmd_offset(dir, address) ((pmd_t*)(dir)) |
|
#define | pte_index(address) (((address) >> PAGE_SHIFT) & (PTRS_PER_PTE - 1)) |
|
#define | pte_offset_kernel(dir, addr) ((pte_t*) pmd_page_vaddr(*(dir)) + pte_index(addr)) |
|
#define | pte_offset_map(dir, addr) pte_offset_kernel((dir),(addr)) |
|
#define | pte_unmap(pte) do { } while (0) |
|
#define | __swp_type(entry) (((entry).val >> 6) & 0x1f) |
|
#define | __swp_offset(entry) ((entry).val >> 11) |
|
#define | __swp_entry(type, offs) ((swp_entry_t) {((type) << 6) | ((offs) << 11) | _PAGE_INVALID}) |
|
#define | __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) |
|
#define | __swp_entry_to_pte(x) ((pte_t) { (x).val }) |
|
#define | PTE_FILE_MAX_BITS 28 |
|
#define | pte_to_pgoff(pte) (pte_val(pte) >> 4) |
|
#define | pgoff_to_pte(off) ((pte_t) { ((off) << 4) | _PAGE_INVALID | _PAGE_FILE }) |
|
#define | kern_addr_valid(addr) (1) |
|
#define | io_remap_pfn_range(vma, from, pfn, size, prot) remap_pfn_range(vma, from, pfn, size, prot) |
|
#define | __HAVE_ARCH_PTEP_TEST_AND_CLEAR_YOUNG |
|
#define | __HAVE_ARCH_PTEP_GET_AND_CLEAR |
|
#define | __HAVE_ARCH_PTEP_SET_WRPROTECT |
|
#define | __HAVE_ARCH_PTEP_MKDIRTY |
|
#define | __HAVE_ARCH_PTE_SAME |
|