Hi Menglong,

kernel test robot noticed the following build warnings:

[auto build test WARNING on bpf-next/master]

url:    
https://github.com/intel-lab-lkp/linux/commits/Menglong-Dong/add-function-metadata-support/20250226-202312
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
patch link:    
https://lore.kernel.org/r/20250226121537.752241-1-dongml2%40chinatelecom.cn
patch subject: [PATCH bpf-next v2] add function metadata support
config: x86_64-randconfig-r112-20250227 
(https://download.01.org/0day-ci/archive/20250228/[email protected]/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project 
cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20250228/[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/trace/kfunc_md.c:12:23: sparse: sparse: symbol 'kfunc_mds' redeclared 
with different type (different address spaces):
   kernel/trace/kfunc_md.c:12:23: sparse:    struct kfunc_md [noderef] __rcu 
*[addressable] [toplevel] kfunc_mds
   kernel/trace/kfunc_md.c: note: in included file:
   include/linux/kfunc_md.h:16:24: sparse: note: previously declared as:
   include/linux/kfunc_md.h:16:24: sparse:    struct kfunc_md *extern 
[addressable] [toplevel] kfunc_mds
>> kernel/trace/kfunc_md.c:186:20: sparse: sparse: incorrect type in assignment 
>> (different address spaces) @@     expected struct kfunc_md *md @@     got 
>> struct kfunc_md [noderef] __rcu * @@
   kernel/trace/kfunc_md.c:186:20: sparse:     expected struct kfunc_md *md
   kernel/trace/kfunc_md.c:186:20: sparse:     got struct kfunc_md [noderef] 
__rcu *

vim +186 kernel/trace/kfunc_md.c

   169  
   170  /* Get a exist metadata by the function address, and NULL will be 
returned
   171   * if not exist.
   172   *
   173   * NOTE: rcu lock should be held during reading the metadata, and
   174   * kfunc_md_lock should be held if writing happens.
   175   */
   176  struct kfunc_md *kfunc_md_find(void *ip)
   177  {
   178          struct kfunc_md *md;
   179          u32 index;
   180  
   181          if (kfunc_md_arch_exist(ip)) {
   182                  index = kfunc_md_get_index(ip);
   183                  if (WARN_ON_ONCE(index >= kfunc_md_count))
   184                          return NULL;
   185  
 > 186                  md = &kfunc_mds[index];
   187                  return md;
   188          }
   189          return NULL;
   190  }
   191  EXPORT_SYMBOL_GPL(kfunc_md_find);
   192  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Reply via email to