Lines Matching defs:pmd
281 pmd_t *pmd;
290 pmd = pmd_alloc(mm, pud, addr);
291 if (!pmd)
294 return (pte_t *)pmd;
295 return pte_alloc_map(mm, pmd, addr);
304 pmd_t *pmd;
317 pmd = pmd_offset(pud, addr);
318 if (pmd_none(*pmd))
320 if (is_hugetlb_pmd(*pmd))
321 return (pte_t *)pmd;
322 return pte_offset_map(pmd, addr);
398 int pmd_huge(pmd_t pmd)
400 return !pmd_none(pmd) &&
401 (pmd_val(pmd) & (_PAGE_VALID|_PAGE_PMD_HUGE)) != _PAGE_VALID;
410 static void hugetlb_free_pte_range(struct mmu_gather *tlb, pmd_t *pmd,
413 pgtable_t token = pmd_pgtable(*pmd);
415 pmd_clear(pmd);
424 pmd_t *pmd;
429 pmd = pmd_offset(pud, addr);
432 if (pmd_none(*pmd))
434 if (is_hugetlb_pmd(*pmd))
435 pmd_clear(pmd);
437 hugetlb_free_pte_range(tlb, pmd, addr);
438 } while (pmd++, addr = next, addr != end);
451 pmd = pmd_offset(pud, start);
453 pmd_free_tlb(tlb, pmd, start);