Is there any reason to worry about supporting PUD-sized uprobe pages if CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD is defined? I would prefer not to bake in the assumption that "huge" means PMD-sized and more than it already is. For example, if CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD is configured, mm_address_trans_huge() should either make the call to pud_trans_huge() if appropriate, or a VM_BUG_ON_PAGE should be added in case the routine is ever called with one. Otherwise it looks pretty reasonable to me. -- Bill