Re: [PATCHv4 2/3] arm64: Add support for ARCH_SUPPORTS_DEBUG_PAGEALLOC

From: Catalin Marinas
Date: Wed Feb 10 2016 - 06:02:20 EST


On Wed, Feb 10, 2016 at 10:38:14AM +0000, Catalin Marinas wrote:
> On Fri, Feb 05, 2016 at 04:24:47PM -0800, Laura Abbott wrote:
> > --- a/arch/arm64/mm/mmu.c
> > +++ b/arch/arm64/mm/mmu.c
> > @@ -149,6 +149,19 @@ static void split_pud(pud_t *old_pud, pmd_t *pmd)
> > } while (pmd++, i++, i < PTRS_PER_PMD);
> > }
> >
> > +bool block_mappings_allowed(phys_addr_t (*pgtable_alloc)(void))
> > +{
> > +
> > + /*
> > + * If debug_page_alloc is enabled we must map the linear map
> > + * using pages. However, other mappings created by
> > + * create_mapping_noalloc must use sections in some cases. Allow
> > + * sections to be used in those cases, where no pgtable_alloc
> > + * function is provided.
> > + */
> > + return !pgtable_alloc || !debug_pagealloc_enabled();
> > +}
>
> This breaks the build when CONFIG_DEBUG_PAGEALLOC is not enabled
> (defconfig) since debug_pagealloc_enabled() is not defined. A fix went
> in next/master as commit 0987684b855c
> ("mm-slab-clean-up-debug_pagealloc-processing-code-fix"). I need to
> track it down and merge it via the arm64 tree, otherwise I'll add some
> #ifdefs in this function.

It seems that there are other patches in the mm tree requiring this
change. I'll fix it locally (#ifdefs) and revert the change after -rc1.

--
Catalin