Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros
pgtable-2level.h File Reference

Go to the source code of this file.

Macros

#define PTRS_PER_PTE   512
 
#define PTRS_PER_PMD   1
 
#define PTRS_PER_PGD   2048
 
#define PTE_HWTABLE_PTRS   (PTRS_PER_PTE)
 
#define PTE_HWTABLE_OFF   (PTE_HWTABLE_PTRS * sizeof(pte_t))
 
#define PTE_HWTABLE_SIZE   (PTRS_PER_PTE * sizeof(u32))
 
#define PMD_SHIFT   21
 
#define PGDIR_SHIFT   21
 
#define PMD_SIZE   (1UL << PMD_SHIFT)
 
#define PMD_MASK   (~(PMD_SIZE-1))
 
#define PGDIR_SIZE   (1UL << PGDIR_SHIFT)
 
#define PGDIR_MASK   (~(PGDIR_SIZE-1))
 
#define SECTION_SHIFT   20
 
#define SECTION_SIZE   (1UL << SECTION_SHIFT)
 
#define SECTION_MASK   (~(SECTION_SIZE-1))
 
#define SUPERSECTION_SHIFT   24
 
#define SUPERSECTION_SIZE   (1UL << SUPERSECTION_SHIFT)
 
#define SUPERSECTION_MASK   (~(SUPERSECTION_SIZE-1))
 
#define USER_PTRS_PER_PGD   (TASK_SIZE / PGDIR_SIZE)
 
#define L_PTE_PRESENT   (_AT(pteval_t, 1) << 0)
 
#define L_PTE_YOUNG   (_AT(pteval_t, 1) << 1)
 
#define L_PTE_FILE   (_AT(pteval_t, 1) << 2) /* only when !PRESENT */
 
#define L_PTE_DIRTY   (_AT(pteval_t, 1) << 6)
 
#define L_PTE_RDONLY   (_AT(pteval_t, 1) << 7)
 
#define L_PTE_USER   (_AT(pteval_t, 1) << 8)
 
#define L_PTE_XN   (_AT(pteval_t, 1) << 9)
 
#define L_PTE_SHARED   (_AT(pteval_t, 1) << 10) /* shared(v6), coherent(xsc3) */
 
#define L_PTE_MT_UNCACHED   (_AT(pteval_t, 0x00) << 2) /* 0000 */
 
#define L_PTE_MT_BUFFERABLE   (_AT(pteval_t, 0x01) << 2) /* 0001 */
 
#define L_PTE_MT_WRITETHROUGH   (_AT(pteval_t, 0x02) << 2) /* 0010 */
 
#define L_PTE_MT_WRITEBACK   (_AT(pteval_t, 0x03) << 2) /* 0011 */
 
#define L_PTE_MT_MINICACHE   (_AT(pteval_t, 0x06) << 2) /* 0110 (sa1100, xscale) */
 
#define L_PTE_MT_WRITEALLOC   (_AT(pteval_t, 0x07) << 2) /* 0111 */
 
#define L_PTE_MT_DEV_SHARED   (_AT(pteval_t, 0x04) << 2) /* 0100 */
 
#define L_PTE_MT_DEV_NONSHARED   (_AT(pteval_t, 0x0c) << 2) /* 1100 */
 
#define L_PTE_MT_DEV_WC   (_AT(pteval_t, 0x09) << 2) /* 1001 */
 
#define L_PTE_MT_DEV_CACHED   (_AT(pteval_t, 0x0b) << 2) /* 1011 */
 
#define L_PTE_MT_MASK   (_AT(pteval_t, 0x0f) << 2)
 
#define pud_none(pud)   (0)
 
#define pud_bad(pud)   (0)
 
#define pud_present(pud)   (1)
 
#define pud_clear(pudp)   do { } while (0)
 
#define set_pud(pud, pudp)   do { } while (0)
 
#define pmd_bad(pmd)   (pmd_val(pmd) & 2)
 
#define copy_pmd(pmdpd, pmdps)
 
#define pmd_clear(pmdp)
 
#define pmd_addr_end(addr, end)   (end)
 
#define set_pte_ext(ptep, pte, ext)   cpu_set_pte_ext(ptep,pte,ext)
 

Macro Definition Documentation

#define copy_pmd (   pmdpd,
  pmdps 
)
Value:
do { \
pmdpd[0] = pmdps[0]; \
pmdpd[1] = pmdps[1]; \
flush_pmd_entry(pmdpd); \
} while (0)

Definition at line 163 of file pgtable-2level.h.

#define L_PTE_DIRTY   (_AT(pteval_t, 1) << 6)

Definition at line 121 of file pgtable-2level.h.

#define L_PTE_FILE   (_AT(pteval_t, 1) << 2) /* only when !PRESENT */

Definition at line 120 of file pgtable-2level.h.

#define L_PTE_MT_BUFFERABLE   (_AT(pteval_t, 0x01) << 2) /* 0001 */

Definition at line 132 of file pgtable-2level.h.

#define L_PTE_MT_DEV_CACHED   (_AT(pteval_t, 0x0b) << 2) /* 1011 */

Definition at line 140 of file pgtable-2level.h.

#define L_PTE_MT_DEV_NONSHARED   (_AT(pteval_t, 0x0c) << 2) /* 1100 */

Definition at line 138 of file pgtable-2level.h.

#define L_PTE_MT_DEV_SHARED   (_AT(pteval_t, 0x04) << 2) /* 0100 */

Definition at line 137 of file pgtable-2level.h.

#define L_PTE_MT_DEV_WC   (_AT(pteval_t, 0x09) << 2) /* 1001 */

Definition at line 139 of file pgtable-2level.h.

#define L_PTE_MT_MASK   (_AT(pteval_t, 0x0f) << 2)

Definition at line 141 of file pgtable-2level.h.

#define L_PTE_MT_MINICACHE   (_AT(pteval_t, 0x06) << 2) /* 0110 (sa1100, xscale) */

Definition at line 135 of file pgtable-2level.h.

#define L_PTE_MT_UNCACHED   (_AT(pteval_t, 0x00) << 2) /* 0000 */

Definition at line 131 of file pgtable-2level.h.

#define L_PTE_MT_WRITEALLOC   (_AT(pteval_t, 0x07) << 2) /* 0111 */

Definition at line 136 of file pgtable-2level.h.

#define L_PTE_MT_WRITEBACK   (_AT(pteval_t, 0x03) << 2) /* 0011 */

Definition at line 134 of file pgtable-2level.h.

#define L_PTE_MT_WRITETHROUGH   (_AT(pteval_t, 0x02) << 2) /* 0010 */

Definition at line 133 of file pgtable-2level.h.

#define L_PTE_PRESENT   (_AT(pteval_t, 1) << 0)

Definition at line 118 of file pgtable-2level.h.

#define L_PTE_RDONLY   (_AT(pteval_t, 1) << 7)

Definition at line 122 of file pgtable-2level.h.

#define L_PTE_SHARED   (_AT(pteval_t, 1) << 10) /* shared(v6), coherent(xsc3) */

Definition at line 125 of file pgtable-2level.h.

#define L_PTE_USER   (_AT(pteval_t, 1) << 8)

Definition at line 123 of file pgtable-2level.h.

#define L_PTE_XN   (_AT(pteval_t, 1) << 9)

Definition at line 124 of file pgtable-2level.h.

#define L_PTE_YOUNG   (_AT(pteval_t, 1) << 1)

Definition at line 119 of file pgtable-2level.h.

#define PGDIR_MASK   (~(PGDIR_SIZE-1))

Definition at line 89 of file pgtable-2level.h.

#define PGDIR_SHIFT   21

Definition at line 84 of file pgtable-2level.h.

#define PGDIR_SIZE   (1UL << PGDIR_SHIFT)

Definition at line 88 of file pgtable-2level.h.

#define pmd_addr_end (   addr,
  end 
)    (end)

Definition at line 178 of file pgtable-2level.h.

#define pmd_bad (   pmd)    (pmd_val(pmd) & 2)

Definition at line 161 of file pgtable-2level.h.

#define pmd_clear (   pmdp)
Value:
do { \
pmdp[0] = __pmd(0); \
pmdp[1] = __pmd(0); \
clean_pmd_entry(pmdp); \
} while (0)

Definition at line 170 of file pgtable-2level.h.

#define PMD_MASK   (~(PMD_SIZE-1))

Definition at line 87 of file pgtable-2level.h.

#define PMD_SHIFT   21

Definition at line 83 of file pgtable-2level.h.

#define PMD_SIZE   (1UL << PMD_SHIFT)

Definition at line 86 of file pgtable-2level.h.

#define PTE_HWTABLE_OFF   (PTE_HWTABLE_PTRS * sizeof(pte_t))

Definition at line 76 of file pgtable-2level.h.

#define PTE_HWTABLE_PTRS   (PTRS_PER_PTE)

Definition at line 75 of file pgtable-2level.h.

#define PTE_HWTABLE_SIZE   (PTRS_PER_PTE * sizeof(u32))

Definition at line 77 of file pgtable-2level.h.

#define PTRS_PER_PGD   2048

Definition at line 73 of file pgtable-2level.h.

#define PTRS_PER_PMD   1

Definition at line 72 of file pgtable-2level.h.

#define PTRS_PER_PTE   512

Definition at line 71 of file pgtable-2level.h.

#define pud_bad (   pud)    (0)

Definition at line 151 of file pgtable-2level.h.

#define pud_clear (   pudp)    do { } while (0)

Definition at line 153 of file pgtable-2level.h.

#define pud_none (   pud)    (0)

Definition at line 150 of file pgtable-2level.h.

#define pud_present (   pud)    (1)

Definition at line 152 of file pgtable-2level.h.

#define SECTION_MASK   (~(SECTION_SIZE-1))

Definition at line 96 of file pgtable-2level.h.

#define SECTION_SHIFT   20

Definition at line 94 of file pgtable-2level.h.

#define SECTION_SIZE   (1UL << SECTION_SHIFT)

Definition at line 95 of file pgtable-2level.h.

#define set_pte_ext (   ptep,
  pte,
  ext 
)    cpu_set_pte_ext(ptep,pte,ext)

Definition at line 180 of file pgtable-2level.h.

#define set_pud (   pud,
  pudp 
)    do { } while (0)

Definition at line 154 of file pgtable-2level.h.

#define SUPERSECTION_MASK   (~(SUPERSECTION_SIZE-1))

Definition at line 103 of file pgtable-2level.h.

#define SUPERSECTION_SHIFT   24

Definition at line 101 of file pgtable-2level.h.

#define SUPERSECTION_SIZE   (1UL << SUPERSECTION_SHIFT)

Definition at line 102 of file pgtable-2level.h.

#define USER_PTRS_PER_PGD   (TASK_SIZE / PGDIR_SIZE)

Definition at line 105 of file pgtable-2level.h.