:::::: 
:::::: Manual check reason: "low confidence static check warning: 
block/bfq-cgroup.c:257:6: sparse:    void extern [addressable] [toplevel] 
bfqg_stats_update_io_add( ... )"
:::::: 

CC: kbuild-...@lists.01.org
BCC: l...@intel.com
CC: linux-ker...@vger.kernel.org
TO: Bart Van Assche <bvanass...@acm.org>

tree:   https://github.com/bvanassche/linux block-bitwise-opf
head:   031ccdd616b11c4e774e56aa7eae906188ab24cc
commit: 031ccdd616b11c4e774e56aa7eae906188ab24cc [15/15] block: Introduce the 
type blk_mq_opf_t
:::::: branch date: 3 days ago
:::::: commit date: 3 days ago
config: riscv-randconfig-s031-20220619 
(https://download.01.org/0day-ci/archive/20220620/202206200448.voh0zeej-...@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 11.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.4-30-g92122700-dirty
        # 
https://github.com/bvanassche/linux/commit/031ccdd616b11c4e774e56aa7eae906188ab24cc
        git remote add bvanassche https://github.com/bvanassche/linux
        git fetch --no-tags bvanassche block-bitwise-opf
        git checkout 031ccdd616b11c4e774e56aa7eae906188ab24cc
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=riscv 
SHELL=/bin/bash block/ drivers/md/ drivers/ufs/core/ fs/ext4/ fs/jfs/ 
fs/nilfs2/ fs/zonefs/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <l...@intel.com>


sparse warnings: (new ones prefixed by >>)
>> fs/ext4/page-io.c:400:51: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got int @@
   fs/ext4/page-io.c:400:51: sparse:     expected restricted blk_mq_opf_t 
[usertype] opf
   fs/ext4/page-io.c:400:51: sparse:     got int
--
>> fs/ext4/fast_commit.c:661:27: sparse: sparse: incorrect type in initializer 
>> (different base types) @@     expected int write_flags @@     got restricted 
>> blk_mq_opf_t [usertype] @@
   fs/ext4/fast_commit.c:661:27: sparse:     expected int write_flags
   fs/ext4/fast_commit.c:661:27: sparse:     got restricted blk_mq_opf_t 
[usertype]
>> fs/ext4/fast_commit.c:666:29: sparse: sparse: invalid assignment: |=
>> fs/ext4/fast_commit.c:666:29: sparse:    left side has type int
>> fs/ext4/fast_commit.c:666:29: sparse:    right side has type restricted 
>> blk_mq_opf_t
>> fs/ext4/fast_commit.c:671:33: sparse: sparse: incorrect type in argument 2 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] @@ 
>>     got int write_flags @@
   fs/ext4/fast_commit.c:671:33: sparse:     expected restricted blk_mq_opf_t 
[usertype]
   fs/ext4/fast_commit.c:671:33: sparse:     got int write_flags
--
>> fs/jfs/jfs_metapage.c:420:57: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got int @@
   fs/jfs/jfs_metapage.c:420:57: sparse:     expected restricted blk_mq_opf_t 
[usertype] opf
   fs/jfs/jfs_metapage.c:420:57: sparse:     got int
--
>> fs/jfs/jfs_logmgr.c:2116:54: sparse: sparse: restricted blk_mq_opf_t 
>> degrades to integer
>> fs/jfs/jfs_logmgr.c:2116:52: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got unsigned int @@
   fs/jfs/jfs_logmgr.c:2116:52: sparse:     expected restricted blk_mq_opf_t 
[usertype] opf
   fs/jfs/jfs_logmgr.c:2116:52: sparse:     got unsigned int
--
>> fs/nilfs2/btnode.c:106:26: sparse: sparse: restricted blk_mq_opf_t degrades 
>> to integer
>> fs/nilfs2/btnode.c:125:25: sparse: sparse: incorrect type in argument 2 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] @@ 
>>     got int mode_flags @@
   fs/nilfs2/btnode.c:125:25: sparse:     expected restricted blk_mq_opf_t 
