/xen-4.10.0-shim-comet/xen/arch/x86/pv/ |
A D | mm.h | 11 l1_pgentry_t l1e; in guest_get_eff_l1e() local 17 __copy_from_user(&l1e, in guest_get_eff_l1e() 20 l1e = l1e_empty(); in guest_get_eff_l1e() 22 return l1e; in guest_get_eff_l1e() 92 static inline l1_pgentry_t adjust_guest_l1e(l1_pgentry_t l1e, in adjust_guest_l1e() argument 95 if ( likely(l1e_get_flags(l1e) & _PAGE_PRESENT) && in adjust_guest_l1e() 102 l1e_get_pfn(l1e)); in adjust_guest_l1e() 104 if ( !(l1e_get_flags(l1e) & _PAGE_USER) ) in adjust_guest_l1e() 107 if ( !(l1e_get_flags(l1e) & _PAGE_GUEST_KERNEL) ) in adjust_guest_l1e() 108 l1e_add_flags(l1e, (_PAGE_GLOBAL | _PAGE_USER)); in adjust_guest_l1e() [all …]
|
A D | mm.c | 72 l1_pgentry_t l1e; in guest_get_eff_kern_l1e() local 77 l1e = guest_get_eff_l1e(linear); in guest_get_eff_kern_l1e() 82 return l1e; in guest_get_eff_kern_l1e()
|
/xen-4.10.0-shim-comet/xen/arch/x86/mm/ |
A D | guest_walk.c | 209 gw->l1e = guest_l1e_from_gfn(start, flags); in guest_walk_tables() 318 gw->l1e = guest_l1e_from_gfn(start, flags); in guest_walk_tables() 337 gw->l1e = l1p[guest_l1_table_offset(va)]; in guest_walk_tables() 338 gflags = guest_l1e_get_flags(gw->l1e); in guest_walk_tables() 343 if ( guest_l1e_rsvd_bits(v, gw->l1e) ) in guest_walk_tables() 383 unsigned int pkey = guest_l1e_get_pkey(gw->l1e); in guest_walk_tables() 446 if ( set_ad_bits(&l1p[guest_l1_table_offset(va)].l1, &gw->l1e.l1, in guest_walk_tables()
|
A D | p2m-pt.c | 743 l1_pgentry_t *l1e; in p2m_pt_get_entry() local 872 l1e = map_domain_page(mfn); in p2m_pt_get_entry() 873 l1e += l1_table_offset(addr); in p2m_pt_get_entry() 878 flags = l1e_get_flags(*l1e); in p2m_pt_get_entry() 892 unmap_domain_page(l1e); in p2m_pt_get_entry() 895 mfn = l1e_get_mfn(*l1e); in p2m_pt_get_entry() 897 unmap_domain_page(l1e); in p2m_pt_get_entry() 989 l1_pgentry_t *l1e; in p2m_pt_audit_p2m() local 1076 l1e = map_l1t_from_l2e(l2e[i2]); in p2m_pt_audit_p2m() 1089 mfn = l1e_get_pfn(l1e[i1]); in p2m_pt_audit_p2m() [all …]
|
/xen-4.10.0-shim-comet/xen/include/asm-x86/ |
A D | guest_pt.h | 295 static inline bool guest_l1e_rsvd_bits(const struct vcpu *v, guest_l1e_t l1e) in guest_l1e_rsvd_bits() argument 297 return l1e.l1 & (guest_rsvd_bits(v) | GUEST_L1_PAGETABLE_RSVD); in guest_l1e_rsvd_bits() 350 guest_l1e_t l1e; /* Guest's level 1 entry (or fabrication). */ member 367 if ( !(guest_l1e_get_flags(gw->l1e) & _PAGE_PRESENT) ) in guest_walk_to_gfn() 371 : guest_l1e_get_gfn(gw->l1e)); in guest_walk_to_gfn() 392 ASSERT(guest_l1e_get_flags(gw->l1e) & _PAGE_PRESENT); in guest_walk_to_page_order() 451 gw->l1e.l1, mfn_x(gw->l1mfn)); in print_gw()
|
A D | page.h | 36 #define l1e_write_atomic(l1ep, l1e) \ argument 37 pte_write_atomic(&l1e_get_intpte(*(l1ep)), l1e_get_intpte(l1e)) 49 #define l1e_write(l1ep, l1e) \ argument 50 pte_write(&l1e_get_intpte(*(l1ep)), l1e_get_intpte(l1e))
|
A D | mm.h | 382 l1_pgentry_t l1e, struct domain *l1e_owner, struct domain *pg_owner); 383 void put_page_from_l1e(l1_pgentry_t l1e, struct domain *l1e_owner);
|
/xen-4.10.0-shim-comet/xen/arch/x86/ |
A D | debug.c | 99 l1_pgentry_t l1e, *l1t; in dbg_pv_va2mfn() local 147 l1e = l1t[l1_table_offset(vaddr)]; in dbg_pv_va2mfn() 149 mfn = l1e_get_mfn(l1e); in dbg_pv_va2mfn() 151 l1e, mfn_x(mfn)); in dbg_pv_va2mfn()
|
A D | traps.c | 1181 l1_pgentry_t l1e, *l1t; in __page_fault_type() local 1243 l1e = l1e_read_atomic(&l1t[l1_table_offset(addr)]); in __page_fault_type() 1244 mfn = l1e_get_pfn(l1e); in __page_fault_type() 1246 if ( ((l1e_get_flags(l1e) & required_flags) != required_flags) || in __page_fault_type() 1247 (l1e_get_flags(l1e) & disallowed_flags) ) in __page_fault_type() 1249 page_user &= l1e_get_flags(l1e); in __page_fault_type()
|
A D | mm.c | 886 l1_pgentry_t l1e, struct domain *l1e_owner, struct domain *pg_owner) in get_page_from_l1e() argument 888 unsigned long mfn = l1e_get_pfn(l1e); in get_page_from_l1e() 890 uint32_t l1f = l1e_get_flags(l1e); in get_page_from_l1e() 1077 l1e_get_intpte(l1e), l1e_owner->domain_id); in get_page_from_l1e() 1088 l1e_get_intpte(l1e), l1e_owner->domain_id, pg_owner->domain_id); in get_page_from_l1e() 1199 void put_page_from_l1e(l1_pgentry_t l1e, struct domain *l1e_owner) in put_page_from_l1e() argument 1201 unsigned long pfn = l1e_get_pfn(l1e); in put_page_from_l1e() 1206 if ( !(l1e_get_flags(l1e) & _PAGE_PRESENT) || is_iomem_page(_mfn(pfn)) ) in put_page_from_l1e() 1225 if ( (l1e_get_flags(l1e) & _PAGE_GNTTAB) && in put_page_from_l1e() 1230 l1e_get_intpte(l1e)); in put_page_from_l1e() [all …]
|
/xen-4.10.0-shim-comet/xen/arch/x86/x86_64/ |
A D | traps.c | 190 l1_pgentry_t l1e, *l1t; in show_page_walk() local 237 l1e = l1t[l1_table_offset(addr)]; in show_page_walk() 239 mfn = l1e_get_pfn(l1e); in show_page_walk() 243 l1_table_offset(addr), l1e_get_intpte(l1e), pfn); in show_page_walk()
|
A D | mm.c | 53 l1_pgentry_t l1e, *l1t; in do_page_walk() local 89 l1e = l1t[l1_table_offset(addr)]; in do_page_walk() 91 mfn = l1e_get_pfn(l1e); in do_page_walk() 92 if ( !(l1e_get_flags(l1e) & _PAGE_PRESENT) || !mfn_valid(_mfn(mfn)) ) in do_page_walk()
|
/xen-4.10.0-shim-comet/xen/arch/x86/mm/shadow/ |
A D | multi.c | 246 mismatch |= (gw->l1e.l1 != l1p[guest_l1_table_offset(va)].l1); in shadow_check_gwalk() 267 return gw->l1e.l1 != nl1e.l1; in shadow_check_gl1e() 2658 _gfn(gfn_x(guest_l1e_get_gfn(gw->l1e)) + i), in sh_prefetch() 2659 guest_l1e_get_flags(gw->l1e)); in sh_prefetch() 3217 l1e_propagate_from_guest(v, gw.l1e, gmfn, &sl1e, ft, p2mt); in sh_page_fault() 3231 snp[guest_l1_table_offset(va)] = gw.l1e; in sh_page_fault() 3291 trace_shadow_fixup(gw.l1e, va); in sh_page_fault() 3532 trace_shadow_emulate(gw.l1e, va); in sh_page_fault() 3560 trace_not_shadow_fault(gw.l1e, va); in sh_page_fault()
|