tree:
https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/chromeos.git
chromeos-5.4__release/core54-58
head: d902f3439a0584cd838618b3b5ba473e5e2f1c14
commit: 6f9cff84dde800b4d9eab071810fbe284686601e [3323/9999] blktrace: Protect
q->blk_trace with RCU
config: arc-randconfig-s031-20200707 (attached as .config)
compiler: arc-elf-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.2-31-gabbfd661-dirty
git checkout 6f9cff84dde800b4d9eab071810fbe284686601e
# 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__' ARCH=arc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
> kernel/trace/blktrace.c:348:12: sparse: sparse: incorrect type in
assignment (different address spaces) @@ expected struct blk_trace *bt @@ got
struct blk_trace [noderef] <asn:4> *[assigned] old_val @@
kernel/trace/blktrace.c:348:12: sparse: expected struct blk_trace *bt
> kernel/trace/blktrace.c:348:12: sparse: got struct blk_trace
[noderef] <asn:4> *[assigned] old_val
kernel/trace/blktrace.c:1002:50:
sparse: sparse: incorrect type in argument 7 (different base types) @@ expected int
error @@ got restricted blk_status_t [usertype] bi_status @@
kernel/trace/blktrace.c:1002:50: sparse: expected int error
kernel/trace/blktrace.c:1002:50: sparse: got restricted blk_status_t [usertype]
bi_status
kernel/trace/blktrace.c:1040:68: sparse: sparse: incorrect type in argument 7
(different base types) @@ expected int error @@ got restricted blk_status_t
[usertype] bi_status @@
kernel/trace/blktrace.c:1040:68: sparse: expected int error
kernel/trace/blktrace.c:1040:68: sparse: got restricted blk_status_t [usertype]
bi_status
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1263:16: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1270:32: sparse: sparse: incorrect type in initializer
(different base types) @@ expected unsigned long long [usertype] sector_from @@
got restricted __be64 const [usertype] sector_from @@
kernel/trace/blktrace.c:1270:32: sparse: expected unsigned long long [usertype]
sector_from
kernel/trace/blktrace.c:1270:32: sparse: got restricted __be64 const [usertype]
sector_from
kernel/trace/blktrace.c:1272:24: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __be32 [usertype] device_from @@ got
unsigned int @@
kernel/trace/blktrace.c:1272:24: sparse: expected restricted __be32 [usertype]
device_from
kernel/trace/blktrace.c:1272:24: sparse: got unsigned int
kernel/trace/blktrace.c:1273:24: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __be32 [usertype] device_to @@ got
unsigned int @@
kernel/trace/blktrace.c:1273:24: sparse: expected restricted __be32 [usertype]
device_to
kernel/trace/blktrace.c:1273:24: sparse: got unsigned int
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:26: sparse: sparse: cast to restricted __be64
kernel/trace/blktrace.c:1274:24: sparse: sparse: incorrect type in assignment
(different base types) @@ expected restricted __be64 [usertype] sector_from @@ got
unsigned long long @@
kernel/trace/blktrace.c:1274:24: sparse: expected restricted __be64 [usertype]
sector_from
kernel/trace/blktrace.c:1274:24: sparse: got unsigned long long
kernel/trace/blktrace.c:1407:26: sparse: sparse: restricted __be32 degrades to integer
kernel/trace/blktrace.c:1407:48: sparse: sparse: restricted __be32 degrades to integer
kernel/trace/blktrace.c:1408:27: sparse: sparse: cast from restricted __be64
kernel/trace/blktrace.c:1632:12: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct blk_trace *bt @@ got struct
blk_trace [noderef] <asn:4> *[assigned] old_val @@
kernel/trace/blktrace.c:1632:12: sparse: expected struct blk_trace *bt
kernel/trace/blktrace.c:1632:12: sparse: got struct blk_trace [noderef]
<asn:4> *[assigned] old_val
vim +348 kernel/trace/blktrace.c
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 343
1f2cac107c591c kernel/trace/blktrace.c Jens Axboe 2017-11-05 344 static int
__blk_trace_remove(struct request_queue *q)
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 345 {
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 346 struct blk_trace *bt;
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 347
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 @348 bt =
xchg(&q->blk_trace, NULL);
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 349 if (!bt)
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 350 return -EINVAL;
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 351
5554720482a631 kernel/trace/blktrace.c Li Zefan 2009-03-25 352 if (bt->trace_state
!= Blktrace_running)
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 353
blk_trace_cleanup(bt);
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 354
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 355 return 0;
2056a782f8e7e6 block/blktrace.c Jens Axboe 2006-03-23 356 }
1f2cac107c591c kernel/trace/blktrace.c Jens Axboe 2017-11-05 357
:::::: The code at line 348 was first introduced by commit
:::::: 2056a782f8e7e65fd4bfd027506b4ce1c5e9ccd4 [PATCH] Block queue IO tracing support
(blktrace) as of 2006-03-23
:::::: TO: Jens Axboe <axboe(a)suse.de>
:::::: CC: Jens Axboe <axboe(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org