Home
last modified time | relevance | path

Searched refs:spte (Results 1 – 8 of 8) sorted by relevance

/linux-2.6.39/arch/x86/kvm/
Dmmu.c185 typedef void (*mmu_parent_walk_fn) (struct kvm_mmu_page *sp, u64 *spte);
285 static void __set_spte(u64 *sptep, u64 spte) in __set_spte() argument
287 set_64bit(sptep, spte); in __set_spte()
305 static bool spte_has_volatile_bits(u64 spte) in spte_has_volatile_bits() argument
310 if (!is_shadow_present_pte(spte)) in spte_has_volatile_bits()
313 if ((spte & shadow_accessed_mask) && in spte_has_volatile_bits()
314 (!is_writable_pte(spte) || (spte & shadow_dirty_mask))) in spte_has_volatile_bits()
621 static int rmap_add(struct kvm_vcpu *vcpu, u64 *spte, gfn_t gfn) in rmap_add() argument
628 if (!is_rmap_spte(*spte)) in rmap_add()
630 sp = page_header(__pa(spte)); in rmap_add()
[all …]
Dmmu_audit.c198 u64 *spte; in audit_write_protection() local
206 spte = rmap_next(kvm, rmapp, NULL); in audit_write_protection()
207 while (spte) { in audit_write_protection()
208 if (is_writable_pte(*spte)) in audit_write_protection()
212 spte = rmap_next(kvm, rmapp, spte); in audit_write_protection()
Dpaging_tmpl.h303 struct kvm_mmu_page *sp, u64 *spte, in FNAME()
323 drop_spte(vcpu->kvm, spte, nonpresent); in FNAME()
328 u64 *spte, const void *pte, unsigned long mmu_seq) in FNAME()
335 if (FNAME(prefetch_invalid_gpte)(vcpu, sp, spte, gpte)) in FNAME()
338 pgprintk("%s: gpte %llx spte %p\n", __func__, (u64)gpte, spte); in FNAME()
352 mmu_set_spte(vcpu, spte, sp->role.access, pte_access, 0, 0, in FNAME()
385 u64 *spte; in FNAME() local
397 spte = sp->spt + i; in FNAME()
399 for (i = 0; i < PTE_PREFETCH_NUM; i++, spte++) { in FNAME()
406 if (spte == sptep) in FNAME()
[all …]
Dvmx.c3588 static u64 ept_rsvd_mask(u64 spte, int level) in ept_rsvd_mask() argument
3600 if (spte & (1ULL << 7)) in ept_rsvd_mask()
3611 static void ept_misconfig_inspect_spte(struct kvm_vcpu *vcpu, u64 spte, in ept_misconfig_inspect_spte() argument
3614 printk(KERN_ERR "%s: spte 0x%llx level %d\n", __func__, spte, level); in ept_misconfig_inspect_spte()
3617 WARN_ON((spte & 0x7) == 0x2); in ept_misconfig_inspect_spte()
3620 WARN_ON((spte & 0x7) == 0x6); in ept_misconfig_inspect_spte()
3624 WARN_ON((spte & 0x7) == 0x4); in ept_misconfig_inspect_spte()
3627 if ((spte & 0x7)) { in ept_misconfig_inspect_spte()
3628 u64 rsvd_bits = spte & ept_rsvd_mask(spte, level); in ept_misconfig_inspect_spte()
3636 if (level == 1 || (level == 2 && (spte & (1ULL << 7)))) { in ept_misconfig_inspect_spte()
[all …]
/linux-2.6.39/arch/x86/mm/
Dhugetlbpage.c70 pte_t *spte = NULL; in huge_pmd_share() local
82 spte = huge_pte_offset(svma->vm_mm, saddr); in huge_pmd_share()
83 if (spte) { in huge_pmd_share()
84 get_page(virt_to_page(spte)); in huge_pmd_share()
90 if (!spte) in huge_pmd_share()
95 pud_populate(mm, pud, (pmd_t *)((unsigned long)spte & PAGE_MASK)); in huge_pmd_share()
97 put_page(virt_to_page(spte)); in huge_pmd_share()
/linux-2.6.39/Documentation/kvm/
Dmmu.txt42 spte shadow pte (referring to pfns)
109 A nonleaf spte allows the hardware mmu to reach the leaf pages and
112 A leaf spte corresponds to either one or two translations encoded into
200 If multimapped is zero, parent_pte points at the single spte that points at
270 - walk the shadow page table to find the spte for the translation,
307 we cannot map the permissions for gpte.u=1, gpte.w=0 to any spte (the
313 - kernel write fault: spte.u=0, spte.w=1 (allows full kernel access,
315 - read fault: spte.u=1, spte.w=0 (allows full read access, disallows kernel
328 To instantiate a large spte, four constraints must be satisfied:
330 - the spte must point to a large host page
[all …]
/linux-2.6.39/drivers/lguest/
Dpage_tables.c319 pte_t *spte; in demand_page() local
430 spte = spte_addr(cpu, *spgd, vaddr); in demand_page()
436 release_pte(*spte); in demand_page()
443 *spte = gpte_to_spte(cpu, gpte, 1); in demand_page()
451 set_pte(spte, gpte_to_spte(cpu, pte_wrprotect(gpte), 0)); in demand_page()
826 pte_t *spte = spte_addr(cpu, *spgd, vaddr); in do_set_pte() local
827 release_pte(*spte); in do_set_pte()
837 set_pte(spte, in do_set_pte()
845 set_pte(spte, __pte(0)); in do_set_pte()
/linux-2.6.39/arch/x86/include/asm/
Dkvm_host.h259 u64 *spte, const void *pte, unsigned long mmu_seq);