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

From: Sergey Senozhatsky
Date: Wed Feb 03 2016 - 02:06:59 EST


Hello,

On (02/03/16 16:27), Stephen Rothwell wrote:
> Hi Andrew,
>
> After merging the akpm-current tree, today's linux-next build (arm
> allnoconfig) failed like this:
>
> In file included from kernel/memremap.c:17:0:
> include/linux/pfn_t.h:108:7: error: 'pud_mkdevmap' declared as function returning an array
>
> Caused by commit
>
> a27da20ed50e ("mm: add support for PUD-sized transparent hugepages")
>
> Discovered after the linux-next release.


.config

CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y
# CONFIG_TRANSPARENT_HUGEPAGE is not set


makes the build unhappy

fs/proc/task_mmu.c: In function âsmaps_pud_rangeâ:
fs/proc/task_mmu.c:596:6: error: implicit declaration of function âis_huge_zero_pudâ [-Werror=implicit-function-declaration]
if (is_huge_zero_pud(*pud))
^


seems there is no âis_huge_zero_pudâ for !CONFIG_TRANSPARENT_HUGEPAGE.


and a bunch of other errors as a result


In file included from include/asm-generic/bug.h:4:0,
from ./arch/x86/include/asm/bug.h:35,
from include/linux/bug.h:4,
from include/linux/mmdebug.h:4,
from include/linux/mm.h:8,
from fs/proc/task_mmu.c:1:
include/linux/compiler.h:505:38: error: call to â__compiletime_assert_599â declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
include/linux/compiler.h:488:4: note: in definition of macro â__compiletime_assertâ
prefix ## suffix(); \
^
include/linux/compiler.h:505: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:221:27: note: in expansion of macro âBUILD_BUGâ
#define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; })
^
fs/proc/task_mmu.c:599:19: note: in expansion of macro âHPAGE_PUD_SIZEâ
mss->resident += HPAGE_PUD_SIZE;
^
In function âsmaps_pud_range.part.10â,
inlined from âsmaps_pud_rangeâ:
include/linux/compiler.h:505:38: error: call to â__compiletime_assert_602â declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
include/linux/compiler.h:488:4: note: in definition of macro â__compiletime_assertâ
prefix ## suffix(); \
^
include/linux/compiler.h:505: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:221:27: note: in expansion of macro âBUILD_BUGâ
#define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; })
^
fs/proc/task_mmu.c:602:25: note: in expansion of macro âHPAGE_PUD_SIZEâ
mss->shared_dirty += HPAGE_PUD_SIZE;
^
include/linux/compiler.h:505:38: error: call to â__compiletime_assert_604â declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
include/linux/compiler.h:488:4: note: in definition of macro â__compiletime_assertâ
prefix ## suffix(); \
^
include/linux/compiler.h:505: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:221:27: note: in expansion of macro âBUILD_BUGâ
#define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; })
^
fs/proc/task_mmu.c:604:25: note: in expansion of macro âHPAGE_PUD_SIZEâ
mss->shared_clean += HPAGE_PUD_SIZE;
^
fs/proc/task_mmu.c: In function âsmaps_pud_rangeâ:
include/linux/compiler.h:505:38: error: call to â__compiletime_assert_607â declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
include/linux/compiler.h:488:4: note: in definition of macro â__compiletime_assertâ
prefix ## suffix(); \
^
include/linux/compiler.h:505: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:221:27: note: in expansion of macro âBUILD_BUGâ
#define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; })
^
fs/proc/task_mmu.c:607:26: note: in expansion of macro âHPAGE_PUD_SIZEâ
mss->private_dirty += HPAGE_PUD_SIZE;
^
include/linux/compiler.h:505:38: error: call to â__compiletime_assert_609â declared with attribute error: BUILD_BUG failed
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^
include/linux/compiler.h:488:4: note: in definition of macro â__compiletime_assertâ
prefix ## suffix(); \
^
include/linux/compiler.h:505: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:221:27: note: in expansion of macro âBUILD_BUGâ
#define HPAGE_PUD_SIZE ({ BUILD_BUG(); 0; })
^
fs/proc/task_mmu.c:609:26: note: in expansion of macro âHPAGE_PUD_SIZEâ
mss->private_clean += HPAGE_PUD_SIZE;
^
cc1: some warnings being treated as errors
scripts/Makefile.build:258: recipe for target 'fs/proc/task_mmu.o' failed
make[2]: *** [fs/proc/task_mmu.o] Error 1
scripts/Makefile.build:407: recipe for target 'fs/proc' failed
make[1]: *** [fs/proc] Error 2
make[1]: *** Waiting for unfinished jobs....


-ss