On Tue, 14 Apr 2020 07:18:01 -0700 Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote: > On 4/13/20 7:39 PM, Stephen Rothwell wrote: > > Hi all, > > > > Changes since 20200413: > > > > New tree: mhi > > > > My fixes tree contains: > > > > 6b038bdcd3d1 sh: mm: Fix build error > > > > Non-merge commits (relative to Linus' tree): 1154 > > 1160 files changed, 31764 insertions(+), 13498 deletions(-) > > > > ---------------------------------------------------------------------------- > > on x86_64: > # CONFIG_TRANSPARENT_HUGEPAGE is not set Thanks. hm, this took a long time to be discovered. > In file included from ../include/linux/export.h:43:0, > from ../include/linux/linkage.h:7, > from ../include/linux/fs.h:5, > from ../mm/shmem.c:24: > ../mm/shmem.c: In function ‘shmem_undo_range’: > ../include/linux/compiler.h:394:38: error: call to ‘__compiletime_assert_110’ declared with attribute error: BUILD_BUG failed > _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) > ^ > ../include/linux/compiler.h:69:3: note: in definition of macro ‘__trace_if_value’ > (cond) ? \ > ^~~~ > ../include/linux/compiler.h:56:28: note: in expansion of macro ‘__trace_if_var’ > #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) ) > ^~~~~~~~~~~~~~ > ../mm/shmem.c:960:6: note: in expansion of macro ‘if’ > if (index < > ^~ > ../include/linux/kernel.h:71:36: note: in expansion of macro ‘__round_mask’ > #define round_up(x, y) ((((x)-1) | __round_mask(x, y))+1) > ^~~~~~~~~~~~ > ../mm/shmem.c:961:10: note: in expansion of macro ‘round_up’ > round_up(start, HPAGE_PMD_NR)) > ^~~~~~~~ > ../include/linux/compiler.h:382:2: note: in expansion of macro ‘__compiletime_assert’ > __compiletime_assert(condition, msg, prefix, suffix) > ^~~~~~~~~~~~~~~~~~~~ > ../include/linux/compiler.h:394:2: note: in expansion of macro ‘_compiletime_assert’ > _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) > ^~~~~~~~~~~~~~~~~~~ > ../include/linux/build_bug.h:39:37: note: in expansion of macro ‘compiletime_assert’ > #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) > ^~~~~~~~~~~~~~~~~~ > ../include/linux/build_bug.h:59: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:319:28: note: in expansion of macro ‘BUILD_BUG’ > #define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; }) > ^~~~~~~~~ > ../include/linux/huge_mm.h:115:26: note: in expansion of macro ‘HPAGE_PMD_SHIFT’ > #define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT) > ^~~~~~~~~~~~~~~ > ../include/linux/huge_mm.h:116:26: note: in expansion of macro ‘HPAGE_PMD_ORDER’ > #define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER) > ^~~~~~~~~~~~~~~ > ../mm/shmem.c:961:26: note: in expansion of macro ‘HPAGE_PMD_NR’ > round_up(start, HPAGE_PMD_NR)) > ^~~~~~~~~~~~ > That's if (index < round_up(start, HPAGE_PMD_NR)) start = index + 1; from Hugh's 71725ed10c40696 ("mm: huge tmpfs: try to split_huge_page() when punching hole").