Home
last modified time | relevance | path

Searched refs:sptep (Results 1 – 11 of 11) sorted by relevance

/Linux-v6.1/arch/x86/kvm/mmu/
Dtdp_iter.h17 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
Dmmutrace.h212 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 …]
Dmmu.c135 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 …]
Dpaging_tmpl.h576 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 …]
Dtdp_iter.c13 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()
Dtdp_mmu.c284 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 …]
Dspte.h207 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()
Dmmu_internal.h130 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/
Dpgtable.c663 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()
Dgmap.c2124 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/
Dpgtable.h1223 pte_t *sptep, pte_t *tptep, pte_t pte);