[intel-lts:6.18/linux 1/1] drivers/misc/mei/hw-virtio.c:704:9: sparse: sparse: no generic selection for 'unsigned int virtio_cread_v'

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild
Message-ID <[email protected]>
:::::: 
:::::: Manual check reason: "low confidence static check warning: drivers/misc/mei/hw-virtio.c:704:9: sparse: sparse: no generic selection for 'unsigned int virtio_cread_v'"
:::::: 

BCC: [email protected]
CC: [email protected]
TO: Alexander Usyskin <[email protected]>
CC: "sys_oak" <[email protected]>
CC: Wang Yu <[email protected]>
CC: Liu Shuo <[email protected]>

tree:   https://github.com/intel/linux-intel-lts.git 6.18/linux
head:   5100e1c74efeba843945492f8d5840e6166c0392
commit: e5479216aa5ef4d1d806c4ec9d7e7b6fded0dff1 [1/1] mei: virtio: virtualization frontend driver
:::::: branch date: 10 days ago
:::::: commit date: 6 months ago
config: x86_64-randconfig-r111-20260708 (https://download.01.org/0day-ci/archive/20260709/[email protected]/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260709/[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/r/[email protected]/

sparse warnings: (new ones prefixed by >>)
>> drivers/misc/mei/hw-virtio.c:704:9: sparse: sparse: no generic selection for 'unsigned int virtio_cread_v'
>> drivers/misc/mei/hw-virtio.c:704:9: sparse: sparse: incompatible types in comparison expression (different base types):
   drivers/misc/mei/hw-virtio.c:704:9: sparse:    bad type *
   drivers/misc/mei/hw-virtio.c:704:9: sparse:    unsigned int *
>> drivers/misc/mei/hw-virtio.c:704:9: sparse: sparse: no generic selection for 'unsigned int [addressable] virtio_cread_v'

vim +704 drivers/misc/mei/hw-virtio.c

e5479216aa5ef4d Alexander Usyskin 2020-08-18  686  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  687  static int mei_virtio_probe(struct virtio_device *vdev)
e5479216aa5ef4d Alexander Usyskin 2020-08-18  688  {
e5479216aa5ef4d Alexander Usyskin 2020-08-18  689  	struct mei_virtio_hw *hw;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  690  	int ret;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  691  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  692  	hw = devm_kzalloc(&vdev->dev, sizeof(*hw), GFP_KERNEL);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  693  	if (!hw)
e5479216aa5ef4d Alexander Usyskin 2020-08-18  694  		return -ENOMEM;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  695  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  696  	vdev->priv = hw;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  697  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  698  	INIT_WORK(&hw->intr_handler, mei_virtio_intr_handler);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  699  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  700  	ret = mei_virtio_init_vqs(hw, vdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  701  	if (ret)
e5479216aa5ef4d Alexander Usyskin 2020-08-18  702  		goto vqs_failed;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  703  
e5479216aa5ef4d Alexander Usyskin 2020-08-18 @704  	virtio_cread(vdev, struct mei_virtio_cfg,
e5479216aa5ef4d Alexander Usyskin 2020-08-18  705  		     buf_depth, &hw->cfg.buf_depth);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  706  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  707  	hw->recv_buf = kzalloc(mei_slots2data(hw->cfg.buf_depth), GFP_KERNEL);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  708  	if (!hw->recv_buf) {
e5479216aa5ef4d Alexander Usyskin 2020-08-18  709  		ret = -ENOMEM;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  710  		goto hbuf_failed;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  711  	}
e5479216aa5ef4d Alexander Usyskin 2020-08-18  712  	atomic_set(&hw->hbuf_ready, 0);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  713  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  714  	virtio_device_ready(vdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  715  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  716  	mei_device_init(&hw->mdev, &vdev->dev, false, &mei_virtio_ops);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  717  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  718  	pm_runtime_get_noresume(&vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  719  	pm_runtime_set_active(&vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  720  	pm_runtime_enable(&vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  721  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  722  	ret = mei_start(&hw->mdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  723  	if (ret)
e5479216aa5ef4d Alexander Usyskin 2020-08-18  724  		goto mei_start_failed;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  725  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  726  	pm_runtime_set_autosuspend_delay(&vdev->dev, MEI_VIRTIO_RPM_TIMEOUT);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  727  	pm_runtime_use_autosuspend(&vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  728  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  729  	ret = mei_register(&hw->mdev, &vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  730  	if (ret)
e5479216aa5ef4d Alexander Usyskin 2020-08-18  731  		goto mei_failed;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  732  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  733  	pm_runtime_put(&vdev->dev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  734  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  735  	return 0;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  736  
e5479216aa5ef4d Alexander Usyskin 2020-08-18  737  mei_failed:
e5479216aa5ef4d Alexander Usyskin 2020-08-18  738  	mei_stop(&hw->mdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  739  mei_start_failed:
e5479216aa5ef4d Alexander Usyskin 2020-08-18  740  	mei_cancel_work(&hw->mdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  741  	mei_disable_interrupts(&hw->mdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  742  	kfree(hw->recv_buf);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  743  hbuf_failed:
e5479216aa5ef4d Alexander Usyskin 2020-08-18  744  	vdev->config->del_vqs(vdev);
e5479216aa5ef4d Alexander Usyskin 2020-08-18  745  vqs_failed:
e5479216aa5ef4d Alexander Usyskin 2020-08-18  746  	return ret;
e5479216aa5ef4d Alexander Usyskin 2020-08-18  747  }
e5479216aa5ef4d Alexander Usyskin 2020-08-18  748  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.