[ardb:arm64-combine-module-section-allocations 2/5] kernel/module/main.c:3095:25: sparse: sparse: incorrect type in argument 4 (different base types)

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git arm64-combine-module-section-allocations
head:   180b5b2c872610c67c5ba4e0b380c915f2926acd
commit: c0268bf732e00e99693e1c768d07ca71a9b9d90d [2/5] module: Allow allocations to be combined
config: arm-randconfig-r123-20260822 (https://download.01.org/0day-ci/archive/20260822/[email protected]/config)
compiler: arm-linux-gnueabi-gcc (GCC) 10.5.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260822/[email protected]/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 <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

sparse warnings: (new ones prefixed by >>)
>> kernel/module/main.c:3095:25: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted gfp_t [usertype] flags @@     got unsigned long @@
   kernel/module/main.c:3095:25: sparse:     expected restricted gfp_t [usertype] flags
   kernel/module/main.c:3095:25: sparse:     got unsigned long
>> kernel/module/main.c:3095:25: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted gfp_t [usertype] flags @@     got unsigned long @@
   kernel/module/main.c:3095:25: sparse:     expected restricted gfp_t [usertype] flags
   kernel/module/main.c:3095:25: sparse:     got unsigned long
>> kernel/module/main.c:3095:25: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected restricted gfp_t [usertype] flags @@     got unsigned long @@
   kernel/module/main.c:3095:25: sparse:     expected restricted gfp_t [usertype] flags
   kernel/module/main.c:3095:25: sparse:     got unsigned long

vim +3095 kernel/module/main.c

  3082	
  3083	static void do_free_init(struct work_struct *w)
  3084	{
  3085		struct llist_node *pos, *n, *list;
  3086		struct mod_initfree *initfree;
  3087	
  3088		list = llist_del_all(&init_free_list);
  3089	
  3090		synchronize_rcu();
  3091	
  3092		llist_for_each_safe(pos, n, list) {
  3093			initfree = container_of(pos, struct mod_initfree, node);
  3094			if (initfree->init_text_size)
> 3095				WARN_ON(!vrealloc(initfree->init_text,
  3096						  initfree->init_text_size, PAGE_SIZE));
  3097			else
  3098				execmem_free(initfree->init_text);
  3099			execmem_free(initfree->init_data);
  3100			execmem_free(initfree->init_rodata);
  3101			kfree(initfree);
  3102		}
  3103	}
  3104	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.