Home
last modified time | relevance | path

Searched refs:pteval_t (Results 1 – 25 of 43) sorted by relevance

12

/linux/arch/arm/include/asm/
H A Dpgtable-2level-hwdef.h58 #define PTE_TYPE_MASK (_AT(pteval_t, 3) << 0)
59 #define PTE_TYPE_FAULT (_AT(pteval_t, 0) << 0)
60 #define PTE_TYPE_LARGE (_AT(pteval_t, 1) << 0)
61 #define PTE_TYPE_SMALL (_AT(pteval_t, 2) << 0)
62 #define PTE_TYPE_EXT (_AT(pteval_t, 3) << 0) /* v5 */
63 #define PTE_BUFFERABLE (_AT(pteval_t, 1) << 2)
64 #define PTE_CACHEABLE (_AT(pteval_t, 1) << 3)
69 #define PTE_EXT_XN (_AT(pteval_t, 1) << 0) /* v6 */
70 #define PTE_EXT_AP_MASK (_AT(pteval_t, 3) << 4)
71 #define PTE_EXT_AP0 (_AT(pteval_t, 1) << 4)
[all …]
H A Dpgtable-2level.h119 #define L_PTE_VALID (_AT(pteval_t, 1) << 0) /* Valid */
120 #define L_PTE_PRESENT (_AT(pteval_t, 1) << 0)
121 #define L_PTE_YOUNG (_AT(pteval_t, 1) << 1)
122 #define L_PTE_DIRTY (_AT(pteval_t, 1) << 6)
123 #define L_PTE_RDONLY (_AT(pteval_t, 1) << 7)
124 #define L_PTE_USER (_AT(pteval_t, 1) << 8)
125 #define L_PTE_XN (_AT(pteval_t, 1) << 9)
126 #define L_PTE_SHARED (_AT(pteval_t, 1) << 10) /* shared(v6), coherent(xsc3) */
127 #define L_PTE_NONE (_AT(pteval_t, 1) << 11)
165 #define L_PTE_MT_UNCACHED (_AT(pteval_t, 0x00) << 2) /* 0000 */
[all …]
H A Dpgtable-3level.h68 #define L_PTE_VALID (_AT(pteval_t, 1) << 0) /* Valid */
69 #define L_PTE_PRESENT (_AT(pteval_t, 3) << 0) /* Present */
70 #define L_PTE_USER (_AT(pteval_t, 1) << 6) /* AP[1] */
71 #define L_PTE_SHARED (_AT(pteval_t, 3) << 8) /* SH[1:0], inner shareable */
72 #define L_PTE_YOUNG (_AT(pteval_t, 1) << 10) /* AF */
73 #define L_PTE_XN (_AT(pteval_t, 1) << 54) /* XN */
74 #define L_PTE_DIRTY (_AT(pteval_t, 1) << 55)
75 #define L_PTE_SPECIAL (_AT(pteval_t, 1) << 56)
76 #define L_PTE_NONE (_AT(pteval_t, 1) << 57) /* PROT_NONE */
77 #define L_PTE_RDONLY (_AT(pteval_t, 1) << 58) /* READ ONLY */
[all …]
H A Dpgtable-3level-hwdef.h59 #define PTE_TYPE_MASK (_AT(pteval_t, 3) << 0)
60 #define PTE_TYPE_FAULT (_AT(pteval_t, 0) << 0)
61 #define PTE_TYPE_PAGE (_AT(pteval_t, 3) << 0)
62 #define PTE_TABLE_BIT (_AT(pteval_t, 1) << 1)
63 #define PTE_BUFFERABLE (_AT(pteval_t, 1) << 2) /* AttrIndx[0] */
64 #define PTE_CACHEABLE (_AT(pteval_t, 1) << 3) /* AttrIndx[1] */
65 #define PTE_AP2 (_AT(pteval_t, 1) << 7) /* AP[2] */
66 #define PTE_EXT_SHARED (_AT(pteval_t, 3) << 8) /* SH[1:0], inner shareable */
67 #define PTE_EXT_AF (_AT(pteval_t, 1) << 10) /* Access Flag */
68 #define PTE_EXT_NG (_AT(pteval_t, 1) << 11) /* nG */
[all …]
H A Dpgtable-2level-types.h12 typedef u32 pteval_t; typedef
21 typedef struct { pteval_t pte; } pte_t;
24 typedef struct { pteval_t pgprot; } pgprot_t;
39 typedef pteval_t pte_t;
42 typedef pteval_t pgprot_t;
H A Dpgtable-3level-types.h13 typedef u64 pteval_t; typedef
24 typedef struct { pteval_t pte; } pte_t;
27 typedef struct { pteval_t pgprot; } pgprot_t;
41 typedef pteval_t pte_t;
44 typedef pteval_t pgprot_t;
H A Dpgtable.h192 pteval_t mask = L_PTE_PRESENT | L_PTE_USER; in pte_access_permitted()
193 pteval_t needed = mask; in pte_access_permitted()
270 const pteval_t mask = L_PTE_XN | L_PTE_RDONLY | L_PTE_USER | in pte_modify()
/linux/arch/x86/include/asm/
H A Dpgtable_types.h51 #define _PAGE_PRESENT (_AT(pteval_t, 1) << _PAGE_BIT_PRESENT)
52 #define _PAGE_RW (_AT(pteval_t, 1) << _PAGE_BIT_RW)
53 #define _PAGE_USER (_AT(pteval_t, 1) << _PAGE_BIT_USER)
54 #define _PAGE_PWT (_AT(pteval_t, 1) << _PAGE_BIT_PWT)
55 #define _PAGE_PCD (_AT(pteval_t, 1) << _PAGE_BIT_PCD)
56 #define _PAGE_ACCESSED (_AT(pteval_t, 1) << _PAGE_BIT_ACCESSED)
57 #define _PAGE_DIRTY (_AT(pteval_t, 1) << _PAGE_BIT_DIRTY)
58 #define _PAGE_PSE (_AT(pteval_t, 1) << _PAGE_BIT_PSE)
59 #define _PAGE_GLOBAL (_AT(pteval_t, 1) << _PAGE_BIT_GLOBAL)
60 #define _PAGE_SOFTW1 (_AT(pteval_t, 1) << _PAGE_BIT_SOFTW1)
[all …]
H A Dpgtable-2level_types.h8 typedef unsigned long pteval_t; typedef
16 pteval_t pte;
17 pteval_t pte_low;
H A Dpgtable-3level_types.h8 typedef u64 pteval_t; typedef
19 pteval_t pte;
H A Dpgtable-3level.h186 #define __swp_pteval_entry(type, offset) ((pteval_t) { \
187 (~(pteval_t)(offset) << SWP_OFFSET_SHIFT >> SWP_TYPE_BITS) \
188 | ((pteval_t)(type) << (64 - SWP_TYPE_BITS)) })
H A Dparavirt.h335 static inline pte_t __pte(pteval_t val) in __pte()
337 return (pte_t) { PVOP_ALT_CALLEE1(pteval_t, pv_ops, mmu.make_pte, val, in __pte()
341 static inline pteval_t pte_val(pte_t pte) in pte_val()
343 return PVOP_ALT_CALLEE1(pteval_t, pv_ops, mmu.pte_val, pte.pte, in pte_val()
363 pteval_t ret; in ptep_modify_prot_start()
365 ret = PVOP_CALL3(pteval_t, pv_ops, mmu.ptep_modify_prot_start, vma, addr, ptep); in ptep_modify_prot_start()
H A Dpgtable_64_types.h14 typedef unsigned long pteval_t; typedef
21 typedef struct { pteval_t pte; } pte_t;
H A Dtlbflush.h370 const pteval_t flush_on_clear = _PAGE_DIRTY | _PAGE_PRESENT | in pte_flags_need_flush()
372 const pteval_t software_flags = _PAGE_SOFTW1 | _PAGE_SOFTW2 | in pte_flags_need_flush()
375 const pteval_t flush_on_change = _PAGE_RW | _PAGE_USER | _PAGE_PWT | in pte_flags_need_flush()
/linux/arch/arm64/include/asm/
H A Dpgtable-hwdef.h164 #define PTE_VALID (_AT(pteval_t, 1) << 0)
165 #define PTE_TYPE_MASK (_AT(pteval_t, 3) << 0)
166 #define PTE_TYPE_PAGE (_AT(pteval_t, 3) << 0)
167 #define PTE_USER (_AT(pteval_t, 1) << 6) /* AP[1] */
168 #define PTE_RDONLY (_AT(pteval_t, 1) << 7) /* AP[2] */
169 #define PTE_SHARED (_AT(pteval_t, 3) << 8) /* SH[1:0], inner shareable */
170 #define PTE_AF (_AT(pteval_t, 1) << 10) /* Access Flag */
171 #define PTE_NG (_AT(pteval_t, 1) << 11) /* nG */
172 #define PTE_GP (_AT(pteval_t, 1) << 50) /* BTI guarded */
173 #define PTE_DBM (_AT(pteval_t, 1) << 51) /* Dirty Bit Management */
[all …]
H A Dpgtable-prot.h17 #define PTE_SWP_EXCLUSIVE (_AT(pteval_t, 1) << 2) /* only for swp ptes */
18 #define PTE_DIRTY (_AT(pteval_t, 1) << 55)
19 #define PTE_SPECIAL (_AT(pteval_t, 1) << 56)
29 #define PTE_UFFD_WP (_AT(pteval_t, 1) << 58) /* uffd-wp tracking */
30 #define PTE_SWP_UFFD_WP (_AT(pteval_t, 1) << 3) /* only for swp ptes */
32 #define PTE_UFFD_WP (_AT(pteval_t, 0))
33 #define PTE_SWP_UFFD_WP (_AT(pteval_t, 0))
H A Dpgtable-types.h22 typedef ptdesc_t pteval_t; typedef
31 typedef struct { pteval_t pte; } pte_t;
H A Dptdump.h64 pteval_t val);
80 int level, pteval_t val) { } in note_page()
/linux/Documentation/translations/zh_CN/mm/
H A Dpage_tables.rst82 - **pte**, `pte_t`, `pteval_t` = **页表项** - 前面提到过。*pte* 是一个由
83 `PTRS_PER_PTE` 个 `pteval_t` 类型元素组成的数组,每个元素将一个虚拟内存页
84 映射到一个物理内存页。体系结构定义了 `pteval_t` 的大小和内容。
86 一个典型的例子是 `pteval_t` 是一个 32 或者 64 位的值,其中高位是 **pfn**,
/linux/include/trace/events/
H A Dxen.h132 TRACE_DEFINE_SIZEOF(pteval_t);
139 __field(pteval_t, pteval)
145 (int)sizeof(pteval_t) * 2, (unsigned long long)pte_val(native_make_pte(__entry->pteval)),
146 (int)sizeof(pteval_t) * 2, (unsigned long long)__entry->pteval)
266 __field(pteval_t, pteval)
274 (int)sizeof(pteval_t) * 2, (unsigned long long)pte_val(native_make_pte(__entry->pteval)),
275 (int)sizeof(pteval_t) * 2, (unsigned long long)__entry->pteval)
/linux/arch/arm/mm/
H A Dmm.h39 pteval_t prot_pte;
40 pteval_t prot_pte_s2;
/linux/arch/x86/include/asm/xen/
H A Dpage.h35 #define XEN_PTE_MFN_MASK ((pteval_t)(((signed long)PAGE_MASK) & \
324 static inline pteval_t pte_val_ma(pte_t pte) in pte_val_ma()
329 static inline pte_t __pte_ma(pteval_t x) in __pte_ma()
/linux/arch/x86/boot/compressed/
H A Dident_map_64.c35 pteval_t __default_kernel_pte_mask __read_mostly = ~0;
257 pteval_t set, pteval_t clr) in set_clr_page_flags()
/linux/arch/x86/xen/
H A Dmmu_pv.c91 pteval_t xen_pte_val(pte_t pte);
96 pte_t xen_make_pte(pteval_t pte);
101 pte_t xen_make_pte_init(pteval_t pte);
379 static pteval_t pte_mfn_to_pfn(pteval_t val) in pte_mfn_to_pfn()
385 pteval_t flags = val & PTE_FLAGS_MASK; in pte_mfn_to_pfn()
389 val = ((pteval_t)pfn << PAGE_SHIFT) | flags; in pte_mfn_to_pfn()
395 static pteval_t pte_pfn_to_mfn(pteval_t val) in pte_pfn_to_mfn()
399 pteval_t flags = val & PTE_FLAGS_MASK; in pte_pfn_to_mfn()
415 val = ((pteval_t)mfn << PAGE_SHIFT) | flags; in pte_pfn_to_mfn()
421 __visible pteval_t xen_pte_val(pte_t pte) in xen_pte_val()
[all …]
/linux/arch/x86/mm/
H A Dkmmio.c38 pteval_t old_presence; /* page presence prior to arming */
147 static void clear_pte_presence(pte_t *pte, bool clear, pteval_t *old) in clear_pte_presence()
149 pteval_t v = pte_val(*pte); in clear_pte_presence()

12