[linux-next:master 3561/4499] fs/nfsd/nfs4proc.c:1411:24: sparse: sparse: incorrect type in assignment (different base types)
From: kernel test robot <hidden>
Date: 2021-05-22 16:46:20
Also in:
oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 8dca2cd055ffb78b37f52f0bf0bd20c249619c4d commit: ff78b94429268be1c7104f6c6bf7e51de1be91e0 [3561/4499] NFSD add vfs_fsync after async copy is done config: mips-randconfig-s031-20210522 (attached as .config) compiler: mips-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.3-341-g8af24329-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=ff78b94429268be1c7104f6c6bf7e51de1be91e0 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout ff78b94429268be1c7104f6c6bf7e51de1be91e0 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=mips If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <redacted> sparse warnings: (new ones prefixed by >>) command-line: note: in included file: builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQUIRE redefined builtin:0:0: sparse: this was the original definition builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_SEQ_CST redefined builtin:0:0: sparse: this was the original definition builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_ACQ_REL redefined builtin:0:0: sparse: this was the original definition builtin:1:9: sparse: sparse: preprocessor token __ATOMIC_RELEASE redefined builtin:0:0: sparse: this was the original definition
quoted
fs/nfsd/nfs4proc.c:1411:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be32 [usertype] status @@ got int @@
fs/nfsd/nfs4proc.c:1411:24: sparse: expected restricted __be32 [usertype] status
fs/nfsd/nfs4proc.c:1411:24: sparse: got int
vim +1411 fs/nfsd/nfs4proc.c
1383
1384 static ssize_t _nfsd_copy_file_range(struct nfsd4_copy *copy)
1385 {
1386 ssize_t bytes_copied = 0;
1387 u64 bytes_total = copy->cp_count;
1388 u64 src_pos = copy->cp_src_pos;
1389 u64 dst_pos = copy->cp_dst_pos;
1390 __be32 status;
1391
1392 /* See RFC 7862 p.67: */
1393 if (bytes_total == 0)
1394 bytes_total = ULLONG_MAX;
1395 do {
1396 if (kthread_should_stop())
1397 break;
1398 bytes_copied = nfsd_copy_file_range(copy->nf_src->nf_file,
1399 src_pos, copy->nf_dst->nf_file, dst_pos,
1400 bytes_total);
1401 if (bytes_copied <= 0)
1402 break;
1403 bytes_total -= bytes_copied;
1404 copy->cp_res.wr_bytes_written += bytes_copied;
1405 src_pos += bytes_copied;
1406 dst_pos += bytes_copied;
1407 } while (bytes_total > 0 && !copy->cp_synchronous);
1408 /* for a non-zero asynchronous copy do a commit of data */
1409 if (!copy->cp_synchronous && copy->cp_res.wr_bytes_written > 0) {
1410 down_write(©->nf_dst->nf_rwsem);1411 status = vfs_fsync_range(copy->nf_dst->nf_file,
1412 copy->cp_dst_pos, 1413 copy->cp_res.wr_bytes_written, 0); 1414 up_write(©->nf_dst->nf_rwsem); 1415 if (!status) 1416 copy->committed = true; 1417 } 1418 return bytes_copied; 1419 } 1420 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Attachments
- .config.gz [application/gzip] 41004 bytes