kernel/trace/bpf_trace.c:3619:52: sparse: sparse: cast removes address space '__user' of expression

From: kernel test robot

Date: Tue Jan 13 2026 - 04:17:48 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b71e635feefc852405b14620a7fc58c4c80c0f73
commit: a498ee7576de24b4b0916ce56cf2686e261a29f7 bpf: Implement dynptr copy kfuncs
date: 8 months ago
config: i386-randconfig-063-20260113 (https://download.01.org/0day-ci/archive/20260113/202601131740.6C3BdBaB-lkp@xxxxxxxxx/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/20260113/202601131740.6C3BdBaB-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/202601131740.6C3BdBaB-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
kernel/trace/bpf_trace.c:835: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:835:41: sparse: expected void [noderef] __user *[addressable] [assigned] [usertype] sival_ptr
kernel/trace/bpf_trace.c:835:41: sparse: got void *
>> kernel/trace/bpf_trace.c:3619:52: sparse: sparse: cast removes address space '__user' of expression
kernel/trace/bpf_trace.c:3633:56: sparse: sparse: cast removes address space '__user' of expression
kernel/trace/bpf_trace.c:3647:52: sparse: sparse: cast removes address space '__user' of expression
kernel/trace/bpf_trace.c:3654:56: sparse: sparse: cast removes address space '__user' of expression
kernel/trace/bpf_trace.c:3662:52: sparse: sparse: cast removes address space '__user' of expression
kernel/trace/bpf_trace.c:3670: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:871:25: sparse: sparse: context imbalance in 'uprobe_prog_run' - unexpected unlock

vim +/__user +3619 kernel/trace/bpf_trace.c

3615
3616 __bpf_kfunc int bpf_probe_read_user_dynptr(struct bpf_dynptr *dptr, u32 off,
3617 u32 size, const void __user *unsafe_ptr__ign)
3618 {
> 3619 return __bpf_dynptr_copy(dptr, off, size, (const void *)unsafe_ptr__ign,
3620 copy_user_data_nofault, NULL);
3621 }
3622

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