Re: [PATCH] vhost/vsock: don't check owner in vhost_vsock_stop() while releasing

From: Dan Carpenter
Date: Tue Feb 22 2022 - 00:31:29 EST


Hi Stefano,

url: https://github.com/0day-ci/linux/commits/Stefano-Garzarella/vhost-vsock-don-t-check-owner-in-vhost_vsock_stop-while-releasing/20220221-195038
base: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: x86_64-randconfig-m031-20220221 (https://download.01.org/0day-ci/archive/20220222/202202220707.AM3rKUcP-lkp@xxxxxxxxx/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>
Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

smatch warnings:
drivers/vhost/vsock.c:655 vhost_vsock_stop() error: uninitialized symbol 'ret'.

vim +/ret +655 drivers/vhost/vsock.c

3ace84c91bfcde Stefano Garzarella 2022-02-21 632 static int vhost_vsock_stop(struct vhost_vsock *vsock, bool check_owner)
433fc58e6bf2c8 Asias He 2016-07-28 633 {
433fc58e6bf2c8 Asias He 2016-07-28 634 size_t i;
433fc58e6bf2c8 Asias He 2016-07-28 635 int ret;
433fc58e6bf2c8 Asias He 2016-07-28 636
433fc58e6bf2c8 Asias He 2016-07-28 637 mutex_lock(&vsock->dev.mutex);
433fc58e6bf2c8 Asias He 2016-07-28 638
3ace84c91bfcde Stefano Garzarella 2022-02-21 639 if (check_owner) {
433fc58e6bf2c8 Asias He 2016-07-28 640 ret = vhost_dev_check_owner(&vsock->dev);
433fc58e6bf2c8 Asias He 2016-07-28 641 if (ret)
433fc58e6bf2c8 Asias He 2016-07-28 642 goto err;
3ace84c91bfcde Stefano Garzarella 2022-02-21 643 }

"ret" not initialized on else path.

433fc58e6bf2c8 Asias He 2016-07-28 644
433fc58e6bf2c8 Asias He 2016-07-28 645 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) {
433fc58e6bf2c8 Asias He 2016-07-28 646 struct vhost_virtqueue *vq = &vsock->vqs[i];
433fc58e6bf2c8 Asias He 2016-07-28 647
433fc58e6bf2c8 Asias He 2016-07-28 648 mutex_lock(&vq->mutex);
247643f85782fc Eugenio Pérez 2020-03-31 649 vhost_vq_set_backend(vq, NULL);
433fc58e6bf2c8 Asias He 2016-07-28 650 mutex_unlock(&vq->mutex);
433fc58e6bf2c8 Asias He 2016-07-28 651 }
433fc58e6bf2c8 Asias He 2016-07-28 652
433fc58e6bf2c8 Asias He 2016-07-28 653 err:
433fc58e6bf2c8 Asias He 2016-07-28 654 mutex_unlock(&vsock->dev.mutex);
433fc58e6bf2c8 Asias He 2016-07-28 @655 return ret;
433fc58e6bf2c8 Asias He 2016-07-28 656 }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx