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/bpf-remove-is_return-in-struct-bpf_session_run_ctx/20250922-175833
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
patch link:    
https://lore.kernel.org/r/20250922095705.252519-1-dongml2%40chinatelecom.cn
patch subject: [PATCH bpf-next] bpf: remove is_return in struct 
bpf_session_run_ctx
config: i386-randconfig-r113-20250923 
(https://download.01.org/0day-ci/archive/20250923/[email protected]/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20250923/[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/bpf_trace.c:833:41: sparse: sparse: incorrect type in 
assignment (different address spaces) @@     expected void [noderef] __user 
*[addressable] [assigned] [usertype] sival_ptr @@     got void * @@
   kernel/trace/bpf_trace.c:833:41: sparse:     expected void [noderef] __user 
*[addressable] [assigned] [usertype] sival_ptr
   kernel/trace/bpf_trace.c:833:41: sparse:     got void *
>> kernel/trace/bpf_trace.c:3059:62: sparse: sparse: dubious: x | !y
   kernel/trace/bpf_trace.c:3512:52: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c:3526:56: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c:3540:52: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c:3547:56: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c:3555:52: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c:3563:56: sparse: sparse: cast removes address space 
'__user' of expression
   kernel/trace/bpf_trace.c: note: in included file (through 
include/linux/rbtree.h, include/linux/mm_types.h, include/linux/mmzone.h, ...):
   include/linux/rcupdate.h:869:9: sparse: sparse: context imbalance in 
'uprobe_prog_run' - unexpected unlock

vim +3059 kernel/trace/bpf_trace.c

  3050  
  3051  static int uprobe_prog_run(struct bpf_uprobe *uprobe,
  3052                             unsigned long entry_ip,
  3053                             struct pt_regs *regs,
  3054                             bool is_return, void *data)
  3055  {
  3056          struct bpf_uprobe_multi_link *link = uprobe->link;
  3057          struct bpf_uprobe_multi_run_ctx run_ctx = {
  3058                  .session_ctx = {
> 3059                          .data = (void *)((unsigned long)data | 
> !!is_return),
  3060                  },
  3061                  .entry_ip = entry_ip,
  3062                  .uprobe = uprobe,
  3063          };
  3064          struct bpf_prog *prog = link->link.prog;
  3065          bool sleepable = prog->sleepable;
  3066          struct bpf_run_ctx *old_run_ctx;
  3067          int err;
  3068  
  3069          if (link->task && !same_thread_group(current, link->task))
  3070                  return 0;
  3071  
  3072          if (sleepable)
  3073                  rcu_read_lock_trace();
  3074          else
  3075                  rcu_read_lock();
  3076  
  3077          migrate_disable();
  3078  
  3079          old_run_ctx = bpf_set_run_ctx(&run_ctx.session_ctx.run_ctx);
  3080          err = bpf_prog_run(link->link.prog, regs);
  3081          bpf_reset_run_ctx(old_run_ctx);
  3082  
  3083          migrate_enable();
  3084  
  3085          if (sleepable)
  3086                  rcu_read_unlock_trace();
  3087          else
  3088                  rcu_read_unlock();
  3089          return err;
  3090  }
  3091  

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

Reply via email to