From: kernel test robot <lkp@intel.com> To: "Matthew Wilcox (Oracle)" <willy@infradead.org>, linux-fsdevel@vger.kernel.org Cc: clang-built-linux@googlegroups.com, kbuild-all@lists.01.org, "Matthew Wilcox (Oracle)" <willy@infradead.org>, linux-mm@kvack.org, linux-block@vger.kernel.org Subject: Re: [PATCH v15 02/17] block: Add bio_for_each_folio_all() Date: Tue, 20 Jul 2021 20:05:30 +0800 [thread overview] Message-ID: <202107202006.xEMWJABf-lkp@intel.com> (raw) In-Reply-To: <20210719184001.1750630-3-willy@infradead.org> [-- Attachment #1: Type: text/plain, Size: 13224 bytes --] Hi "Matthew, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.14-rc2 next-20210720] [cannot apply to xfs-linux/for-next block/for-next] [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/Folio-support-in-block-iomap-layers/20210720-152323 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 2734d6c1b1a089fb593ef6a23d4b70903526fe0c config: x86_64-randconfig-r016-20210720 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 87039c048c0cbc3d8cbba86187269b006bf2f373) 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 # install x86_64 cross compiling tool for clang build # apt-get install binutils-x86-64-linux-gnu # https://github.com/0day-ci/linux/commit/d611eec3f37483e1acbcc299bf47e929766afc8d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Matthew-Wilcox-Oracle/Folio-support-in-block-iomap-layers/20210720-152323 git checkout d611eec3f37483e1acbcc299bf47e929766afc8d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All warnings (new ones prefixed by >>): In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. -- In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1213: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:220: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. -- In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1213: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:220: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +338 include/linux/bio.h 332 333 static inline 334 void bio_first_folio(struct folio_iter *fi, struct bio *bio, int i) 335 { 336 struct bio_vec *bvec = bio_first_bvec_all(bio) + i; 337 > 338 fi->folio = page_folio(bvec->bv_page); 339 fi->offset = bvec->bv_offset + 340 PAGE_SIZE * (bvec->bv_page - &fi->folio->page); 341 fi->_seg_count = bvec->bv_len; 342 fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); 343 fi->_i = i; 344 } 345 346 static inline void bio_next_folio(struct folio_iter *fi, struct bio *bio) 347 { 348 fi->_seg_count -= fi->length; 349 if (fi->_seg_count) { 350 fi->folio = folio_next(fi->folio); 351 fi->offset = 0; > 352 fi->length = min(folio_size(fi->folio), fi->_seg_count); 353 } else if (fi->_i + 1 < bio->bi_vcnt) { 354 bio_first_folio(fi, bio, fi->_i + 1); 355 } else { 356 fi->folio = NULL; 357 } 358 } 359 --- 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: 46021 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 v15 02/17] block: Add bio_for_each_folio_all() Date: Tue, 20 Jul 2021 20:05:30 +0800 [thread overview] Message-ID: <202107202006.xEMWJABf-lkp@intel.com> (raw) In-Reply-To: <20210719184001.1750630-3-willy@infradead.org> [-- Attachment #1: Type: text/plain, Size: 13449 bytes --] Hi "Matthew, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.14-rc2 next-20210720] [cannot apply to xfs-linux/for-next block/for-next] [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/Folio-support-in-block-iomap-layers/20210720-152323 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 2734d6c1b1a089fb593ef6a23d4b70903526fe0c config: x86_64-randconfig-r016-20210720 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 87039c048c0cbc3d8cbba86187269b006bf2f373) 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 # install x86_64 cross compiling tool for clang build # apt-get install binutils-x86-64-linux-gnu # https://github.com/0day-ci/linux/commit/d611eec3f37483e1acbcc299bf47e929766afc8d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Matthew-Wilcox-Oracle/Folio-support-in-block-iomap-layers/20210720-152323 git checkout d611eec3f37483e1acbcc299bf47e929766afc8d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All warnings (new ones prefixed by >>): In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. -- In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1213: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:220: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. -- In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:22: In file included from include/linux/writeback.h:14: In file included from include/linux/blk-cgroup.h:23: In file included from include/linux/blkdev.h:18: include/linux/bio.h:338:14: error: implicit declaration of function 'page_folio' [-Werror,-Wimplicit-function-declaration] fi->folio = page_folio(bvec->bv_page); ^ >> include/linux/bio.h:338:12: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = page_folio(bvec->bv_page); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:340:43: error: incomplete definition of type 'struct folio' PAGE_SIZE * (bvec->bv_page - &fi->folio->page); ~~~~~~~~~^ include/linux/bio.h:325:9: note: forward declaration of 'struct folio' struct folio *folio; ^ include/linux/bio.h:342:19: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); ^ include/linux/bio.h:350:15: error: implicit declaration of function 'folio_next' [-Werror,-Wimplicit-function-declaration] fi->folio = folio_next(fi->folio); ^ include/linux/bio.h:350:13: warning: incompatible integer to pointer conversion assigning to 'struct folio *' from 'int' [-Wint-conversion] fi->folio = folio_next(fi->folio); ^ ~~~~~~~~~~~~~~~~~~~~~ include/linux/bio.h:352:20: error: implicit declaration of function 'folio_size' [-Werror,-Wimplicit-function-declaration] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^ >> include/linux/bio.h:352:16: warning: comparison of distinct pointer types ('typeof (folio_size(fi->folio)) *' (aka 'int *') and 'typeof (fi->_seg_count) *' (aka 'unsigned long *')) [-Wcompare-distinct-pointer-types] fi->length = min(folio_size(fi->folio), fi->_seg_count); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:45:19: note: expanded from macro 'min' #define min(x, y) __careful_cmp(x, y, <) ^~~~~~~~~~~~~~~~~~~~~~ include/linux/minmax.h:36:24: note: expanded from macro '__careful_cmp' __builtin_choose_expr(__safe_cmp(x, y), \ ^~~~~~~~~~~~~~~~ include/linux/minmax.h:26:4: note: expanded from macro '__safe_cmp' (__typecheck(x, y) && __no_side_effects(x, y)) ^~~~~~~~~~~~~~~~~ include/linux/minmax.h:20:28: note: expanded from macro '__typecheck' (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ 3 warnings and 5 errors generated. make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1213: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:220: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +338 include/linux/bio.h 332 333 static inline 334 void bio_first_folio(struct folio_iter *fi, struct bio *bio, int i) 335 { 336 struct bio_vec *bvec = bio_first_bvec_all(bio) + i; 337 > 338 fi->folio = page_folio(bvec->bv_page); 339 fi->offset = bvec->bv_offset + 340 PAGE_SIZE * (bvec->bv_page - &fi->folio->page); 341 fi->_seg_count = bvec->bv_len; 342 fi->length = min(folio_size(fi->folio) - fi->offset, fi->_seg_count); 343 fi->_i = i; 344 } 345 346 static inline void bio_next_folio(struct folio_iter *fi, struct bio *bio) 347 { 348 fi->_seg_count -= fi->length; 349 if (fi->_seg_count) { 350 fi->folio = folio_next(fi->folio); 351 fi->offset = 0; > 352 fi->length = min(folio_size(fi->folio), fi->_seg_count); 353 } else if (fi->_i + 1 < bio->bi_vcnt) { 354 bio_first_folio(fi, bio, fi->_i + 1); 355 } else { 356 fi->folio = NULL; 357 } 358 } 359 --- 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: 46021 bytes --]
next prev parent reply other threads:[~2021-07-20 12:06 UTC|newest] Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-07-19 18:39 [PATCH v15 00/17] Folio support in block + iomap layers Matthew Wilcox (Oracle) 2021-07-19 18:39 ` [PATCH v15 01/17] block: Add bio_add_folio() Matthew Wilcox (Oracle) 2021-07-20 1:28 ` Darrick J. Wong 2021-07-20 6:42 ` Christoph Hellwig 2021-07-20 11:16 ` Matthew Wilcox 2021-07-22 16:27 ` Matthew Wilcox 2021-07-30 8:25 ` Ming Lei 2021-07-30 11:30 ` Matthew Wilcox 2021-07-19 18:39 ` [PATCH v15 02/17] block: Add bio_for_each_folio_all() Matthew Wilcox (Oracle) 2021-07-20 1:29 ` Darrick J. Wong 2021-07-20 1:59 ` Matthew Wilcox 2021-07-20 6:48 ` Christoph Hellwig 2021-07-23 2:40 ` Matthew Wilcox 2021-07-20 12:05 ` kernel test robot [this message] 2021-07-20 12:05 ` kernel test robot 2021-07-20 12:05 ` kernel test robot 2021-07-20 12:05 ` kernel test robot 2021-07-20 12:26 ` kernel test robot 2021-07-20 12:26 ` kernel test robot 2021-07-19 18:39 ` [PATCH v15 03/17] iomap: Convert to_iomap_page to take a folio Matthew Wilcox (Oracle) 2021-07-20 6:49 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 04/17] iomap: Convert iomap_page_create " Matthew Wilcox (Oracle) 2021-07-20 6:50 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 05/17] iomap: Convert iomap_page_release " Matthew Wilcox (Oracle) 2021-07-20 6:52 ` Christoph Hellwig 2021-07-20 11:29 ` Matthew Wilcox 2021-07-20 11:40 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 06/17] iomap: Convert iomap_releasepage to use " Matthew Wilcox (Oracle) 2021-07-20 6:54 ` Christoph Hellwig 2021-07-20 23:56 ` Darrick J. Wong 2021-07-19 18:39 ` [PATCH v15 07/17] iomap: Convert iomap_invalidatepage " Matthew Wilcox (Oracle) 2021-07-20 6:55 ` Christoph Hellwig 2021-07-20 23:57 ` Darrick J. Wong 2021-07-19 18:39 ` [PATCH v15 08/17] iomap: Pass the iomap_page into iomap_set_range_uptodate Matthew Wilcox (Oracle) 2021-07-20 6:57 ` Christoph Hellwig 2021-07-20 11:36 ` Matthew Wilcox 2021-07-19 18:39 ` [PATCH v15 09/17] iomap: Use folio offsets instead of page offsets Matthew Wilcox (Oracle) 2021-07-20 6:59 ` Christoph Hellwig 2021-07-20 11:42 ` Matthew Wilcox 2021-07-19 18:39 ` [PATCH v15 10/17] iomap: Convert bio completions to use folios Matthew Wilcox (Oracle) 2021-07-20 7:08 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 11/17] iomap: Convert readahead and readpage to use a folio Matthew Wilcox (Oracle) 2021-07-20 7:09 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 12/17] iomap: Convert iomap_page_mkwrite " Matthew Wilcox (Oracle) 2021-07-20 7:13 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 13/17] iomap: Convert iomap_write_begin and iomap_write_end to folios Matthew Wilcox (Oracle) 2021-07-20 7:15 ` Christoph Hellwig 2021-07-20 23:59 ` Darrick J. Wong 2021-07-19 18:39 ` [PATCH v15 14/17] iomap: Convert iomap_read_inline_data to take a folio Matthew Wilcox (Oracle) 2021-07-20 7:16 ` Christoph Hellwig 2021-07-19 18:39 ` [PATCH v15 15/17] iomap: Convert iomap_write_end_inline " Matthew Wilcox (Oracle) 2021-07-20 7:17 ` Christoph Hellwig 2021-07-19 18:40 ` [PATCH v15 16/17] iomap: Convert iomap_add_to_ioend " Matthew Wilcox (Oracle) 2021-07-20 7:20 ` Christoph Hellwig 2021-07-20 11:45 ` Matthew Wilcox 2021-07-21 0:12 ` Darrick J. Wong 2021-07-21 4:27 ` Christoph Hellwig 2021-07-21 4:31 ` Matthew Wilcox 2021-07-21 15:28 ` Darrick J. Wong 2021-07-19 18:40 ` [PATCH v15 17/17] iomap: Convert iomap_migrate_page to use folios Matthew Wilcox (Oracle) 2021-07-20 7:21 ` Christoph Hellwig 2021-07-20 13:30 ` kernel test robot 2021-07-20 13:30 ` kernel test robot 2021-07-21 0:02 ` Darrick J. Wong 2021-07-20 8:44 ` [PATCH v15 00/17] Folio support in block + iomap layers Christoph Hellwig 2021-07-20 11:08 ` Matthew Wilcox
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=202107202006.xEMWJABf-lkp@intel.com \ --to=lkp@intel.com \ --cc=clang-built-linux@googlegroups.com \ --cc=kbuild-all@lists.01.org \ --cc=linux-block@vger.kernel.org \ --cc=linux-fsdevel@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.