Lines Matching defs:pmd
51 * hmm_vma_fault() - fault in a range lacking valid pmd or pte(s)
175 pmd_t pmd)
177 if (pmd_protnone(pmd))
179 return (pmd_write(pmd) ? (HMM_PFN_VALID | HMM_PFN_WRITE) :
187 pmd_t pmd)
196 cpu_flags = pmd_to_hmm_pfn_flags(range, pmd);
202 pfn = pmd_pfn(pmd) + ((addr & ~PMD_MASK) >> PAGE_SHIFT);
210 unsigned long end, unsigned long hmm_pfns[], pmd_t pmd);
331 pmd_t pmd;
334 pmd = READ_ONCE(*pmdp);
335 if (pmd_none(pmd))
338 if (thp_migration_supported() && is_pmd_migration_entry(pmd)) {
347 if (!pmd_present(pmd)) {
353 if (pmd_devmap(pmd) || pmd_trans_huge(pmd)) {
356 * is splitting the huge pmd we will get that event through
359 * So just read pmd value and check again it's a transparent
363 pmd = pmd_read_atomic(pmdp);
365 if (!pmd_devmap(pmd) && !pmd_trans_huge(pmd))
368 return hmm_vma_handle_pmd(walk, addr, end, hmm_pfns, pmd);
373 * huge or transparent huge. At this point either it is a valid pmd
374 * entry pointing to pte directory or it is a bad pmd that will not
377 if (pmd_bad(pmd)) {