linux-next: build failure after merge of the mm tree
From: Stephen Rothwell
Date: Mon May 02 2022 - 06:49:16 EST
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:
pgpcKKI_5rn7V.pgp
Description: OpenPGP digital signature