Lines Matching defs:pmd

46 static inline pmd_t kvm_pmd_mkhuge(pmd_t pmd)
49 return pmd_mkhuge(pmd);
53 pte_val(entry) = pmd_val(pmd);
55 pmd_val(pmd) = pte_val(entry);
57 return pmd;
60 static inline pmd_t kvm_pmd_mkclean(pmd_t pmd)
63 return pmd_mkclean(pmd);
67 pte_val(entry) = pmd_val(pmd);
69 pmd_val(pmd) = pte_val(entry);
71 return pmd;
74 static inline pmd_t kvm_pmd_mkold(pmd_t pmd)
77 return pmd_mkold(pmd);
81 pte_val(entry) = pmd_val(pmd);
83 pmd_val(pmd) = pte_val(entry);
85 return pmd;
136 pmd_t *pmd;
156 pmd = pmd_offset(pud, addr);
158 if (pmd_huge(*pmd)) {
159 return (pte_t *)pmd;
162 if (pmd_none(*pmd)) {
169 pmd_populate_kernel(NULL, pmd, new_pte);
171 return pte_offset_kernel(pmd, addr);
183 * kvm_flush_gpa_{pte,pmd,pud,pgd,pt}.
206 static bool kvm_flush_gpa_pmd(pmd_t *pmd, unsigned long start_gpa,
217 if (!pmd_present(pmd[i]))
220 if (pmd_huge(pmd[i]) && pmd_present(pmd[i])) {
221 pmd_clear(pmd + i);
227 pte = pte_offset_kernel(pmd + i, 0);
232 pmd_clear(pmd + i);
244 pmd_t *pmd;
255 pmd = pmd_offset(pud + i, 0);
259 if (kvm_flush_gpa_pmd(pmd, start_gpa, end, data)) {
261 pmd_free(NULL, pmd);
343 static int kvm_mkclean_pmd(pmd_t *pmd, unsigned long start, unsigned long end)
354 if (!pmd_present(pmd[i]))
357 if (pmd_huge(pmd[i])) {
358 old = pmd[i];
362 set_pmd(pmd + i, new);
367 pte = pte_offset_kernel(pmd + i, 0);
380 pmd_t *pmd;
390 pmd = pmd_offset(pud + i, 0);
394 ret |= kvm_mkclean_pmd(pmd, start, cur_end);
568 static int kvm_mkold_pmd(pmd_t *pmd, unsigned long start, unsigned long end)
579 if (!pmd_present(pmd[i]))
582 if (pmd_huge(pmd[i])) {
583 old = pmd[i];
587 set_pmd(pmd + i, new);
592 pte = pte_offset_kernel(pmd + i, 0);
605 pmd_t *pmd;
615 pmd = pmd_offset(pud + i, 0);
619 ret |= kvm_mkold_pmd(pmd, start, cur_end);
799 pmd_t *pmd;
808 pmd = kvm_mmu_memory_cache_alloc(cache);
809 pmd_init((unsigned long)pmd,
811 pud_populate(NULL, pud, pmd);
820 pmd_t *pmd, old_pmd;
823 pmd = kvm_get_pmd(vcpu->kvm, cache, addr);
824 VM_BUG_ON(!pmd);
826 old_pmd = *pmd;
876 pmd_clear(pmd);
880 set_pmd(pmd, *new_pmd);