[usertype]
   fs/nilfs2/btnode.c:125:25: sparse:     got int mode_flags
--
>> fs/nilfs2/mdt.c:129:26: sparse: sparse: restricted blk_mq_opf_t degrades to 
>> integer
>> fs/nilfs2/mdt.c:151:25: sparse: sparse: incorrect type in argument 2 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] @@ 
>>     got int mode_flags @@
   fs/nilfs2/mdt.c:151:25: sparse:     expected restricted blk_mq_opf_t 
[usertype]
   fs/nilfs2/mdt.c:151:25: sparse:     got int mode_flags
>> fs/nilfs2/mdt.c:186:54: sparse: sparse: incorrect type in argument 4 
>> (different base types) @@     expected int mode_flags @@     got restricted 
>> blk_mq_opf_t [usertype] @@
   fs/nilfs2/mdt.c:186:54: sparse:     expected int mode_flags
   fs/nilfs2/mdt.c:186:54: sparse:     got restricted blk_mq_opf_t [usertype]
--
>> fs/nilfs2/btree.c:498:70: sparse: sparse: incorrect type in argument 5 
>> (different base types) @@     expected int @@     got restricted 
>> blk_mq_opf_t [usertype] @@
   fs/nilfs2/btree.c:498:70: sparse:     expected int
   fs/nilfs2/btree.c:498:70: sparse:     got restricted blk_mq_opf_t [usertype]
--
>> fs/nilfs2/segbuf.c:377:37: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got int @@
   fs/nilfs2/segbuf.c:377:37: sparse:     expected restricted blk_mq_opf_t 
[usertype] opf
   fs/nilfs2/segbuf.c:377:37: sparse:     got int
--
>> fs/zonefs/super.c:779:46: sparse: sparse: restricted blk_mq_opf_t degrades 
>> to integer
   fs/zonefs/super.c:779:57: sparse: sparse: restricted blk_mq_opf_t degrades 
to integer
>> fs/zonefs/super.c:779:55: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got unsigned int @@
   fs/zonefs/super.c:779:55: sparse:     expected restricted blk_mq_opf_t 
[usertype] opf
   fs/zonefs/super.c:779:55: sparse:     got unsigned int
--
   block/bfq-cgroup.c:257:6: sparse: sparse: symbol 'bfqg_stats_update_io_add' 
redeclared with different type (incompatible argument 3 (different base types)):
>> block/bfq-cgroup.c:257:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_add( ... )
   block/bfq-cgroup.c: note: in included file:
   block/bfq-iosched.h:996:6: sparse: note: previously declared as:
>> block/bfq-iosched.h:996:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_add( ... )
   block/bfq-cgroup.c:259:6: sparse: sparse: symbol 
'bfqg_stats_update_io_remove' redeclared with different type (incompatible 
argument 2 (different base types)):
>> block/bfq-cgroup.c:259:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_remove( ... )
   block/bfq-iosched.h:998:6: sparse: note: previously declared as:
>> block/bfq-iosched.h:998:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_remove( ... )
   block/bfq-cgroup.c:260:6: sparse: sparse: symbol 
'bfqg_stats_update_io_merged' redeclared with different type (incompatible 
argument 2 (different base types)):
>> block/bfq-cgroup.c:260:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_merged( ... )
   block/bfq-iosched.h:999:6: sparse: note: previously declared as:
>> block/bfq-iosched.h:999:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_io_merged( ... )
   block/bfq-cgroup.c:261:6: sparse: sparse: symbol 
'bfqg_stats_update_completion' redeclared with different type (incompatible 
argument 4 (different base types)):
>> block/bfq-cgroup.c:261:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_completion( ... )
   block/bfq-iosched.h:1000:6: sparse: note: previously declared as:
