/Linux-v6.1/arch/x86/kvm/mmu/ |
D | tdp_iter.h | 17 static inline u64 kvm_tdp_mmu_read_spte(tdp_ptep_t sptep) in kvm_tdp_mmu_read_spte() argument 19 return READ_ONCE(*rcu_dereference(sptep)); in kvm_tdp_mmu_read_spte() 22 static inline u64 kvm_tdp_mmu_write_spte_atomic(tdp_ptep_t sptep, u64 new_spte) in kvm_tdp_mmu_write_spte_atomic() argument 24 return xchg(rcu_dereference(sptep), new_spte); in kvm_tdp_mmu_write_spte_atomic() 27 static inline void __kvm_tdp_mmu_write_spte(tdp_ptep_t sptep, u64 new_spte) in __kvm_tdp_mmu_write_spte() argument 29 WRITE_ONCE(*rcu_dereference(sptep), new_spte); in __kvm_tdp_mmu_write_spte() 32 static inline u64 kvm_tdp_mmu_write_spte(tdp_ptep_t sptep, u64 old_spte, in kvm_tdp_mmu_write_spte() argument 49 return kvm_tdp_mmu_write_spte_atomic(sptep, new_spte); in kvm_tdp_mmu_write_spte() 51 __kvm_tdp_mmu_write_spte(sptep, new_spte); in kvm_tdp_mmu_write_spte() 73 tdp_ptep_t sptep; member
|
D | mmutrace.h | 212 TP_PROTO(u64 *sptep, gfn_t gfn, u64 spte), 213 TP_ARGS(sptep, gfn, spte), 216 __field(void *, sptep) 223 __entry->sptep = sptep; 229 TP_printk("sptep:%p gfn %llx access %x gen %x", __entry->sptep, 257 u64 *sptep, u64 old_spte, int ret), 258 TP_ARGS(vcpu, fault, sptep, old_spte, ret), 264 __field(u64 *, sptep) 274 __entry->sptep = sptep; 276 __entry->new_spte = *sptep; [all …]
|
D | mmu.c | 135 u64 *sptep; member 154 ({ spte = mmu_spte_get_lockless(_walker.sptep); 1; }); \ 161 static void mmu_spte_set(u64 *sptep, u64 spte); 263 static void mark_mmio_spte(struct kvm_vcpu *vcpu, u64 *sptep, u64 gfn, in mark_mmio_spte() argument 268 trace_mark_mmio_spte(sptep, gfn, spte); in mark_mmio_spte() 269 mmu_spte_set(sptep, spte); in mark_mmio_spte() 308 static void __set_spte(u64 *sptep, u64 spte) in __set_spte() argument 310 WRITE_ONCE(*sptep, spte); in __set_spte() 313 static void __update_clear_spte_fast(u64 *sptep, u64 spte) in __update_clear_spte_fast() argument 315 WRITE_ONCE(*sptep, spte); in __update_clear_spte_fast() [all …]
|
D | paging_tmpl.h | 576 u64 *sptep) in FNAME() 583 sp = sptep_to_sp(sptep); in FNAME() 596 return __direct_pte_prefetch(vcpu, sp, sptep); in FNAME() 598 i = spte_index(sptep) & ~(PTE_PREFETCH_NUM - 1); in FNAME() 602 if (spte == sptep) in FNAME() 650 clear_sp_write_flooding_count(it.sptep); in FNAME() 654 sp = kvm_mmu_get_child_sp(vcpu, it.sptep, table_gfn, in FNAME() 687 link_shadow_page(vcpu, it.sptep, sp); in FNAME() 695 clear_sp_write_flooding_count(it.sptep); in FNAME() 702 disallowed_hugepage_adjust(fault, *it.sptep, it.level); in FNAME() [all …]
|
D | tdp_iter.c | 13 iter->sptep = iter->pt_path[iter->level - 1] + in tdp_iter_refresh_sptep() 15 iter->old_spte = kvm_tdp_mmu_read_spte(iter->sptep); in tdp_iter_refresh_sptep() 92 iter->old_spte = kvm_tdp_mmu_read_spte(iter->sptep); in try_step_down() 125 iter->sptep++; in try_step_side() 126 iter->old_spte = kvm_tdp_mmu_read_spte(iter->sptep); in try_step_side()
|
D | tdp_mmu.c | 284 static void tdp_mmu_init_sp(struct kvm_mmu_page *sp, tdp_ptep_t sptep, in tdp_mmu_init_sp() argument 291 sp->ptep = sptep; in tdp_mmu_init_sp() 303 parent_sp = sptep_to_sp(rcu_dereference(iter->sptep)); in tdp_mmu_init_child_sp() 308 tdp_mmu_init_sp(child_sp, iter->sptep, iter->gfn, role); in tdp_mmu_init_child_sp() 440 tdp_ptep_t sptep = pt + i; in handle_removed_pt() local 454 old_spte = kvm_tdp_mmu_write_spte_atomic(sptep, REMOVED_SPTE); in handle_removed_pt() 469 old_spte = kvm_tdp_mmu_read_spte(sptep); in handle_removed_pt() 501 old_spte = kvm_tdp_mmu_write_spte(sptep, old_spte, in handle_removed_pt() 646 u64 *sptep = rcu_dereference(iter->sptep); in tdp_mmu_set_spte_atomic() local 662 if (!try_cmpxchg64(sptep, &iter->old_spte, new_spte)) in tdp_mmu_set_spte_atomic() [all …]
|
D | spte.h | 207 static inline int spte_index(u64 *sptep) in spte_index() argument 209 return ((unsigned long)sptep / sizeof(*sptep)) & (SPTE_ENT_PER_PAGE - 1); in spte_index()
|
D | mmu_internal.h | 130 static inline struct kvm_mmu_page *sptep_to_sp(u64 *sptep) in sptep_to_sp() argument 132 return to_shadow_page(__pa(sptep)); in sptep_to_sp()
|
/Linux-v6.1/arch/s390/mm/ |
D | pgtable.c | 663 pte_t *sptep, pte_t *tptep, pte_t pte) in ptep_shadow_pte() argument 671 spgste = pgste_get_lock(sptep); in ptep_shadow_pte() 672 spte = *sptep; in ptep_shadow_pte() 685 pgste_set_unlock(sptep, spgste); in ptep_shadow_pte()
|
D | gmap.c | 2124 pte_t *sptep, *tptep; in gmap_shadow_page() local 2148 sptep = gmap_pte_op_walk(parent, paddr, &ptl); in gmap_shadow_page() 2149 if (sptep) { in gmap_shadow_page() 2159 rc = ptep_shadow_pte(sg->mm, saddr, sptep, tptep, pte); in gmap_shadow_page()
|
/Linux-v6.1/arch/s390/include/asm/ |
D | pgtable.h | 1223 pte_t *sptep, pte_t *tptep, pte_t pte);
|