From: kernel test robot <lkp@intel.com> To: "Matthew Wilcox (Oracle)" <willy@infradead.org>, linux-mm@kvack.org Cc: kbuild-all@lists.01.org, "Matthew Wilcox (Oracle)" <willy@infradead.org>, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-cachefs@redhat.com, linux-afs@lists.infradead.org, Jeff Layton <jlayton@kernel.org> Subject: Re: [PATCH v7 02/28] mm: Introduce struct folio Date: Sat, 10 Apr 2021 10:51:47 +0800 [thread overview] Message-ID: <202104101038.1fji2pdh-lkp@intel.com> (raw) In-Reply-To: <20210409185105.188284-3-willy@infradead.org> [-- Attachment #1: Type: text/plain, Size: 26190 bytes --] Hi "Matthew, Thank you for the patch! Yet something to improve: [auto build test ERROR on next-20210409] [also build test ERROR on v5.12-rc6] [cannot apply to linux/master linus/master hnaz-linux-mm/master v5.12-rc6 v5.12-rc5 v5.12-rc4] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Matthew-Wilcox-Oracle/Memory-Folios/20210410-031353 base: e99d8a8495175df8cb8b739f8cf9b0fc9d0cd3b5 config: mips-gpr_defconfig (attached as .config) compiler: mipsel-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/5658a201516d2ed74a34c328e3b55f552d4861d8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Matthew-Wilcox-Oracle/Memory-Folios/20210410-031353 git checkout 5658a201516d2ed74a34c328e3b55f552d4861d8 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ -- In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:118: arch/mips/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1304: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:222: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. -- error: no override and no default toolchain set init/Kconfig:70:warning: 'RUSTC_VERSION': number is invalid In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:118: arch/mips/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1304: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:222: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +78 include/linux/build_bug.h bc6245e5efd70c Ian Abbott 2017-07-10 60 6bab69c65013be Rasmus Villemoes 2019-03-07 61 /** 6bab69c65013be Rasmus Villemoes 2019-03-07 62 * static_assert - check integer constant expression at build time 6bab69c65013be Rasmus Villemoes 2019-03-07 63 * 6bab69c65013be Rasmus Villemoes 2019-03-07 64 * static_assert() is a wrapper for the C11 _Static_assert, with a 6bab69c65013be Rasmus Villemoes 2019-03-07 65 * little macro magic to make the message optional (defaulting to the 6bab69c65013be Rasmus Villemoes 2019-03-07 66 * stringification of the tested expression). 6bab69c65013be Rasmus Villemoes 2019-03-07 67 * 6bab69c65013be Rasmus Villemoes 2019-03-07 68 * Contrary to BUILD_BUG_ON(), static_assert() can be used at global 6bab69c65013be Rasmus Villemoes 2019-03-07 69 * scope, but requires the expression to be an integer constant 6bab69c65013be Rasmus Villemoes 2019-03-07 70 * expression (i.e., it is not enough that __builtin_constant_p() is 6bab69c65013be Rasmus Villemoes 2019-03-07 71 * true for expr). 6bab69c65013be Rasmus Villemoes 2019-03-07 72 * 6bab69c65013be Rasmus Villemoes 2019-03-07 73 * Also note that BUILD_BUG_ON() fails the build if the condition is 6bab69c65013be Rasmus Villemoes 2019-03-07 74 * true, while static_assert() fails the build if the expression is 6bab69c65013be Rasmus Villemoes 2019-03-07 75 * false. 6bab69c65013be Rasmus Villemoes 2019-03-07 76 */ 6bab69c65013be Rasmus Villemoes 2019-03-07 @77 #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) 6bab69c65013be Rasmus Villemoes 2019-03-07 @78 #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) 6bab69c65013be Rasmus Villemoes 2019-03-07 79 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 21737 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: Re: [PATCH v7 02/28] mm: Introduce struct folio Date: Sat, 10 Apr 2021 10:51:47 +0800 [thread overview] Message-ID: <202104101038.1fji2pdh-lkp@intel.com> (raw) In-Reply-To: <20210409185105.188284-3-willy@infradead.org> [-- Attachment #1: Type: text/plain, Size: 26590 bytes --] Hi "Matthew, Thank you for the patch! Yet something to improve: [auto build test ERROR on next-20210409] [also build test ERROR on v5.12-rc6] [cannot apply to linux/master linus/master hnaz-linux-mm/master v5.12-rc6 v5.12-rc5 v5.12-rc4] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Matthew-Wilcox-Oracle/Memory-Folios/20210410-031353 base: e99d8a8495175df8cb8b739f8cf9b0fc9d0cd3b5 config: mips-gpr_defconfig (attached as .config) compiler: mipsel-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/5658a201516d2ed74a34c328e3b55f552d4861d8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Matthew-Wilcox-Oracle/Memory-Folios/20210410-031353 git checkout 5658a201516d2ed74a34c328e3b55f552d4861d8 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ -- In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:118: arch/mips/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1304: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:222: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. -- error: no override and no default toolchain set init/Kconfig:70:warning: 'RUSTC_VERSION': number is invalid In file included from include/linux/bits.h:22, from include/linux/bitops.h:6, from include/linux/log2.h:12, from include/asm-generic/div64.h:53, from arch/mips/include/asm/div64.h:12, from include/linux/math64.h:7, from include/linux/time.h:6, from include/linux/compat.h:10, from arch/mips/kernel/asm-offsets.c:12: >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, lru) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:274:1: note: in expansion of macro 'FOLIO_MATCH' 274 | FOLIO_MATCH(lru, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, compound_head) == offsetof(struct folio, lru)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:275:1: note: in expansion of macro 'FOLIO_MATCH' 275 | FOLIO_MATCH(compound_head, lru); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, index) == offsetof(struct folio, index)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:276:1: note: in expansion of macro 'FOLIO_MATCH' 276 | FOLIO_MATCH(index, index); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, private) == offsetof(struct folio, private)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:277:1: note: in expansion of macro 'FOLIO_MATCH' 277 | FOLIO_MATCH(private, private); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _mapcount) == offsetof(struct folio, _mapcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:278:1: note: in expansion of macro 'FOLIO_MATCH' 278 | FOLIO_MATCH(_mapcount, _mapcount); | ^~~~~~~~~~~ >> include/linux/build_bug.h:78:41: error: static assertion failed: "offsetof(struct page, _refcount) == offsetof(struct folio, _refcount)" 78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) | ^~~~~~~~~~~~~~ include/linux/build_bug.h:77:34: note: in expansion of macro '__static_assert' 77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) | ^~~~~~~~~~~~~~~ include/linux/mm_types.h:272:2: note: in expansion of macro 'static_assert' 272 | static_assert(offsetof(struct page, pg) == offsetof(struct folio, fl)) | ^~~~~~~~~~~~~ include/linux/mm_types.h:279:1: note: in expansion of macro 'FOLIO_MATCH' 279 | FOLIO_MATCH(_refcount, _refcount); | ^~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:26:6: warning: no previous prototype for 'output_ptreg_defines' [-Wmissing-prototypes] 26 | void output_ptreg_defines(void) | ^~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:78:6: warning: no previous prototype for 'output_task_defines' [-Wmissing-prototypes] 78 | void output_task_defines(void) | ^~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:93:6: warning: no previous prototype for 'output_thread_info_defines' [-Wmissing-prototypes] 93 | void output_thread_info_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:109:6: warning: no previous prototype for 'output_thread_defines' [-Wmissing-prototypes] 109 | void output_thread_defines(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:137:6: warning: no previous prototype for 'output_thread_fpu_defines' [-Wmissing-prototypes] 137 | void output_thread_fpu_defines(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:180:6: warning: no previous prototype for 'output_mm_defines' [-Wmissing-prototypes] 180 | void output_mm_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:219:6: warning: no previous prototype for 'output_sc_defines' [-Wmissing-prototypes] 219 | void output_sc_defines(void) | ^~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:254:6: warning: no previous prototype for 'output_signal_defined' [-Wmissing-prototypes] 254 | void output_signal_defined(void) | ^~~~~~~~~~~~~~~~~~~~~ arch/mips/kernel/asm-offsets.c:347:6: warning: no previous prototype for 'output_kvm_defines' [-Wmissing-prototypes] 347 | void output_kvm_defines(void) | ^~~~~~~~~~~~~~~~~~ make[2]: *** [scripts/Makefile.build:118: arch/mips/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1304: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:222: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +78 include/linux/build_bug.h bc6245e5efd70c Ian Abbott 2017-07-10 60 6bab69c65013be Rasmus Villemoes 2019-03-07 61 /** 6bab69c65013be Rasmus Villemoes 2019-03-07 62 * static_assert - check integer constant expression at build time 6bab69c65013be Rasmus Villemoes 2019-03-07 63 * 6bab69c65013be Rasmus Villemoes 2019-03-07 64 * static_assert() is a wrapper for the C11 _Static_assert, with a 6bab69c65013be Rasmus Villemoes 2019-03-07 65 * little macro magic to make the message optional (defaulting to the 6bab69c65013be Rasmus Villemoes 2019-03-07 66 * stringification of the tested expression). 6bab69c65013be Rasmus Villemoes 2019-03-07 67 * 6bab69c65013be Rasmus Villemoes 2019-03-07 68 * Contrary to BUILD_BUG_ON(), static_assert() can be used at global 6bab69c65013be Rasmus Villemoes 2019-03-07 69 * scope, but requires the expression to be an integer constant 6bab69c65013be Rasmus Villemoes 2019-03-07 70 * expression (i.e., it is not enough that __builtin_constant_p() is 6bab69c65013be Rasmus Villemoes 2019-03-07 71 * true for expr). 6bab69c65013be Rasmus Villemoes 2019-03-07 72 * 6bab69c65013be Rasmus Villemoes 2019-03-07 73 * Also note that BUILD_BUG_ON() fails the build if the condition is 6bab69c65013be Rasmus Villemoes 2019-03-07 74 * true, while static_assert() fails the build if the expression is 6bab69c65013be Rasmus Villemoes 2019-03-07 75 * false. 6bab69c65013be Rasmus Villemoes 2019-03-07 76 */ 6bab69c65013be Rasmus Villemoes 2019-03-07 @77 #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) 6bab69c65013be Rasmus Villemoes 2019-03-07 @78 #define __static_assert(expr, msg, ...) _Static_assert(expr, msg) 6bab69c65013be Rasmus Villemoes 2019-03-07 79 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 21737 bytes --]
next prev parent reply other threads:[~2021-04-10 2:52 UTC|newest] Thread overview: 87+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-09 18:50 [PATCH v7 00/28] Memory Folios Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 01/28] mm: Optimise nth_page for contiguous memmap Matthew Wilcox (Oracle) 2021-04-12 6:08 ` Christoph Hellwig 2021-04-09 18:50 ` [PATCH v7 02/28] mm: Introduce struct folio Matthew Wilcox (Oracle) 2021-04-09 22:45 ` kernel test robot 2021-04-09 22:45 ` kernel test robot 2021-04-10 2:43 ` Bogus struct page layout on 32-bit Matthew Wilcox 2021-04-10 2:43 ` Matthew Wilcox 2021-04-10 2:43 ` Matthew Wilcox 2021-04-10 2:43 ` Matthew Wilcox 2021-04-10 6:21 ` Jesper Dangaard Brouer 2021-04-10 6:21 ` Jesper Dangaard Brouer 2021-04-10 6:21 ` Jesper Dangaard Brouer 2021-04-10 6:21 ` Jesper Dangaard Brouer 2021-04-10 8:52 ` Ilias Apalodimas 2021-04-10 8:52 ` Ilias Apalodimas 2021-04-10 8:52 ` Ilias Apalodimas 2021-04-10 8:52 ` Ilias Apalodimas 2021-04-10 8:52 ` Ilias Apalodimas 2021-04-10 14:06 ` Matthew Wilcox 2021-04-10 14:06 ` Matthew Wilcox 2021-04-10 14:06 ` Matthew Wilcox 2021-04-10 14:06 ` Matthew Wilcox 2021-04-10 15:54 ` Russell King - ARM Linux admin 2021-04-10 15:54 ` Russell King - ARM Linux admin 2021-04-10 15:54 ` Russell King - ARM Linux admin 2021-04-10 15:54 ` Russell King - ARM Linux admin 2021-04-16 9:26 ` Grygorii Strashko 2021-04-16 9:26 ` Grygorii Strashko 2021-04-16 9:26 ` Grygorii Strashko 2021-04-16 9:26 ` Grygorii Strashko 2021-04-16 14:10 ` Arnd Bergmann 2021-04-16 14:10 ` Arnd Bergmann 2021-04-16 14:10 ` Arnd Bergmann 2021-04-16 14:10 ` Arnd Bergmann 2021-04-16 14:10 ` Arnd Bergmann 2021-04-17 13:08 ` David Laight 2021-04-17 13:08 ` David Laight 2021-04-17 13:08 ` David Laight 2021-04-17 13:08 ` David Laight 2021-04-17 13:08 ` David Laight 2021-04-10 14:17 ` David Laight 2021-04-10 14:17 ` David Laight 2021-04-10 14:17 ` David Laight 2021-04-10 14:17 ` David Laight 2021-04-10 14:17 ` David Laight 2021-04-10 19:10 ` Arnd Bergmann 2021-04-10 19:10 ` Arnd Bergmann 2021-04-10 19:10 ` Arnd Bergmann 2021-04-10 19:10 ` Arnd Bergmann 2021-04-10 19:10 ` Arnd Bergmann 2021-04-11 22:35 ` Matthew Wilcox 2021-04-11 22:35 ` Matthew Wilcox 2021-04-11 22:35 ` Matthew Wilcox 2021-04-11 22:35 ` Matthew Wilcox 2021-04-10 2:51 ` kernel test robot [this message] 2021-04-10 2:51 ` [PATCH v7 02/28] mm: Introduce struct folio kernel test robot 2021-04-16 15:55 ` Matthew Wilcox 2021-04-19 9:06 ` Kirill A. Shutemov 2021-04-09 18:50 ` [PATCH v7 03/28] mm: Add folio_pgdat and folio_zone Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 04/28] mm/vmstat: Add functions to account folio statistics Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 05/28] mm/debug: Add VM_BUG_ON_FOLIO and VM_WARN_ON_ONCE_FOLIO Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 06/28] mm: Add folio reference count functions Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 07/28] mm: Add put_folio Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 08/28] mm: Add get_folio Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 09/28] mm: Create FolioFlags Matthew Wilcox (Oracle) 2021-04-19 13:25 ` Peter Zijlstra 2021-04-19 13:55 ` Matthew Wilcox 2021-04-09 18:50 ` [PATCH v7 10/28] mm: Handle per-folio private data Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 11/28] mm/filemap: Add folio_index, folio_file_page and folio_contains Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 12/28] mm/filemap: Add folio_next_index Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 13/28] mm/filemap: Add folio_offset and folio_file_offset Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 14/28] mm/util: Add folio_mapping and folio_file_mapping Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 15/28] mm: Add folio_mapcount Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 16/28] mm/memcg: Add folio wrappers for various functions Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 17/28] mm/filemap: Add unlock_folio Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 18/28] mm/filemap: Add lock_folio Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 19/28] mm/filemap: Add lock_folio_killable Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 20/28] mm/filemap: Add __lock_folio_async Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 21/28] mm/filemap: Add __lock_folio_or_retry Matthew Wilcox (Oracle) 2021-04-09 18:50 ` [PATCH v7 22/28] mm/filemap: Add wait_on_folio_locked Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 23/28] mm/filemap: Add end_folio_writeback Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 24/28] mm/writeback: Add wait_on_folio_writeback Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 25/28] mm/writeback: Add wait_for_stable_folio Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 26/28] mm/filemap: Convert wait_on_page_bit to wait_on_folio_bit Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 27/28] mm/filemap: Convert wake_up_page_bit to wake_up_folio_bit Matthew Wilcox (Oracle) 2021-04-09 18:51 ` [PATCH v7 28/28] mm/filemap: Convert page wait queues to be folios Matthew Wilcox (Oracle)
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202104101038.1fji2pdh-lkp@intel.com \ --to=lkp@intel.com \ --cc=jlayton@kernel.org \ --cc=kbuild-all@lists.01.org \ --cc=linux-afs@lists.infradead.org \ --cc=linux-cachefs@redhat.com \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=willy@infradead.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.