Re: linux-next: build failure after merge of the akpm-current tree

Stephen Rothwell
2014-06-16T02:02:02Z

[-- Attachment #1: Type: text/plain, Size: 3201 bytes --]

Hi Naoya,

On Fri, 13 Jun 2014 11:12:06 -0400 Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> wrote:
>
> On Fri, Jun 13, 2014 at 03:05:50PM +1000, Stephen Rothwell wrote:
> >
> > After merging the akpm-current tree, today's linux-next build (powerpc ppc64_defconfig)
> > failed like this:
> >
> > fs/proc/task_mmu.c: In function 'smaps_pmd':
> > include/linux/compiler.h:363:38: error: call to '__compiletime_assert_505' declared with attribute error: BUILD_BUG failed
> > _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
> > ^
> > include/linux/compiler.h:346:4: note: in definition of macro '__compiletime_assert'
> > prefix ## suffix(); \
> > ^
> > include/linux/compiler.h:363:2: note: in expansion of macro '_compiletime_assert'
> > _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
> > ^
> > include/linux/bug.h:50:37: note: in expansion of macro 'compiletime_assert'
> > #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
> > ^
> > include/linux/bug.h:84:21: note: in expansion of macro 'BUILD_BUG_ON_MSG'
> > #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed")
> > ^
> > include/linux/huge_mm.h:167:27: note: in expansion of macro 'BUILD_BUG'
> > #define HPAGE_PMD_SIZE ({ BUILD_BUG(); 0; })
> > ^
> > fs/proc/task_mmu.c:505:39: note: in expansion of macro 'HPAGE_PMD_SIZE'
> > smaps_pte((pte_t *)pmd, addr, addr + HPAGE_PMD_SIZE, walk);
> > ^
> >
> > Caused by commit b0e08c526179 ("mm/pagewalk: move pmd_trans_huge_lock()
> > from callbacks to common code").
> >
> > The reference to HPAGE_PMD_SIZE (which contains a BUILD_BUG() when
> > CONFIG_TRANSPARENT_HUGEPAGE is not defined) used to be protected by a
> > call to pmd_trans_huge_lock() (a static inline function that was
> > contact 0 when CONFIG_TRANSPARENT_HUGEPAGE is not defined) so gcc did
> > not see the reference and the BUG_ON. That protection has been
> > removed ...
> >
> > I have reverted that commit and commit 2dc554765dd1
> > ("mm-pagewalk-move-pmd_trans_huge_lock-from-callbacks-to-common-code-checkpatch-fixes")
> > that depend on it for today.
>
> Sorry about that, this build failure happens because I moved the
> pmd_trans_huge_lock() into the common pagewalk code,
> clearly this makes mm_walk->pmd_entry handle only transparent hugepage,
> so the additional patch below explicitly declare it with #ifdef
> CONFIG_TRANSPARENT_HUGEPAGE.
>
> I'll merge this in the next version of my series, but this will help
> linux-next for a quick solution.
>
> Thanks,
> Naoya Horiguchi
> ---
> From da0850cd03baa3d50c8e353976b5b9edbfbd4413 Mon Sep 17 00:00:00 2001
> Date: Fri, 13 Jun 2014 10:33:26 -0400
> Subject: [PATCH] fix build error of v3.15-mmotm-2014-06-12-16-38
>
> Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>

I added that to the akpm-current tree in linux-next today and the build
failures went away.

--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]