All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/gpu/drm/virtio/virtgpu_kms.c:220 virtio_gpu_init() error: uninitialized symbol 'virtio_cread_v'.
@ 2023-10-31  3:50 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-10-31  3:50 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Dmitry Osipenko <dmitry.osipenko@collabora.com>
CC: Gerd Hoffmann <kraxel@redhat.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   14ab6d425e80674b6a0145f05719b11e82e64824
commit: b5c9ed70d1a94c59dad7b1ecfc928863c0fe6ac0 drm/virtio: Improve DMA API usage for shmem BOs
date:   1 year, 3 months ago
:::::: branch date: 8 hours ago
:::::: commit date: 1 year, 3 months ago
config: x86_64-randconfig-005-20230915 (https://download.01.org/0day-ci/archive/20231031/202310311103.xmemiQpP-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce: (https://download.01.org/0day-ci/archive/20231031/202310311103.xmemiQpP-lkp@intel.com/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 <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202310311103.xmemiQpP-lkp@intel.com/

New smatch warnings:
drivers/gpu/drm/virtio/virtgpu_kms.c:220 virtio_gpu_init() error: uninitialized symbol 'virtio_cread_v'.

Old smatch warnings:
drivers/gpu/drm/virtio/virtgpu_kms.c:42 virtio_gpu_config_changed_work_func() error: uninitialized symbol 'virtio_cread_v'.
drivers/gpu/drm/virtio/virtgpu_kms.c:231 virtio_gpu_init() error: uninitialized symbol 'virtio_cread_v'.

vim +/virtio_cread_v +220 drivers/gpu/drm/virtio/virtgpu_kms.c

62fb7a5e10962a Gerd Hoffmann      2014-10-28  112  
b5c9ed70d1a94c Dmitry Osipenko    2022-06-30  113  int virtio_gpu_init(struct virtio_device *vdev, struct drm_device *dev)
dc5698e80cf724 Dave Airlie        2013-09-09  114  {
dc5698e80cf724 Dave Airlie        2013-09-09  115  	static vq_callback_t *callbacks[] = {
dc5698e80cf724 Dave Airlie        2013-09-09  116  		virtio_gpu_ctrl_ack, virtio_gpu_cursor_ack
dc5698e80cf724 Dave Airlie        2013-09-09  117  	};
f7ad26ff952b3c Stefan Hajnoczi    2015-12-17  118  	static const char * const names[] = { "control", "cursor" };
dc5698e80cf724 Dave Airlie        2013-09-09  119  
dc5698e80cf724 Dave Airlie        2013-09-09  120  	struct virtio_gpu_device *vgdev;
dc5698e80cf724 Dave Airlie        2013-09-09  121  	/* this will expand later */
dc5698e80cf724 Dave Airlie        2013-09-09  122  	struct virtqueue *vqs[2];
62fb7a5e10962a Gerd Hoffmann      2014-10-28  123  	u32 num_scanouts, num_capsets;
1fb97413a3f754 Gurchetan Singh    2020-09-02  124  	int ret = 0;
dc5698e80cf724 Dave Airlie        2013-09-09  125  
b5c9ed70d1a94c Dmitry Osipenko    2022-06-30  126  	if (!virtio_has_feature(vdev, VIRTIO_F_VERSION_1))
dc5698e80cf724 Dave Airlie        2013-09-09  127  		return -ENODEV;
dc5698e80cf724 Dave Airlie        2013-09-09  128  
dc5698e80cf724 Dave Airlie        2013-09-09  129  	vgdev = kzalloc(sizeof(struct virtio_gpu_device), GFP_KERNEL);
dc5698e80cf724 Dave Airlie        2013-09-09  130  	if (!vgdev)
dc5698e80cf724 Dave Airlie        2013-09-09  131  		return -ENOMEM;
dc5698e80cf724 Dave Airlie        2013-09-09  132  
dc5698e80cf724 Dave Airlie        2013-09-09  133  	vgdev->ddev = dev;
dc5698e80cf724 Dave Airlie        2013-09-09  134  	dev->dev_private = vgdev;
b5c9ed70d1a94c Dmitry Osipenko    2022-06-30  135  	vgdev->vdev = vdev;
dc5698e80cf724 Dave Airlie        2013-09-09  136  
dc5698e80cf724 Dave Airlie        2013-09-09  137  	spin_lock_init(&vgdev->display_info_lock);
c84adb304c100c David Stevens      2020-08-18  138  	spin_lock_init(&vgdev->resource_export_lock);
16845c5d540929 Gerd Hoffmann      2020-09-23  139  	spin_lock_init(&vgdev->host_visible_lock);
1938d1ae32fefa Matthew Wilcox     2018-09-26  140  	ida_init(&vgdev->ctx_id_ida);
1938d1ae32fefa Matthew Wilcox     2018-09-26  141  	ida_init(&vgdev->resource_ida);
dc5698e80cf724 Dave Airlie        2013-09-09  142  	init_waitqueue_head(&vgdev->resp_wq);
dc5698e80cf724 Dave Airlie        2013-09-09  143  	virtio_gpu_init_vq(&vgdev->ctrlq, virtio_gpu_dequeue_ctrl_func);
dc5698e80cf724 Dave Airlie        2013-09-09  144  	virtio_gpu_init_vq(&vgdev->cursorq, virtio_gpu_dequeue_cursor_func);
dc5698e80cf724 Dave Airlie        2013-09-09  145  
f54d1867005c33 Chris Wilson       2016-10-25  146  	vgdev->fence_drv.context = dma_fence_context_alloc(1);
dc5698e80cf724 Dave Airlie        2013-09-09  147  	spin_lock_init(&vgdev->fence_drv.lock);
dc5698e80cf724 Dave Airlie        2013-09-09  148  	INIT_LIST_HEAD(&vgdev->fence_drv.fences);
62fb7a5e10962a Gerd Hoffmann      2014-10-28  149  	INIT_LIST_HEAD(&vgdev->cap_cache);
dc5698e80cf724 Dave Airlie        2013-09-09  150  	INIT_WORK(&vgdev->config_changed_work,
dc5698e80cf724 Dave Airlie        2013-09-09  151  		  virtio_gpu_config_changed_work_func);
dc5698e80cf724 Dave Airlie        2013-09-09  152  
f0c6cef7e7174b Gerd Hoffmann      2019-08-30  153  	INIT_WORK(&vgdev->obj_free_work,
f0c6cef7e7174b Gerd Hoffmann      2019-08-30  154  		  virtio_gpu_array_put_free_work);
f0c6cef7e7174b Gerd Hoffmann      2019-08-30  155  	INIT_LIST_HEAD(&vgdev->obj_free_list);
f0c6cef7e7174b Gerd Hoffmann      2019-08-30  156  	spin_lock_init(&vgdev->obj_free_lock);
f0c6cef7e7174b Gerd Hoffmann      2019-08-30  157  
ff2ac58a45914c Laurent Vivier     2017-01-24  158  #ifdef __LITTLE_ENDIAN
62fb7a5e10962a Gerd Hoffmann      2014-10-28  159  	if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_VIRGL))
62fb7a5e10962a Gerd Hoffmann      2014-10-28  160  		vgdev->has_virgl_3d = true;
ff2ac58a45914c Laurent Vivier     2017-01-24  161  #endif
b4b01b4995fb15 Gerd Hoffmann      2018-10-30  162  	if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_EDID)) {
b4b01b4995fb15 Gerd Hoffmann      2018-10-30  163  		vgdev->has_edid = true;
b4b01b4995fb15 Gerd Hoffmann      2018-10-30  164  	}
5edbb56082567d Gerd Hoffmann      2020-02-07  165  	if (virtio_has_feature(vgdev->vdev, VIRTIO_RING_F_INDIRECT_DESC)) {
5edbb56082567d Gerd Hoffmann      2020-02-07  166  		vgdev->has_indirect = true;
5edbb56082567d Gerd Hoffmann      2020-02-07  167  	}
c84adb304c100c David Stevens      2020-08-18  168  	if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_RESOURCE_UUID)) {
c84adb304c100c David Stevens      2020-08-18  169  		vgdev->has_resource_assign_uuid = true;
c84adb304c100c David Stevens      2020-08-18  170  	}
6815cfe602d03d Gerd Hoffmann      2020-09-23  171  	if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_RESOURCE_BLOB)) {
6815cfe602d03d Gerd Hoffmann      2020-09-23  172  		vgdev->has_resource_blob = true;
6815cfe602d03d Gerd Hoffmann      2020-09-23  173  	}
6076a9711dc535 Gerd Hoffmann      2020-09-23  174  	if (virtio_get_shm_region(vgdev->vdev, &vgdev->host_visible_region,
6076a9711dc535 Gerd Hoffmann      2020-09-23  175  				  VIRTIO_GPU_SHM_ID_HOST_VISIBLE)) {
6076a9711dc535 Gerd Hoffmann      2020-09-23  176  		if (!devm_request_mem_region(&vgdev->vdev->dev,
6076a9711dc535 Gerd Hoffmann      2020-09-23  177  					     vgdev->host_visible_region.addr,
6076a9711dc535 Gerd Hoffmann      2020-09-23  178  					     vgdev->host_visible_region.len,
6076a9711dc535 Gerd Hoffmann      2020-09-23  179  					     dev_name(&vgdev->vdev->dev))) {
6076a9711dc535 Gerd Hoffmann      2020-09-23  180  			DRM_ERROR("Could not reserve host visible region\n");
eb988a2ee500d3 Dan Carpenter      2021-02-03  181  			ret = -EBUSY;
6076a9711dc535 Gerd Hoffmann      2020-09-23  182  			goto err_vqs;
6076a9711dc535 Gerd Hoffmann      2020-09-23  183  		}
6076a9711dc535 Gerd Hoffmann      2020-09-23  184  
6076a9711dc535 Gerd Hoffmann      2020-09-23  185  		DRM_INFO("Host memory window: 0x%lx +0x%lx\n",
6076a9711dc535 Gerd Hoffmann      2020-09-23  186  			 (unsigned long)vgdev->host_visible_region.addr,
6076a9711dc535 Gerd Hoffmann      2020-09-23  187  			 (unsigned long)vgdev->host_visible_region.len);
6076a9711dc535 Gerd Hoffmann      2020-09-23  188  		vgdev->has_host_visible = true;
16845c5d540929 Gerd Hoffmann      2020-09-23  189  		drm_mm_init(&vgdev->host_visible_mm,
16845c5d540929 Gerd Hoffmann      2020-09-23  190  			    (unsigned long)vgdev->host_visible_region.addr,
16845c5d540929 Gerd Hoffmann      2020-09-23  191  			    (unsigned long)vgdev->host_visible_region.len);
6076a9711dc535 Gerd Hoffmann      2020-09-23  192  	}
6198770a1fe019 Anthoine Bourgeois 2021-09-21  193  	if (virtio_has_feature(vgdev->vdev, VIRTIO_GPU_F_CONTEXT_INIT)) {
6198770a1fe019 Anthoine Bourgeois 2021-09-21  194  		vgdev->has_context_init = true;
6198770a1fe019 Anthoine Bourgeois 2021-09-21  195  	}
62fb7a5e10962a Gerd Hoffmann      2014-10-28  196  
6198770a1fe019 Anthoine Bourgeois 2021-09-21  197  	DRM_INFO("features: %cvirgl %cedid %cresource_blob %chost_visible",
9e370dfec4fee8 Gerd Hoffmann      2019-10-18  198  		 vgdev->has_virgl_3d    ? '+' : '-',
6815cfe602d03d Gerd Hoffmann      2020-09-23  199  		 vgdev->has_edid        ? '+' : '-',
6076a9711dc535 Gerd Hoffmann      2020-09-23  200  		 vgdev->has_resource_blob ? '+' : '-',
6076a9711dc535 Gerd Hoffmann      2020-09-23  201  		 vgdev->has_host_visible ? '+' : '-');
9e370dfec4fee8 Gerd Hoffmann      2019-10-18  202  
6198770a1fe019 Anthoine Bourgeois 2021-09-21  203  	DRM_INFO("features: %ccontext_init\n",
6198770a1fe019 Anthoine Bourgeois 2021-09-21  204  		 vgdev->has_context_init ? '+' : '-');
6198770a1fe019 Anthoine Bourgeois 2021-09-21  205  
9b2bbdb2275884 Michael S. Tsirkin 2017-03-06  206  	ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL);
dc5698e80cf724 Dave Airlie        2013-09-09  207  	if (ret) {
dc5698e80cf724 Dave Airlie        2013-09-09  208  		DRM_ERROR("failed to find virt queues\n");
dc5698e80cf724 Dave Airlie        2013-09-09  209  		goto err_vqs;
dc5698e80cf724 Dave Airlie        2013-09-09  210  	}
dc5698e80cf724 Dave Airlie        2013-09-09  211  	vgdev->ctrlq.vq = vqs[0];
dc5698e80cf724 Dave Airlie        2013-09-09  212  	vgdev->cursorq.vq = vqs[1];
dc5698e80cf724 Dave Airlie        2013-09-09  213  	ret = virtio_gpu_alloc_vbufs(vgdev);
dc5698e80cf724 Dave Airlie        2013-09-09  214  	if (ret) {
dc5698e80cf724 Dave Airlie        2013-09-09  215  		DRM_ERROR("failed to alloc vbufs\n");
dc5698e80cf724 Dave Airlie        2013-09-09  216  		goto err_vbufs;
dc5698e80cf724 Dave Airlie        2013-09-09  217  	}
dc5698e80cf724 Dave Airlie        2013-09-09  218  
dc5698e80cf724 Dave Airlie        2013-09-09  219  	/* get display info */
115a71d8045d85 Michael S. Tsirkin 2020-08-05 @220  	virtio_cread_le(vgdev->vdev, struct virtio_gpu_config,
dc5698e80cf724 Dave Airlie        2013-09-09  221  			num_scanouts, &num_scanouts);
dc5698e80cf724 Dave Airlie        2013-09-09  222  	vgdev->num_scanouts = min_t(uint32_t, num_scanouts,
dc5698e80cf724 Dave Airlie        2013-09-09  223  				    VIRTIO_GPU_MAX_SCANOUTS);
dc5698e80cf724 Dave Airlie        2013-09-09  224  	if (!vgdev->num_scanouts) {
dc5698e80cf724 Dave Airlie        2013-09-09  225  		DRM_ERROR("num_scanouts is zero\n");
dc5698e80cf724 Dave Airlie        2013-09-09  226  		ret = -EINVAL;
dc5698e80cf724 Dave Airlie        2013-09-09  227  		goto err_scanouts;
dc5698e80cf724 Dave Airlie        2013-09-09  228  	}
62fb7a5e10962a Gerd Hoffmann      2014-10-28  229  	DRM_INFO("number of scanouts: %d\n", num_scanouts);
62fb7a5e10962a Gerd Hoffmann      2014-10-28  230  
115a71d8045d85 Michael S. Tsirkin 2020-08-05  231  	virtio_cread_le(vgdev->vdev, struct virtio_gpu_config,
62fb7a5e10962a Gerd Hoffmann      2014-10-28  232  			num_capsets, &num_capsets);
62fb7a5e10962a Gerd Hoffmann      2014-10-28  233  	DRM_INFO("number of cap sets: %d\n", num_capsets);
dc5698e80cf724 Dave Airlie        2013-09-09  234  
d6005d3dde75f7 Gerd Hoffmann      2020-09-08  235  	ret = virtio_gpu_modeset_init(vgdev);
d6005d3dde75f7 Gerd Hoffmann      2020-09-08  236  	if (ret) {
d6005d3dde75f7 Gerd Hoffmann      2020-09-08  237  		DRM_ERROR("modeset init failed\n");
d6005d3dde75f7 Gerd Hoffmann      2020-09-08  238  		goto err_scanouts;
d6005d3dde75f7 Gerd Hoffmann      2020-09-08  239  	}
dc5698e80cf724 Dave Airlie        2013-09-09  240  
dc5698e80cf724 Dave Airlie        2013-09-09  241  	virtio_device_ready(vgdev->vdev);
dc5698e80cf724 Dave Airlie        2013-09-09  242  
62fb7a5e10962a Gerd Hoffmann      2014-10-28  243  	if (num_capsets)
62fb7a5e10962a Gerd Hoffmann      2014-10-28  244  		virtio_gpu_get_capsets(vgdev, num_capsets);
b4b01b4995fb15 Gerd Hoffmann      2018-10-30  245  	if (vgdev->has_edid)
b4b01b4995fb15 Gerd Hoffmann      2018-10-30  246  		virtio_gpu_cmd_get_edids(vgdev);
441012aff674c8 Dave Airlie        2015-06-16  247  	virtio_gpu_cmd_get_display_info(vgdev);
234489ea55f81a Gerd Hoffmann      2020-02-14  248  	virtio_gpu_notify(vgdev);
441012aff674c8 Dave Airlie        2015-06-16  249  	wait_event_timeout(vgdev->resp_wq, !vgdev->display_info_pending,
441012aff674c8 Dave Airlie        2015-06-16  250  			   5 * HZ);
dc5698e80cf724 Dave Airlie        2013-09-09  251  	return 0;
dc5698e80cf724 Dave Airlie        2013-09-09  252  
dc5698e80cf724 Dave Airlie        2013-09-09  253  err_scanouts:
dc5698e80cf724 Dave Airlie        2013-09-09  254  	virtio_gpu_free_vbufs(vgdev);
dc5698e80cf724 Dave Airlie        2013-09-09  255  err_vbufs:
dc5698e80cf724 Dave Airlie        2013-09-09  256  	vgdev->vdev->config->del_vqs(vgdev->vdev);
dc5698e80cf724 Dave Airlie        2013-09-09  257  err_vqs:
cec7f1774605a5 Xie Yongji         2021-05-17  258  	dev->dev_private = NULL;
dc5698e80cf724 Dave Airlie        2013-09-09  259  	kfree(vgdev);
dc5698e80cf724 Dave Airlie        2013-09-09  260  	return ret;
dc5698e80cf724 Dave Airlie        2013-09-09  261  }
dc5698e80cf724 Dave Airlie        2013-09-09  262  

:::::: The code at line 220 was first introduced by commit
:::::: 115a71d8045d8571fb05df45088837621510ba57 drm/virtio: convert to LE accessors

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: Michael S. Tsirkin <mst@redhat.com>

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-10-31  3:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-31  3:50 drivers/gpu/drm/virtio/virtgpu_kms.c:220 virtio_gpu_init() error: uninitialized symbol 'virtio_cread_v' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.