[cel:nfsd-testing 110/222] fs/nfsd/nfs4xdr.c:4200:18: sparse: sparse: incorrect type in assignment (different base types)

kernel test robot <[email protected]> Fri, 31 Jul 2026 04:37:54 +0800
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux nfsd-testing
head:   67be65963a6470b667125cc648b56161ed3dfdce
commit: 4b64b811f368bcd98a5a11f7079f863db3a2e1c5 [110/222] nfsd: add notification handlers for dir events
config: m68k-randconfig-r122-20260730 (https://download.01.org/0day-ci/archive/20260731/[email protected]/config)
compiler: m68k-linux-gcc (GCC) 13.4.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260731/[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 >>)
>> fs/nfsd/nfs4xdr.c:4200:18: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] *attrmask @@     got restricted __be32 [usertype] * @@
   fs/nfsd/nfs4xdr.c:4200:18: sparse:     expected unsigned int [usertype] *attrmask
   fs/nfsd/nfs4xdr.c:4200:18: sparse:     got restricted __be32 [usertype] *

vim +4200 fs/nfsd/nfs4xdr.c

  4191	
  4192	static bool
  4193	nfsd4_setup_notify_entry4(struct notify_entry4 *ne, struct xdr_stream *xdr,
  4194				  struct dentry *dentry, struct nfs4_delegation *dp,
  4195				  struct nfsd_file *nf, char *name, u32 namelen)
  4196	{
  4197		uint32_t *attrmask;
  4198	
  4199		/* Reserve space for attrmask */
> 4200		attrmask = xdr_reserve_space(xdr, 3 * sizeof(uint32_t));
  4201		if (!attrmask)
  4202			return false;
  4203	
  4204		ne->ne_file.data = name;
  4205		ne->ne_file.len = namelen;
  4206		ne->ne_attrs.attrmask.element = attrmask;
  4207	
  4208		attrmask[0] = 0;
  4209		attrmask[1] = 0;
  4210		attrmask[2] = 0;
  4211		ne->ne_attrs.attr_vals.data = NULL;
  4212		ne->ne_attrs.attr_vals.len = 0;
  4213		ne->ne_attrs.attrmask.count = 1;
  4214		return true;
  4215	}
  4216	

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