On 01/10/2013 07:30 AM, James Hogan wrote: > +pte_t *huge_pte_alloc(struct mm_struct *mm, > + unsigned long addr, unsigned long sz) > +{ > + pgd_t *pgd; > + pud_t *pud; > + pmd_t *pmd; > + pte_t *pte; > + > + pgd = pgd_offset(mm, addr); > + pud = pud_offset(pgd, addr); > + pmd = pmd_offset(pud, addr); > + pte = pte_alloc_map(mm, NULL, pmd, addr); > + pgd->pgd &= ~_PAGE_SZ_MASK; > + pgd->pgd |= _PAGE_SZHUGE; > + > + return pte; > +} I'd be a bit surprised if you don't have to check for NULL during the walk down the page tables. Is there a special reason on your architecture that this is unnecessary? (There are several of these, not just this one). -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html