Lines Matching refs:new_spte
461 static bool spte_is_bit_cleared(u64 old_spte, u64 new_spte, u64 bit_mask) in spte_is_bit_cleared() argument
463 return (old_spte & bit_mask) && !(new_spte & bit_mask); in spte_is_bit_cleared()
472 static void mmu_spte_set(u64 *sptep, u64 new_spte) in mmu_spte_set() argument
475 __set_spte(sptep, new_spte); in mmu_spte_set()
481 static void mmu_spte_update(u64 *sptep, u64 new_spte) in mmu_spte_update() argument
485 WARN_ON(!is_rmap_spte(new_spte)); in mmu_spte_update()
488 return mmu_spte_set(sptep, new_spte); in mmu_spte_update()
490 new_spte |= old_spte & shadow_dirty_mask; in mmu_spte_update()
496 if (!spte_has_volatile_bits(old_spte) || (new_spte & mask) == mask) in mmu_spte_update()
497 __update_clear_spte_fast(sptep, new_spte); in mmu_spte_update()
499 old_spte = __update_clear_spte_slow(sptep, new_spte); in mmu_spte_update()
504 if (spte_is_bit_cleared(old_spte, new_spte, shadow_accessed_mask)) in mmu_spte_update()
506 if (spte_is_bit_cleared(old_spte, new_spte, shadow_dirty_mask)) in mmu_spte_update()
1081 u64 *spte, new_spte; in kvm_set_pte_rmapp() local
1096 new_spte = *spte &~ (PT64_BASE_ADDR_MASK); in kvm_set_pte_rmapp()
1097 new_spte |= (u64)new_pfn << PAGE_SHIFT; in kvm_set_pte_rmapp()
1099 new_spte &= ~PT_WRITABLE_MASK; in kvm_set_pte_rmapp()
1100 new_spte &= ~SPTE_HOST_WRITEABLE; in kvm_set_pte_rmapp()
1101 new_spte &= ~shadow_accessed_mask; in kvm_set_pte_rmapp()
1103 mmu_spte_set(spte, new_spte); in kvm_set_pte_rmapp()