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

Go to the source code of this file.

Macros

#define _PAGE_PRESENT_SHIFT   (0)
 
#define _PAGE_PRESENT   (1 << _PAGE_PRESENT_SHIFT)
 
#define _PAGE_READ_SHIFT   (cpu_has_rixi ? _PAGE_PRESENT_SHIFT : _PAGE_PRESENT_SHIFT + 1)
 
#define _PAGE_READ   ({BUG_ON(cpu_has_rixi); 1 << _PAGE_READ_SHIFT; })
 
#define _PAGE_WRITE_SHIFT   (_PAGE_READ_SHIFT + 1)
 
#define _PAGE_WRITE   (1 << _PAGE_WRITE_SHIFT)
 
#define _PAGE_ACCESSED_SHIFT   (_PAGE_WRITE_SHIFT + 1)
 
#define _PAGE_ACCESSED   (1 << _PAGE_ACCESSED_SHIFT)
 
#define _PAGE_MODIFIED_SHIFT   (_PAGE_ACCESSED_SHIFT + 1)
 
#define _PAGE_MODIFIED   (1 << _PAGE_MODIFIED_SHIFT)
 
#define _PAGE_FILE   (_PAGE_MODIFIED)
 
#define _PAGE_HUGE_SHIFT   (_PAGE_MODIFIED_SHIFT)
 
#define _PAGE_HUGE   ({BUG(); 1; }) /* Dummy value */
 
#define _PAGE_NO_EXEC_SHIFT   (cpu_has_rixi ? _PAGE_HUGE_SHIFT + 1 : _PAGE_HUGE_SHIFT)
 
#define _PAGE_NO_EXEC   ({BUG_ON(!cpu_has_rixi); 1 << _PAGE_NO_EXEC_SHIFT; })
 
#define _PAGE_NO_READ_SHIFT   (cpu_has_rixi ? _PAGE_NO_EXEC_SHIFT + 1 : _PAGE_NO_EXEC_SHIFT)
 
#define _PAGE_NO_READ   ({BUG_ON(!cpu_has_rixi); 1 << _PAGE_NO_READ_SHIFT; })
 
#define _PAGE_GLOBAL_SHIFT   (_PAGE_NO_READ_SHIFT + 1)
 
#define _PAGE_GLOBAL   (1 << _PAGE_GLOBAL_SHIFT)
 
#define _PAGE_VALID_SHIFT   (_PAGE_GLOBAL_SHIFT + 1)
 
#define _PAGE_VALID   (1 << _PAGE_VALID_SHIFT)
 
#define _PAGE_SILENT_READ   (_PAGE_VALID)
 
#define _PAGE_DIRTY_SHIFT   (_PAGE_VALID_SHIFT + 1)
 
#define _PAGE_DIRTY   (1 << _PAGE_DIRTY_SHIFT)
 
#define _PAGE_SILENT_WRITE   (_PAGE_DIRTY)
 
#define _CACHE_SHIFT   (_PAGE_DIRTY_SHIFT + 1)
 
#define _CACHE_MASK   (7 << _CACHE_SHIFT)
 
#define _PFN_SHIFT   (PAGE_SHIFT - 12 + _CACHE_SHIFT + 3)
 
#define _PFN_MASK   (~((1 << (_PFN_SHIFT)) - 1))
 
#define _CACHE_CACHABLE_NO_WA   (0<<_CACHE_SHIFT) /* R4600 only */
 
#define _CACHE_CACHABLE_WA   (1<<_CACHE_SHIFT) /* R4600 only */
 
#define _CACHE_UNCACHED   (2<<_CACHE_SHIFT) /* R4[0246]00 */
 
#define _CACHE_CACHABLE_NONCOHERENT   (3<<_CACHE_SHIFT) /* R4[0246]00 */
 
#define _CACHE_CACHABLE_CE   (4<<_CACHE_SHIFT) /* R4[04]00MC only */
 
#define _CACHE_CACHABLE_COW   (5<<_CACHE_SHIFT) /* R4[04]00MC only */
 
#define _CACHE_CACHABLE_COHERENT   (5<<_CACHE_SHIFT) /* MIPS32R2 CMP */
 
#define _CACHE_CACHABLE_CUW   (6<<_CACHE_SHIFT) /* R4[04]00MC only */
 
#define _CACHE_UNCACHED_ACCELERATED   (7<<_CACHE_SHIFT) /* R10000 only */
 
#define __READABLE   (_PAGE_SILENT_READ | _PAGE_ACCESSED | (cpu_has_rixi ? 0 : _PAGE_READ))
 
#define __WRITEABLE   (_PAGE_WRITE | _PAGE_SILENT_WRITE | _PAGE_MODIFIED)
 
#define _PAGE_CHG_MASK   (_PFN_MASK | _PAGE_ACCESSED | _PAGE_MODIFIED | _CACHE_MASK)
 

Macro Definition Documentation

#define __READABLE   (_PAGE_SILENT_READ | _PAGE_ACCESSED | (cpu_has_rixi ? 0 : _PAGE_READ))

Definition at line 223 of file pgtable-bits.h.

#define __WRITEABLE   (_PAGE_WRITE | _PAGE_SILENT_WRITE | _PAGE_MODIFIED)

Definition at line 224 of file pgtable-bits.h.

#define _CACHE_CACHABLE_CE   (4<<_CACHE_SHIFT) /* R4[04]00MC only */

Definition at line 215 of file pgtable-bits.h.

#define _CACHE_CACHABLE_COHERENT   (5<<_CACHE_SHIFT) /* MIPS32R2 CMP */

Definition at line 217 of file pgtable-bits.h.

#define _CACHE_CACHABLE_COW   (5<<_CACHE_SHIFT) /* R4[04]00MC only */

Definition at line 216 of file pgtable-bits.h.

#define _CACHE_CACHABLE_CUW   (6<<_CACHE_SHIFT) /* R4[04]00MC only */

Definition at line 218 of file pgtable-bits.h.

#define _CACHE_CACHABLE_NO_WA   (0<<_CACHE_SHIFT) /* R4600 only */

Definition at line 211 of file pgtable-bits.h.

#define _CACHE_CACHABLE_NONCOHERENT   (3<<_CACHE_SHIFT) /* R4[0246]00 */

Definition at line 214 of file pgtable-bits.h.

#define _CACHE_CACHABLE_WA   (1<<_CACHE_SHIFT) /* R4600 only */

Definition at line 212 of file pgtable-bits.h.

#define _CACHE_MASK   (7 << _CACHE_SHIFT)

Definition at line 128 of file pgtable-bits.h.

#define _CACHE_SHIFT   (_PAGE_DIRTY_SHIFT + 1)

Definition at line 127 of file pgtable-bits.h.

#define _CACHE_UNCACHED   (2<<_CACHE_SHIFT) /* R4[0246]00 */

Definition at line 213 of file pgtable-bits.h.

#define _CACHE_UNCACHED_ACCELERATED   (7<<_CACHE_SHIFT) /* R10000 only */

Definition at line 219 of file pgtable-bits.h.

#define _PAGE_ACCESSED   (1 << _PAGE_ACCESSED_SHIFT)

Definition at line 90 of file pgtable-bits.h.

#define _PAGE_ACCESSED_SHIFT   (_PAGE_WRITE_SHIFT + 1)

Definition at line 89 of file pgtable-bits.h.

#define _PAGE_CHG_MASK   (_PFN_MASK | _PAGE_ACCESSED | _PAGE_MODIFIED | _CACHE_MASK)

Definition at line 226 of file pgtable-bits.h.

#define _PAGE_DIRTY   (1 << _PAGE_DIRTY_SHIFT)

Definition at line 124 of file pgtable-bits.h.

#define _PAGE_DIRTY_SHIFT   (_PAGE_VALID_SHIFT + 1)

Definition at line 123 of file pgtable-bits.h.

#define _PAGE_FILE   (_PAGE_MODIFIED)

Definition at line 95 of file pgtable-bits.h.

#define _PAGE_GLOBAL   (1 << _PAGE_GLOBAL_SHIFT)

Definition at line 115 of file pgtable-bits.h.

#define _PAGE_GLOBAL_SHIFT   (_PAGE_NO_READ_SHIFT + 1)

Definition at line 114 of file pgtable-bits.h.

#define _PAGE_HUGE   ({BUG(); 1; }) /* Dummy value */

Definition at line 103 of file pgtable-bits.h.

#define _PAGE_HUGE_SHIFT   (_PAGE_MODIFIED_SHIFT)

Definition at line 102 of file pgtable-bits.h.

#define _PAGE_MODIFIED   (1 << _PAGE_MODIFIED_SHIFT)

Definition at line 93 of file pgtable-bits.h.

#define _PAGE_MODIFIED_SHIFT   (_PAGE_ACCESSED_SHIFT + 1)

Definition at line 92 of file pgtable-bits.h.

#define _PAGE_NO_EXEC   ({BUG_ON(!cpu_has_rixi); 1 << _PAGE_NO_EXEC_SHIFT; })

Definition at line 108 of file pgtable-bits.h.

#define _PAGE_NO_EXEC_SHIFT   (cpu_has_rixi ? _PAGE_HUGE_SHIFT + 1 : _PAGE_HUGE_SHIFT)

Definition at line 107 of file pgtable-bits.h.

#define _PAGE_NO_READ   ({BUG_ON(!cpu_has_rixi); 1 << _PAGE_NO_READ_SHIFT; })

Definition at line 112 of file pgtable-bits.h.

#define _PAGE_NO_READ_SHIFT   (cpu_has_rixi ? _PAGE_NO_EXEC_SHIFT + 1 : _PAGE_NO_EXEC_SHIFT)

Definition at line 111 of file pgtable-bits.h.

#define _PAGE_PRESENT   (1 << _PAGE_PRESENT_SHIFT)

Definition at line 81 of file pgtable-bits.h.

#define _PAGE_PRESENT_SHIFT   (0)

Definition at line 80 of file pgtable-bits.h.

#define _PAGE_READ   ({BUG_ON(cpu_has_rixi); 1 << _PAGE_READ_SHIFT; })

Definition at line 84 of file pgtable-bits.h.

#define _PAGE_READ_SHIFT   (cpu_has_rixi ? _PAGE_PRESENT_SHIFT : _PAGE_PRESENT_SHIFT + 1)

Definition at line 83 of file pgtable-bits.h.

#define _PAGE_SILENT_READ   (_PAGE_VALID)

Definition at line 120 of file pgtable-bits.h.

#define _PAGE_SILENT_WRITE   (_PAGE_DIRTY)

Definition at line 125 of file pgtable-bits.h.

#define _PAGE_VALID   (1 << _PAGE_VALID_SHIFT)

Definition at line 118 of file pgtable-bits.h.

#define _PAGE_VALID_SHIFT   (_PAGE_GLOBAL_SHIFT + 1)

Definition at line 117 of file pgtable-bits.h.

#define _PAGE_WRITE   (1 << _PAGE_WRITE_SHIFT)

Definition at line 87 of file pgtable-bits.h.

#define _PAGE_WRITE_SHIFT   (_PAGE_READ_SHIFT + 1)

Definition at line 86 of file pgtable-bits.h.

#define _PFN_MASK   (~((1 << (_PFN_SHIFT)) - 1))

Definition at line 137 of file pgtable-bits.h.

#define _PFN_SHIFT   (PAGE_SHIFT - 12 + _CACHE_SHIFT + 3)

Definition at line 130 of file pgtable-bits.h.