>> block/bfq-iosched.h:1000:6: sparse:    void extern [addressable] [toplevel] 
>> bfqg_stats_update_completion( ... )
--
>> block/blk-iocost.c:2772:30: sparse: sparse: restricted blk_mq_opf_t degrades 
>> to integer
   block/blk-iocost.c:733:9: sparse: sparse: context imbalance in 'iocg_lock' - 
wrong count at exit
   block/blk-iocost.c:744:28: sparse: sparse: context imbalance in 
'iocg_unlock' - unexpected unlock
--
>> block/bfq-iosched.c:2600:59: sparse: sparse: incorrect type in argument 2 
>> (different base types) @@     expected unsigned int op @@     got restricted 
>> blk_mq_opf_t [usertype] cmd_flags @@
   block/bfq-iosched.c:2600:59: sparse:     expected unsigned int op
   block/bfq-iosched.c:2600:59: sparse:     got restricted blk_mq_opf_t 
[usertype] cmd_flags
   block/bfq-iosched.c:2607:57: sparse: sparse: incorrect type in argument 2 
(different base types) @@     expected unsigned int op @@     got restricted 
blk_mq_opf_t [usertype] cmd_flags @@
   block/bfq-iosched.c:2607:57: sparse:     expected unsigned int op
   block/bfq-iosched.c:2607:57: sparse:     got restricted blk_mq_opf_t 
[usertype] cmd_flags
   block/bfq-iosched.c:6564:48: sparse: sparse: incorrect type in argument 4 
(different base types) @@     expected unsigned int op @@     got restricted 
blk_mq_opf_t [usertype] cmd_flags @@
   block/bfq-iosched.c:6564:48: sparse:     expected unsigned int op
   block/bfq-iosched.c:6564:48: sparse:     got restricted blk_mq_opf_t 
[usertype] cmd_flags
--
   drivers/md/raid10.c:1946:37: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1946:37: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1946:37: sparse:    struct md_rdev *
   drivers/md/raid10.c:4919:33: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:4919:33: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:4919:33: sparse:    struct md_rdev *
   drivers/md/raid10.c:4922:33: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:4922:33: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:4922:33: sparse:    struct md_rdev *
   drivers/md/raid10.c:5011:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:5011:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:5011:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:5014:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:5014:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:5014:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:759:24: sparse: sparse: incompatible types in comparison 
expression (different address spaces):
   drivers/md/raid10.c:759:24: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:759:24: sparse:    struct md_rdev *
   drivers/md/raid10.c:762:32: sparse: sparse: incompatible types in comparison 
expression (different address spaces):
   drivers/md/raid10.c:762:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:762:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:1165:28: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1165:28: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1165:28: sparse:    struct md_rdev *
   drivers/md/raid10.c:1303:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1303:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1303:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:1304:41: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1304:41: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1304:41: sparse:    struct md_rdev *
   drivers/md/raid10.c:1434:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1434:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1434:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:1435:41: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1435:41: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1435:41: sparse:    struct md_rdev *
   drivers/md/raid10.c:1744:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1744:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1744:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:1745:41: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1745:41: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1745:41: sparse:    struct md_rdev *
   drivers/md/raid10.c:1913:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:1913:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:1913:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:2142:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:2142:25: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:2142:25: sparse:    struct md_rdev *
   drivers/md/raid10.c:2156:17: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:2156:17: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:2156:17: sparse:    struct md_rdev *
