Lines Matching refs:spte
89 u64 spte = 0; in make_spte() local
93 spte |= SPTE_AD_DISABLED_MASK; in make_spte()
95 spte |= SPTE_AD_WRPROT_ONLY_MASK; in make_spte()
103 spte |= shadow_present_mask; in make_spte()
105 spte |= spte_shadow_accessed_mask(spte); in make_spte()
113 spte |= shadow_x_mask; in make_spte()
115 spte |= shadow_nx_mask; in make_spte()
118 spte |= shadow_user_mask; in make_spte()
121 spte |= PT_PAGE_SIZE_MASK; in make_spte()
123 spte |= kvm_x86_ops.get_mt_mask(vcpu, gfn, in make_spte()
127 spte |= SPTE_HOST_WRITEABLE; in make_spte()
132 spte |= shadow_me_mask; in make_spte()
134 spte |= (u64)pfn << PAGE_SHIFT; in make_spte()
137 spte |= PT_WRITABLE_MASK | SPTE_MMU_WRITEABLE; in make_spte()
153 spte &= ~(PT_WRITABLE_MASK | SPTE_MMU_WRITEABLE); in make_spte()
158 spte |= spte_shadow_dirty_mask(spte); in make_spte()
161 spte = mark_spte_for_access_track(spte); in make_spte()
164 *new_spte = spte; in make_spte()
170 u64 spte; in make_nonleaf_spte() local
172 spte = __pa(child_pt) | shadow_present_mask | PT_WRITABLE_MASK | in make_nonleaf_spte()
176 spte |= SPTE_AD_DISABLED_MASK; in make_nonleaf_spte()
178 spte |= shadow_accessed_mask; in make_nonleaf_spte()
180 return spte; in make_nonleaf_spte()
217 u64 mark_spte_for_access_track(u64 spte) in mark_spte_for_access_track() argument
219 if (spte_ad_enabled(spte)) in mark_spte_for_access_track()
220 return spte & ~shadow_accessed_mask; in mark_spte_for_access_track()
222 if (is_access_track_spte(spte)) in mark_spte_for_access_track()
223 return spte; in mark_spte_for_access_track()
230 WARN_ONCE((spte & PT_WRITABLE_MASK) && in mark_spte_for_access_track()
231 !spte_can_locklessly_be_made_writable(spte), in mark_spte_for_access_track()
234 WARN_ONCE(spte & (SHADOW_ACC_TRACK_SAVED_BITS_MASK << in mark_spte_for_access_track()
238 spte |= (spte & SHADOW_ACC_TRACK_SAVED_BITS_MASK) << in mark_spte_for_access_track()
240 spte &= ~shadow_acc_track_mask; in mark_spte_for_access_track()
242 return spte; in mark_spte_for_access_track()