On Tue, Jan 28, 2025 at 02:50:55AM +0800, kernel test robot wrote: > Hi Lorenzo, > > kernel test robot noticed the following build warnings: > > [auto build test WARNING on akpm-mm/mm-everything] > > url: https://github.com/intel-lab-lkp/linux/commits/Lorenzo-Stoakes/mm-simplify-vma-merge-structure-and-expand-comments/20250127-235322 > base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything > patch link: https://lore.kernel.org/r/ef00aec42a892fe6ac9557b3a11f18f30a2e51b3.1737929364.git.lorenzo.stoakes%40oracle.com > patch subject: [PATCH 5/5] mm: completely abstract unnecessary adj_start calculation > config: um-randconfig-001-20250128 (https://download.01.org/0day-ci/archive/20250128/202501280232.qYHi6Rkt-lkp@xxxxxxxxx/config) > compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250128/202501280232.qYHi6Rkt-lkp@xxxxxxxxx/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot <lkp@xxxxxxxxx> > | Closes: https://lore.kernel.org/oe-kbuild-all/202501280232.qYHi6Rkt-lkp@xxxxxxxxx/ > > All warnings (new ones prefixed by >>): > > In file included from include/uapi/linux/posix_types.h:5, > from include/uapi/linux/types.h:14, > from include/linux/types.h:6, > from include/linux/kasan-checks.h:5, > from include/asm-generic/rwonce.h:26, > from ./arch/x86/include/generated/asm/rwonce.h:1, > from include/linux/compiler.h:339, > from include/linux/array_size.h:5, > from include/linux/kernel.h:16, > from include/linux/backing-dev.h:12, > from mm/vma_internal.h:12, > from mm/vma.c:7: > mm/vma.c: In function '__split_vma': > >> include/linux/stddef.h:8:14: warning: passing argument 4 of 'vma_adjust_trans_huge' makes integer from pointer without a cast [-Wint-conversion] > 8 | #define NULL ((void *)0) > | ^~~~~~~~~~~ > | | > | void * > mm/vma.c:518:57: note: in expansion of macro 'NULL' > 518 | vma_adjust_trans_huge(vma, vma->vm_start, addr, NULL); > | ^~~~ > In file included from include/linux/mm.h:1133, > from arch/um/include/asm/tlbflush.h:9, > from arch/um/include/asm/cacheflush.h:4, > from include/linux/cacheflush.h:5, > from include/linux/highmem.h:8, > from include/linux/bvec.h:10, > from include/linux/blk_types.h:10, > from include/linux/writeback.h:13, > from include/linux/backing-dev.h:16: > include/linux/huge_mm.h:574:47: note: expected 'long int' but argument is of type 'void *' > 574 | long adjust_next) > | ~~~~~^~~~~~~~~~~ Doh! My bad. For some reason I didn't change the header, and my local compiles must have made this a warning only and had no problem with it... That'll teach me for disabling CONFIG_WERROR :) I'll fix that. Thanks! > mm/vma.c: In function 'commit_merge': > >> mm/vma.c:704:56: warning: passing argument 4 of 'vma_adjust_trans_huge' makes integer from pointer without a cast [-Wint-conversion] > 704 | adj_middle ? vmg->middle : NULL); > include/linux/huge_mm.h:574:47: note: expected 'long int' but argument is of type 'struct vm_area_struct *' > 574 | long adjust_next) > | ~~~~~^~~~~~~~~~~ > mm/vma.c: In function 'vma_shrink': > >> include/linux/stddef.h:8:14: warning: passing argument 4 of 'vma_adjust_trans_huge' makes integer from pointer without a cast [-Wint-conversion] > 8 | #define NULL ((void *)0) > | ^~~~~~~~~~~ > | | > | void * > mm/vma.c:1141:48: note: in expansion of macro 'NULL' > 1141 | vma_adjust_trans_huge(vma, start, end, NULL); > | ^~~~ > include/linux/huge_mm.h:574:47: note: expected 'long int' but argument is of type 'void *' > 574 | long adjust_next) > | ~~~~~^~~~~~~~~~~ > > > vim +/vma_adjust_trans_huge +8 include/linux/stddef.h > > ^1da177e4c3f41 Linus Torvalds 2005-04-16 6 > ^1da177e4c3f41 Linus Torvalds 2005-04-16 7 #undef NULL > ^1da177e4c3f41 Linus Torvalds 2005-04-16 @8 #define NULL ((void *)0) > 6e218287432472 Richard Knutsson 2006-09-30 9 > > -- > 0-DAY CI Kernel Test Service > https://github.com/intel/lkp-tests/wiki