>> drivers/md/raid10.c:2424:62: sparse: sparse: incorrect type in argument 3 
>> (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> opf @@     got int @@
   drivers/md/raid10.c:2716:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:2716:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:2716:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:2769:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:2769:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:2769:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:2803:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:2803:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:2803:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:3313:49: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3313:49: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3313:49: sparse:    struct md_rdev *
   drivers/md/raid10.c:3388:33: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3388:33: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3388:33: sparse:    struct md_rdev *
   drivers/md/raid10.c:3389:36: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3389:36: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3389:36: sparse:    struct md_rdev *
   drivers/md/raid10.c:3459:56: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3459:56: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3459:56: sparse:    struct md_rdev *
   drivers/md/raid10.c:3476:41: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3476:41: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3476:41: sparse:    struct md_rdev *
   drivers/md/raid10.c:3679:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3679:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3679:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:3709:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:3709:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:3709:32: sparse:    struct md_rdev *
   drivers/md/raid10.c:4452:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:4452:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:4452:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:4468:40: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:4468:40: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:4468:40: sparse:    struct md_rdev *
   drivers/md/raid10.c:5096:48: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:5096:48: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:5096:48: sparse:    struct md_rdev *
   drivers/md/raid10.c:5192:48: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:5192:48: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:5192:48: sparse:    struct md_rdev *
   drivers/md/raid10.c:5195:32: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   drivers/md/raid10.c:5195:32: sparse:    struct md_rdev [noderef] __rcu *
   drivers/md/raid10.c:5195:32: sparse:    struct md_rdev *
--
>> drivers/ufs/core/ufshpb.c:82:30: sparse: sparse: incorrect type in argument 
>> 1 (different base types) @@     expected restricted blk_mq_opf_t [usertype] 
>> op @@     got unsigned int enum req_op @@
   drivers/ufs/core/ufshpb.c:82:30: sparse:     expected restricted 
blk_mq_opf_t [usertype] op
   drivers/ufs/core/ufshpb.c:82:30: sparse:     got unsigned int enum req_op

vim +257 block/bfq-cgroup.c

a33801e8b4735b Luca Miccio     2017-11-13  256  
a33801e8b4735b Luca Miccio     2017-11-13 @257  void 
bfqg_stats_update_io_add(struct bfq_group *bfqg, struct bfq_queue *bfqq,
031ccdd616b11c Bart Van Assche 2022-06-16  258                                
blk_mq_opf_t op) { }
031ccdd616b11c Bart Van Assche 2022-06-16 @259  void 
bfqg_stats_update_io_remove(struct bfq_group *bfqg, blk_mq_opf_t op) { }
031ccdd616b11c Bart Van Assche 2022-06-16 @260  void 
bfqg_stats_update_io_merged(struct bfq_group *bfqg, blk_mq_opf_t op) { }
84c7afcebed913 Omar Sandoval   2018-05-09 @261  void 
bfqg_stats_update_completion(struct bfq_group *bfqg, u64 start_time_ns,
031ccdd616b11c Bart Van Assche 2022-06-16  262                                  
  u64 io_start_time_ns, blk_mq_opf_t op) { }
a33801e8b4735b Luca Miccio     2017-11-13  263  void 
bfqg_stats_update_dequeue(struct bfq_group *bfqg) { }
a33801e8b4735b Luca Miccio     2017-11-13  264  void 
bfqg_stats_set_start_empty_time(struct bfq_group *bfqg) { }
a33801e8b4735b Luca Miccio     2017-11-13  265  void 
bfqg_stats_update_idle_time(struct bfq_group *bfqg) { }
a33801e8b4735b Luca Miccio     2017-11-13  266  void 
bfqg_stats_set_start_idle_time(struct bfq_group *bfqg) { }
a33801e8b4735b Luca Miccio     2017-11-13  267  void 
bfqg_stats_update_avg_queue_size(struct bfq_group *bfqg) { }
a33801e8b4735b Luca Miccio     2017-11-13  268  

:::::: The code at line 257 was first introduced by commit
:::::: a33801e8b4735b8d473f963e5854172f9cde3e8b block, bfq: move debug blkio 
stats behind CONFIG_DEBUG_BLK_CGROUP

:::::: TO: Luca Miccio <lucmic...@gmail.com>
:::::: CC: Jens Axboe <ax...@kernel.dk>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp
_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to