Hi all, After merging the mm tree, today's linux-next build (arm multi_v7_defconfig) failed like this: In file included from <command-line>: mm/shmem.c: In function 'shmem_add_to_page_cache.constprop': include/linux/compiler_types.h:352:45: error: call to '__compiletime_assert_267' declared with attribute error: BUILD_BUG failed 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/compiler_types.h:333:25: note: in definition of macro '__compiletime_assert' 333 | prefix ## suffix(); \ | ^~~~~~ include/linux/compiler_types.h:352:9: note: in expansion of macro '_compiletime_assert' 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #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' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ include/linux/vm_event_item.h:147:27: note: in expansion of macro 'BUILD_BUG' 147 | #define THP_FILE_ALLOC ({ BUILD_BUG(); 0; }) | ^~~~~~~~~ mm/shmem.c:743:40: note: in expansion of macro 'THP_FILE_ALLOC' 743 | count_vm_event(THP_FILE_ALLOC); | ^~~~~~~~~~~~~~ In file included from include/linux/math64.h:6, from include/linux/time64.h:5, from include/linux/restart_block.h:10, from include/linux/thread_info.h:14, from include/asm-generic/preempt.h:5, from ./arch/arm/include/generated/asm/preempt.h:1, from include/linux/preempt.h:78, from include/linux/spinlock.h:55, from include/linux/wait.h:9, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from mm/shmem.c:24: mm/shmem.c: In function 'shmem_getpage_gfp.constprop': include/linux/compiler_types.h:352:45: error: call to '__compiletime_assert_275' declared with attribute error: BUILD_BUG failed 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/math.h:15:46: note: in definition of macro '__round_mask' 15 | #define __round_mask(x, y) ((__typeof__(x))((y)-1)) | ^ mm/shmem.c:1892:26: note: in expansion of macro 'round_down' 1892 | hindex = round_down(index, HPAGE_PMD_NR); | ^~~~~~~~~~ include/linux/compiler_types.h:340:9: note: in expansion of macro '__compiletime_assert' 340 | __compiletime_assert(condition, msg, prefix, suffix) | ^~~~~~~~~~~~~~~~~~~~ include/linux/compiler_types.h:352:9: note: in expansion of macro '_compiletime_assert' 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #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' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ include/linux/huge_mm.h:307:28: note: in expansion of macro 'BUILD_BUG' 307 | #define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; }) | ^~~~~~~~~ include/linux/huge_mm.h:105:26: note: in expansion of macro 'HPAGE_PMD_SHIFT' 105 | #define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT) | ^~~~~~~~~~~~~~~ include/linux/huge_mm.h:106:26: note: in expansion of macro 'HPAGE_PMD_ORDER' 106 | #define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER) | ^~~~~~~~~~~~~~~ mm/shmem.c:1892:44: note: in expansion of macro 'HPAGE_PMD_NR' 1892 | hindex = round_down(index, HPAGE_PMD_NR); | ^~~~~~~~~~~~ In file included from <command-line>: include/linux/compiler_types.h:352:45: error: call to '__compiletime_assert_276' declared with attribute error: BUILD_BUG failed 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/compiler_types.h:333:25: note: in definition of macro '__compiletime_assert' 333 | prefix ## suffix(); \ | ^~~~~~ include/linux/compiler_types.h:352:9: note: in expansion of macro '_compiletime_assert' 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #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' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ include/linux/huge_mm.h:307:28: note: in expansion of macro 'BUILD_BUG' 307 | #define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; }) | ^~~~~~~~~ include/linux/huge_mm.h:105:26: note: in expansion of macro 'HPAGE_PMD_SHIFT' 105 | #define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT) | ^~~~~~~~~~~~~~~ include/linux/huge_mm.h:106:26: note: in expansion of macro 'HPAGE_PMD_ORDER' 106 | #define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER) | ^~~~~~~~~~~~~~~ mm/shmem.c:1915:34: note: in expansion of macro 'HPAGE_PMD_NR' 1915 | hindex + HPAGE_PMD_NR - 1) { | ^~~~~~~~~~~~ In file included from <command-line>: In function 'can_split_folio', inlined from 'shrink_page_list' at mm/vmscan.c:1719:11: include/linux/compiler_types.h:352:45: error: call to '__compiletime_assert_195' declared with attribute error: BUILD_BUG failed 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/compiler_types.h:333:25: note: in definition of macro '__compiletime_assert' 333 | prefix ## suffix(); \ | ^~~~~~ include/linux/compiler_types.h:352:9: note: in expansion of macro '_compiletime_assert' 352 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #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' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ include/linux/huge_mm.h:351:9: note: in expansion of macro 'BUILD_BUG' 351 | BUILD_BUG(); | ^~~~~~~~~ Reverting the following commits makes the problem go away: 2b58b3f33ba2 ("mm/shmem: convert shmem_swapin_page() to shmem_swapin_folio()") 94cdf3e8c0bf ("mm/shmem: convert shmem_getpage_gfp to use a folio") 3674fd6cadf5 ("mm/shmem: convert shmem_alloc_and_acct_page to use a folio") b0bb08b2d5f3 ("mm/shmem: turn shmem_alloc_page() into shmem_alloc_folio()") 8d657a77c6fe ("mm/shmem: turn shmem_should_replace_page into shmem_should_replace_folio") 9a44f3462edc ("mm/shmem: convert shmem_add_to_page_cache to take a folio") 561fd8bee1dc ("mm/swap: add folio_throttle_swaprate") cb4e56ee240d ("mm/shmem: use a folio in shmem_unused_huge_shrink") 22bf1b68e572 ("vmscan: remove remaining uses of page in shrink_page_list") 7d15d41b7c4a ("vmscan: convert the activate_locked portion of shrink_page_list to folios") 8a6aff9c51c7 ("vmscan: move initialisation of mapping down") b79338b3d217 ("vmscan: convert lazy freeing to folios") 719426e40146 ("vmscan: convert page buffer handling to use folios") 339ba7502e13 ("vmscan: convert dirty page handling to folios") -- Cheers, Stephen Rothwell
Attachment:
pgpMqT4Bb7oKb.pgp
Description: OpenPGP digital signature