Re: [GIT PULL] Please pull HMM changes

From: Jason Gunthorpe
Date: Mon Mar 30 2020 - 16:08:34 EST


On Mon, Mar 30, 2020 at 12:54:03PM -0700, Nathan Chancellor wrote:

> > Jason Gunthorpe (17):
> > mm/hmm: add missing unmaps of the ptep during hmm_vma_handle_pte()
> > mm/hmm: do not call hmm_vma_walk_hole() while holding a spinlock
> > mm/hmm: add missing pfns set to hmm_vma_walk_pmd()
> > mm/hmm: add missing call to hmm_range_need_fault() before returning EFAULT
> > mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte()
> > mm/hmm: return -EFAULT when setting HMM_PFN_ERROR on requested valid pages
> > mm/hmm: add missing call to hmm_pte_need_fault in HMM_PFN_SPECIAL handling
> > mm/hmm: do not check pmd_protnone twice in hmm_vma_handle_pmd()
> > mm/hmm: remove pgmap checking for devmap pages
> > mm/hmm: return the fault type from hmm_pte_need_fault()
> > mm/hmm: remove unused code and tidy comments
> > mm/hmm: remove HMM_FAULT_SNAPSHOT
> > mm/hmm: remove the CONFIG_TRANSPARENT_HUGEPAGE #ifdef
>
> This patch causes an error on arm32 all{mod,yes}config because pmd_pfn
> is only defined when CONFIG_ARM_LPAE is set, which is a dependency of
> CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE and CONFIG_TRANSPARENT_HUGEPAGE.

Oh! I'm again surprised 0-day did not catch on to this. linux-next
surely would have, but things got there later than I would have
preferred due to the world being upside down right now :(

> https://elixir.bootlin.com/linux/v5.6/source/arch/arm/include/asm/pgtable-3level.h#L236
> https://elixir.bootlin.com/linux/v5.6/source/arch/arm/include/asm/pgtable.h#L29
> https://elixir.bootlin.com/linux/v5.6/source/arch/arm/Kconfig#L1579
>
> No idea how to rectify that but thought I would let you know.

I'll just drop the patch. Next cycle we can add some comment here as
this requirement is a hard to notice.

The for-linus-hmm tag is updated now to reflect this.

Thanks a lot,
Jason