All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Jason Wang <jasowang@redhat.com>,
	mst@redhat.com, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, kvm@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, geert@linux-m68k.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>
Cc: kbuild-all@lists.01.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, kvm@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, geert@linux-m68k.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Subject: Re: [PATCH] vhost: do not enable VHOST_MENU by default
Date: Wed, 15 Apr 2020 05:15:52 +0800	[thread overview]
Message-ID: <202004150530.wxnpDMSc%lkp@intel.com> (raw)
In-Reply-To: <20200414024438.19103-1-jasowang@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 13933 bytes --]

Hi Jason,

I love your patch! Yet something to improve:

[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-VHOST_MENU-by-default/20200414-110807
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-linux-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
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                                 ^~~~~~~~~~~~
         |                                 eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                               ^
   cc1: some warnings being treated as errors

vim +1577 drivers/vhost/vhost.c

feebcaeac79ad8 Jason Wang         2019-05-24  1493  
feebcaeac79ad8 Jason Wang         2019-05-24  1494  static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang         2019-05-24  1495  				     struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang         2019-05-24  1496  				     unsigned int ioctl,
feebcaeac79ad8 Jason Wang         2019-05-24  1497  				     void __user *argp)
feebcaeac79ad8 Jason Wang         2019-05-24  1498  {
feebcaeac79ad8 Jason Wang         2019-05-24  1499  	long r;
feebcaeac79ad8 Jason Wang         2019-05-24  1500  
feebcaeac79ad8 Jason Wang         2019-05-24  1501  	mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1502  
feebcaeac79ad8 Jason Wang         2019-05-24  1503  	switch (ioctl) {
feebcaeac79ad8 Jason Wang         2019-05-24  1504  	case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang         2019-05-24  1505  		r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1506  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1507  	case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang         2019-05-24  1508  		r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1509  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1510  	default:
feebcaeac79ad8 Jason Wang         2019-05-24  1511  		BUG();
feebcaeac79ad8 Jason Wang         2019-05-24  1512  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1513  
feebcaeac79ad8 Jason Wang         2019-05-24  1514  	mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1515  
feebcaeac79ad8 Jason Wang         2019-05-24  1516  	return r;
feebcaeac79ad8 Jason Wang         2019-05-24  1517  }
26b36604523f4a Sonny Rao          2018-03-14  1518  long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1519  {
cecb46f194460d Al Viro            2012-08-27  1520  	struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro            2012-08-27  1521  	bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1522  	struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1523  	u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1524  	struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1525  	struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1526  	struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1527  	u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1528  	long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1529  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1530  	r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1531  	if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1532  		return r;
0f3d9a17469d71 Krishna Kumar      2010-05-25  1533  	if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1534  		return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1535  
ff002269a4ee9c Jason Wang         2018-10-30  1536  	idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He           2013-04-27  1537  	vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1538  
feebcaeac79ad8 Jason Wang         2019-05-24  1539  	if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang         2019-05-24  1540  	    ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang         2019-05-24  1541  		return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1542  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1543  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1544  	mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1545  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1546  	switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1547  	case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1548  		/* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1549  		 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1550  		if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1551  			r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1552  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1553  		}
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1554  		if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1555  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1556  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1557  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1558  		if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1559  			r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1560  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1561  		}
8d65843c44269c Jason Wang         2017-07-27  1562  		vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1563  		/* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1564  		vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1565  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1566  	case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1567  		s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1568  		s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1569  		if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1570  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1571  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1572  	case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1573  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1574  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1575  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1576  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577  		eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1578  		if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1579  			r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1580  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1581  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1582  		if (eventfp != vq->kick) {
cecb46f194460d Al Viro            2012-08-27  1583  			pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro            2012-08-27  1584  			pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1585  		} else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1586  			filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1587  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1588  	case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1589  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1590  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1591  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1592  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1593  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers       2018-01-06  1594  		if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers       2018-01-06  1595  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1596  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1597  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1598  		swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1599  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1600  	case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1601  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1602  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1603  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1604  		}
09f332a589232f Eric Biggers       2018-01-06  1605  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers       2018-01-06  1606  		if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers       2018-01-06  1607  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1608  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1609  		}
09f332a589232f Eric Biggers       2018-01-06  1610  		swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1611  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1612  	case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1613  		r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1614  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1615  	case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1616  		r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1617  		break;
03088137246065 Jason Wang         2016-03-04  1618  	case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1619  		if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang         2016-03-04  1620  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1621  			break;
03088137246065 Jason Wang         2016-03-04  1622  		}
03088137246065 Jason Wang         2016-03-04  1623  		vq->busyloop_timeout = s.num;
03088137246065 Jason Wang         2016-03-04  1624  		break;
03088137246065 Jason Wang         2016-03-04  1625  	case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1626  		s.index = idx;
03088137246065 Jason Wang         2016-03-04  1627  		s.num = vq->busyloop_timeout;
03088137246065 Jason Wang         2016-03-04  1628  		if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang         2016-03-04  1629  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1630  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1631  	default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1632  		r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1633  	}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1634  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1635  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1636  		vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1637  
e050c7d93f4adb Eric Biggers       2018-01-06  1638  	if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1639  		eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1640  	if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1641  		fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1642  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1643  	if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang         2013-01-28  1644  		r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1645  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1646  	mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1647  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1648  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1649  		vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1650  	return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1651  }
6ac1afbf6132df Asias He           2013-05-06  1652  EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1653  

:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: David S. Miller <davem@davemloft.net>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 27202 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: Jason Wang <jasowang@redhat.com>,
	mst@redhat.com, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, kvm@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, geert@linux-m68k.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>
Cc: kbuild-all@lists.01.org
Subject: Re: [PATCH] vhost: do not enable VHOST_MENU by default
Date: Wed, 15 Apr 2020 05:15:52 +0800	[thread overview]
Message-ID: <202004150530.wxnpDMSc%lkp@intel.com> (raw)
In-Reply-To: <20200414024438.19103-1-jasowang@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 13933 bytes --]

Hi Jason,

I love your patch! Yet something to improve:

[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-VHOST_MENU-by-default/20200414-110807
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-linux-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
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                                 ^~~~~~~~~~~~
         |                                 eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                               ^
   cc1: some warnings being treated as errors

vim +1577 drivers/vhost/vhost.c

feebcaeac79ad8 Jason Wang         2019-05-24  1493  
feebcaeac79ad8 Jason Wang         2019-05-24  1494  static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang         2019-05-24  1495  				     struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang         2019-05-24  1496  				     unsigned int ioctl,
feebcaeac79ad8 Jason Wang         2019-05-24  1497  				     void __user *argp)
feebcaeac79ad8 Jason Wang         2019-05-24  1498  {
feebcaeac79ad8 Jason Wang         2019-05-24  1499  	long r;
feebcaeac79ad8 Jason Wang         2019-05-24  1500  
feebcaeac79ad8 Jason Wang         2019-05-24  1501  	mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1502  
feebcaeac79ad8 Jason Wang         2019-05-24  1503  	switch (ioctl) {
feebcaeac79ad8 Jason Wang         2019-05-24  1504  	case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang         2019-05-24  1505  		r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1506  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1507  	case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang         2019-05-24  1508  		r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1509  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1510  	default:
feebcaeac79ad8 Jason Wang         2019-05-24  1511  		BUG();
feebcaeac79ad8 Jason Wang         2019-05-24  1512  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1513  
feebcaeac79ad8 Jason Wang         2019-05-24  1514  	mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1515  
feebcaeac79ad8 Jason Wang         2019-05-24  1516  	return r;
feebcaeac79ad8 Jason Wang         2019-05-24  1517  }
26b36604523f4a Sonny Rao          2018-03-14  1518  long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1519  {
cecb46f194460d Al Viro            2012-08-27  1520  	struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro            2012-08-27  1521  	bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1522  	struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1523  	u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1524  	struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1525  	struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1526  	struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1527  	u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1528  	long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1529  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1530  	r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1531  	if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1532  		return r;
0f3d9a17469d71 Krishna Kumar      2010-05-25  1533  	if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1534  		return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1535  
ff002269a4ee9c Jason Wang         2018-10-30  1536  	idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He           2013-04-27  1537  	vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1538  
feebcaeac79ad8 Jason Wang         2019-05-24  1539  	if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang         2019-05-24  1540  	    ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang         2019-05-24  1541  		return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1542  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1543  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1544  	mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1545  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1546  	switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1547  	case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1548  		/* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1549  		 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1550  		if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1551  			r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1552  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1553  		}
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1554  		if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1555  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1556  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1557  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1558  		if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1559  			r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1560  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1561  		}
8d65843c44269c Jason Wang         2017-07-27  1562  		vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1563  		/* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1564  		vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1565  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1566  	case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1567  		s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1568  		s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1569  		if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1570  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1571  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1572  	case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1573  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1574  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1575  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1576  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577  		eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1578  		if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1579  			r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1580  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1581  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1582  		if (eventfp != vq->kick) {
cecb46f194460d Al Viro            2012-08-27  1583  			pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro            2012-08-27  1584  			pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1585  		} else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1586  			filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1587  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1588  	case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1589  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1590  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1591  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1592  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1593  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers       2018-01-06  1594  		if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers       2018-01-06  1595  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1596  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1597  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1598  		swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1599  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1600  	case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1601  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1602  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1603  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1604  		}
09f332a589232f Eric Biggers       2018-01-06  1605  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers       2018-01-06  1606  		if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers       2018-01-06  1607  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1608  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1609  		}
09f332a589232f Eric Biggers       2018-01-06  1610  		swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1611  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1612  	case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1613  		r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1614  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1615  	case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1616  		r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1617  		break;
03088137246065 Jason Wang         2016-03-04  1618  	case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1619  		if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang         2016-03-04  1620  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1621  			break;
03088137246065 Jason Wang         2016-03-04  1622  		}
03088137246065 Jason Wang         2016-03-04  1623  		vq->busyloop_timeout = s.num;
03088137246065 Jason Wang         2016-03-04  1624  		break;
03088137246065 Jason Wang         2016-03-04  1625  	case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1626  		s.index = idx;
03088137246065 Jason Wang         2016-03-04  1627  		s.num = vq->busyloop_timeout;
03088137246065 Jason Wang         2016-03-04  1628  		if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang         2016-03-04  1629  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1630  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1631  	default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1632  		r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1633  	}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1634  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1635  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1636  		vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1637  
e050c7d93f4adb Eric Biggers       2018-01-06  1638  	if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1639  		eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1640  	if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1641  		fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1642  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1643  	if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang         2013-01-28  1644  		r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1645  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1646  	mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1647  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1648  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1649  		vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1650  	return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1651  }
6ac1afbf6132df Asias He           2013-05-06  1652  EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1653  

:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: David S. Miller <davem@davemloft.net>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 27202 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: Jason Wang <jasowang@redhat.com>,
	mst@redhat.com, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-s390@vger.kernel.org, kvm@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, geert@linux-m68k.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>
Cc: linux-s390@vger.kernel.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	kbuild-all@lists.01.org, kvm@vger.kernel.org,
	netdev@vger.kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, geert@linux-m68k.org,
	virtualization@lists.linux-foundation.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH] vhost: do not enable VHOST_MENU by default
Date: Wed, 15 Apr 2020 05:15:52 +0800	[thread overview]
Message-ID: <202004150530.wxnpDMSc%lkp@intel.com> (raw)
In-Reply-To: <20200414024438.19103-1-jasowang@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 13933 bytes --]

Hi Jason,

I love your patch! Yet something to improve:

[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-VHOST_MENU-by-default/20200414-110807
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-linux-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
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                                 ^~~~~~~~~~~~
         |                                 eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                               ^
   cc1: some warnings being treated as errors

vim +1577 drivers/vhost/vhost.c

feebcaeac79ad8 Jason Wang         2019-05-24  1493  
feebcaeac79ad8 Jason Wang         2019-05-24  1494  static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang         2019-05-24  1495  				     struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang         2019-05-24  1496  				     unsigned int ioctl,
feebcaeac79ad8 Jason Wang         2019-05-24  1497  				     void __user *argp)
feebcaeac79ad8 Jason Wang         2019-05-24  1498  {
feebcaeac79ad8 Jason Wang         2019-05-24  1499  	long r;
feebcaeac79ad8 Jason Wang         2019-05-24  1500  
feebcaeac79ad8 Jason Wang         2019-05-24  1501  	mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1502  
feebcaeac79ad8 Jason Wang         2019-05-24  1503  	switch (ioctl) {
feebcaeac79ad8 Jason Wang         2019-05-24  1504  	case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang         2019-05-24  1505  		r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1506  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1507  	case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang         2019-05-24  1508  		r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1509  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1510  	default:
feebcaeac79ad8 Jason Wang         2019-05-24  1511  		BUG();
feebcaeac79ad8 Jason Wang         2019-05-24  1512  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1513  
feebcaeac79ad8 Jason Wang         2019-05-24  1514  	mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1515  
feebcaeac79ad8 Jason Wang         2019-05-24  1516  	return r;
feebcaeac79ad8 Jason Wang         2019-05-24  1517  }
26b36604523f4a Sonny Rao          2018-03-14  1518  long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1519  {
cecb46f194460d Al Viro            2012-08-27  1520  	struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro            2012-08-27  1521  	bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1522  	struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1523  	u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1524  	struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1525  	struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1526  	struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1527  	u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1528  	long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1529  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1530  	r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1531  	if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1532  		return r;
0f3d9a17469d71 Krishna Kumar      2010-05-25  1533  	if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1534  		return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1535  
ff002269a4ee9c Jason Wang         2018-10-30  1536  	idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He           2013-04-27  1537  	vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1538  
feebcaeac79ad8 Jason Wang         2019-05-24  1539  	if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang         2019-05-24  1540  	    ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang         2019-05-24  1541  		return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1542  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1543  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1544  	mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1545  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1546  	switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1547  	case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1548  		/* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1549  		 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1550  		if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1551  			r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1552  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1553  		}
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1554  		if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1555  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1556  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1557  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1558  		if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1559  			r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1560  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1561  		}
8d65843c44269c Jason Wang         2017-07-27  1562  		vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1563  		/* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1564  		vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1565  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1566  	case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1567  		s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1568  		s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1569  		if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1570  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1571  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1572  	case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1573  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1574  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1575  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1576  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577  		eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1578  		if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1579  			r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1580  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1581  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1582  		if (eventfp != vq->kick) {
cecb46f194460d Al Viro            2012-08-27  1583  			pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro            2012-08-27  1584  			pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1585  		} else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1586  			filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1587  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1588  	case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1589  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1590  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1591  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1592  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1593  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers       2018-01-06  1594  		if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers       2018-01-06  1595  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1596  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1597  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1598  		swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1599  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1600  	case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1601  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1602  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1603  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1604  		}
09f332a589232f Eric Biggers       2018-01-06  1605  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers       2018-01-06  1606  		if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers       2018-01-06  1607  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1608  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1609  		}
09f332a589232f Eric Biggers       2018-01-06  1610  		swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1611  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1612  	case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1613  		r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1614  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1615  	case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1616  		r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1617  		break;
03088137246065 Jason Wang         2016-03-04  1618  	case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1619  		if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang         2016-03-04  1620  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1621  			break;
03088137246065 Jason Wang         2016-03-04  1622  		}
03088137246065 Jason Wang         2016-03-04  1623  		vq->busyloop_timeout = s.num;
03088137246065 Jason Wang         2016-03-04  1624  		break;
03088137246065 Jason Wang         2016-03-04  1625  	case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1626  		s.index = idx;
03088137246065 Jason Wang         2016-03-04  1627  		s.num = vq->busyloop_timeout;
03088137246065 Jason Wang         2016-03-04  1628  		if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang         2016-03-04  1629  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1630  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1631  	default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1632  		r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1633  	}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1634  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1635  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1636  		vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1637  
e050c7d93f4adb Eric Biggers       2018-01-06  1638  	if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1639  		eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1640  	if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1641  		fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1642  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1643  	if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang         2013-01-28  1644  		r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1645  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1646  	mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1647  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1648  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1649  		vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1650  	return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1651  }
6ac1afbf6132df Asias He           2013-05-06  1652  EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1653  

:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: David S. Miller <davem@davemloft.net>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 27202 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: Jason Wang <jasowang@redhat.com>,
	mst@redhat.com, Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>
Cc: linux-s390@vger.kernel.org,
	Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
	kbuild-all@lists.01.org, kvm@vger.kernel.org,
	netdev@vger.kernel.org, linux-mips@vger.kernel.org,
	linux-kernel@vger.kernel.org, geert@linux-m68k.org,
	virtualization@lists.linux-foundation.org,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH] vhost: do not enable VHOST_MENU by default
Date: Wed, 15 Apr 2020 05:15:52 +0800	[thread overview]
Message-ID: <202004150530.wxnpDMSc%lkp@intel.com> (raw)
In-Reply-To: <20200414024438.19103-1-jasowang@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 13933 bytes --]

Hi Jason,

I love your patch! Yet something to improve:

[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-VHOST_MENU-by-default/20200414-110807
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-linux-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
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                                 ^~~~~~~~~~~~
         |                                 eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                               ^
   cc1: some warnings being treated as errors

vim +1577 drivers/vhost/vhost.c

feebcaeac79ad8 Jason Wang         2019-05-24  1493  
feebcaeac79ad8 Jason Wang         2019-05-24  1494  static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang         2019-05-24  1495  				     struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang         2019-05-24  1496  				     unsigned int ioctl,
feebcaeac79ad8 Jason Wang         2019-05-24  1497  				     void __user *argp)
feebcaeac79ad8 Jason Wang         2019-05-24  1498  {
feebcaeac79ad8 Jason Wang         2019-05-24  1499  	long r;
feebcaeac79ad8 Jason Wang         2019-05-24  1500  
feebcaeac79ad8 Jason Wang         2019-05-24  1501  	mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1502  
feebcaeac79ad8 Jason Wang         2019-05-24  1503  	switch (ioctl) {
feebcaeac79ad8 Jason Wang         2019-05-24  1504  	case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang         2019-05-24  1505  		r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1506  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1507  	case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang         2019-05-24  1508  		r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1509  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1510  	default:
feebcaeac79ad8 Jason Wang         2019-05-24  1511  		BUG();
feebcaeac79ad8 Jason Wang         2019-05-24  1512  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1513  
feebcaeac79ad8 Jason Wang         2019-05-24  1514  	mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1515  
feebcaeac79ad8 Jason Wang         2019-05-24  1516  	return r;
feebcaeac79ad8 Jason Wang         2019-05-24  1517  }
26b36604523f4a Sonny Rao          2018-03-14  1518  long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1519  {
cecb46f194460d Al Viro            2012-08-27  1520  	struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro            2012-08-27  1521  	bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1522  	struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1523  	u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1524  	struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1525  	struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1526  	struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1527  	u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1528  	long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1529  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1530  	r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1531  	if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1532  		return r;
0f3d9a17469d71 Krishna Kumar      2010-05-25  1533  	if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1534  		return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1535  
ff002269a4ee9c Jason Wang         2018-10-30  1536  	idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He           2013-04-27  1537  	vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1538  
feebcaeac79ad8 Jason Wang         2019-05-24  1539  	if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang         2019-05-24  1540  	    ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang         2019-05-24  1541  		return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1542  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1543  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1544  	mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1545  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1546  	switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1547  	case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1548  		/* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1549  		 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1550  		if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1551  			r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1552  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1553  		}
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1554  		if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1555  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1556  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1557  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1558  		if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1559  			r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1560  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1561  		}
8d65843c44269c Jason Wang         2017-07-27  1562  		vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1563  		/* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1564  		vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1565  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1566  	case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1567  		s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1568  		s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1569  		if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1570  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1571  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1572  	case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1573  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1574  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1575  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1576  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577  		eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1578  		if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1579  			r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1580  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1581  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1582  		if (eventfp != vq->kick) {
cecb46f194460d Al Viro            2012-08-27  1583  			pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro            2012-08-27  1584  			pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1585  		} else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1586  			filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1587  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1588  	case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1589  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1590  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1591  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1592  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1593  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers       2018-01-06  1594  		if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers       2018-01-06  1595  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1596  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1597  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1598  		swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1599  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1600  	case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1601  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1602  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1603  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1604  		}
09f332a589232f Eric Biggers       2018-01-06  1605  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers       2018-01-06  1606  		if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers       2018-01-06  1607  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1608  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1609  		}
09f332a589232f Eric Biggers       2018-01-06  1610  		swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1611  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1612  	case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1613  		r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1614  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1615  	case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1616  		r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1617  		break;
03088137246065 Jason Wang         2016-03-04  1618  	case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1619  		if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang         2016-03-04  1620  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1621  			break;
03088137246065 Jason Wang         2016-03-04  1622  		}
03088137246065 Jason Wang         2016-03-04  1623  		vq->busyloop_timeout = s.num;
03088137246065 Jason Wang         2016-03-04  1624  		break;
03088137246065 Jason Wang         2016-03-04  1625  	case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1626  		s.index = idx;
03088137246065 Jason Wang         2016-03-04  1627  		s.num = vq->busyloop_timeout;
03088137246065 Jason Wang         2016-03-04  1628  		if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang         2016-03-04  1629  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1630  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1631  	default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1632  		r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1633  	}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1634  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1635  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1636  		vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1637  
e050c7d93f4adb Eric Biggers       2018-01-06  1638  	if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1639  		eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1640  	if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1641  		fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1642  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1643  	if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang         2013-01-28  1644  		r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1645  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1646  	mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1647  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1648  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1649  		vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1650  	return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1651  }
6ac1afbf6132df Asias He           2013-05-06  1652  EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1653  

:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: David S. Miller <davem@davemloft.net>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 27202 bytes --]

[-- Attachment #3: Type: text/plain, Size: 183 bytes --]

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH] vhost: do not enable VHOST_MENU by default
Date: Wed, 15 Apr 2020 05:15:52 +0800	[thread overview]
Message-ID: <202004150530.wxnpDMSc%lkp@intel.com> (raw)
In-Reply-To: <20200414024438.19103-1-jasowang@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 14144 bytes --]

Hi Jason,

I love your patch! Yet something to improve:

[auto build test ERROR on vhost/linux-next]
[also build test ERROR on next-20200414]
[cannot apply to powerpc/next s390/features v5.7-rc1]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Jason-Wang/vhost-do-not-enable-VHOST_MENU-by-default/20200414-110807
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git linux-next
config: ia64-randconfig-a001-20200415 (attached as .config)
compiler: ia64-linux-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
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=ia64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

   drivers/vhost/vhost.c: In function 'vhost_vring_ioctl':
>> drivers/vhost/vhost.c:1577:33: error: implicit declaration of function 'eventfd_fget'; did you mean 'eventfd_signal'? [-Werror=implicit-function-declaration]
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                                 ^~~~~~~~~~~~
         |                                 eventfd_signal
>> drivers/vhost/vhost.c:1577:31: warning: pointer/integer type mismatch in conditional expression
    1577 |   eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
         |                               ^
   cc1: some warnings being treated as errors

vim +1577 drivers/vhost/vhost.c

feebcaeac79ad8 Jason Wang         2019-05-24  1493  
feebcaeac79ad8 Jason Wang         2019-05-24  1494  static long vhost_vring_set_num_addr(struct vhost_dev *d,
feebcaeac79ad8 Jason Wang         2019-05-24  1495  				     struct vhost_virtqueue *vq,
feebcaeac79ad8 Jason Wang         2019-05-24  1496  				     unsigned int ioctl,
feebcaeac79ad8 Jason Wang         2019-05-24  1497  				     void __user *argp)
feebcaeac79ad8 Jason Wang         2019-05-24  1498  {
feebcaeac79ad8 Jason Wang         2019-05-24  1499  	long r;
feebcaeac79ad8 Jason Wang         2019-05-24  1500  
feebcaeac79ad8 Jason Wang         2019-05-24  1501  	mutex_lock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1502  
feebcaeac79ad8 Jason Wang         2019-05-24  1503  	switch (ioctl) {
feebcaeac79ad8 Jason Wang         2019-05-24  1504  	case VHOST_SET_VRING_NUM:
feebcaeac79ad8 Jason Wang         2019-05-24  1505  		r = vhost_vring_set_num(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1506  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1507  	case VHOST_SET_VRING_ADDR:
feebcaeac79ad8 Jason Wang         2019-05-24  1508  		r = vhost_vring_set_addr(d, vq, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1509  		break;
feebcaeac79ad8 Jason Wang         2019-05-24  1510  	default:
feebcaeac79ad8 Jason Wang         2019-05-24  1511  		BUG();
feebcaeac79ad8 Jason Wang         2019-05-24  1512  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1513  
feebcaeac79ad8 Jason Wang         2019-05-24  1514  	mutex_unlock(&vq->mutex);
feebcaeac79ad8 Jason Wang         2019-05-24  1515  
feebcaeac79ad8 Jason Wang         2019-05-24  1516  	return r;
feebcaeac79ad8 Jason Wang         2019-05-24  1517  }
26b36604523f4a Sonny Rao          2018-03-14  1518  long vhost_vring_ioctl(struct vhost_dev *d, unsigned int ioctl, void __user *argp)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1519  {
cecb46f194460d Al Viro            2012-08-27  1520  	struct file *eventfp, *filep = NULL;
cecb46f194460d Al Viro            2012-08-27  1521  	bool pollstart = false, pollstop = false;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1522  	struct eventfd_ctx *ctx = NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1523  	u32 __user *idxp = argp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1524  	struct vhost_virtqueue *vq;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1525  	struct vhost_vring_state s;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1526  	struct vhost_vring_file f;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1527  	u32 idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1528  	long r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1529  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1530  	r = get_user(idx, idxp);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1531  	if (r < 0)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1532  		return r;
0f3d9a17469d71 Krishna Kumar      2010-05-25  1533  	if (idx >= d->nvqs)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1534  		return -ENOBUFS;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1535  
ff002269a4ee9c Jason Wang         2018-10-30  1536  	idx = array_index_nospec(idx, d->nvqs);
3ab2e420ec1caf Asias He           2013-04-27  1537  	vq = d->vqs[idx];
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1538  
feebcaeac79ad8 Jason Wang         2019-05-24  1539  	if (ioctl == VHOST_SET_VRING_NUM ||
feebcaeac79ad8 Jason Wang         2019-05-24  1540  	    ioctl == VHOST_SET_VRING_ADDR) {
feebcaeac79ad8 Jason Wang         2019-05-24  1541  		return vhost_vring_set_num_addr(d, vq, ioctl, argp);
feebcaeac79ad8 Jason Wang         2019-05-24  1542  	}
feebcaeac79ad8 Jason Wang         2019-05-24  1543  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1544  	mutex_lock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1545  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1546  	switch (ioctl) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1547  	case VHOST_SET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1548  		/* Moving base with an active backend?
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1549  		 * You don't want to do that. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1550  		if (vq->private_data) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1551  			r = -EBUSY;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1552  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1553  		}
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1554  		if (copy_from_user(&s, argp, sizeof s)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1555  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1556  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1557  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1558  		if (s.num > 0xffff) {
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1559  			r = -EINVAL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1560  			break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1561  		}
8d65843c44269c Jason Wang         2017-07-27  1562  		vq->last_avail_idx = s.num;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1563  		/* Forget the cached index value. */
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1564  		vq->avail_idx = vq->last_avail_idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1565  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1566  	case VHOST_GET_VRING_BASE:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1567  		s.index = idx;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1568  		s.num = vq->last_avail_idx;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1569  		if (copy_to_user(argp, &s, sizeof s))
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1570  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1571  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1572  	case VHOST_SET_VRING_KICK:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1573  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1574  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1575  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1576  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14 @1577  		eventfp = f.fd == -1 ? NULL : eventfd_fget(f.fd);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1578  		if (IS_ERR(eventfp)) {
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1579  			r = PTR_ERR(eventfp);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1580  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1581  		}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1582  		if (eventfp != vq->kick) {
cecb46f194460d Al Viro            2012-08-27  1583  			pollstop = (filep = vq->kick) != NULL;
cecb46f194460d Al Viro            2012-08-27  1584  			pollstart = (vq->kick = eventfp) != NULL;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1585  		} else
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1586  			filep = eventfp;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1587  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1588  	case VHOST_SET_VRING_CALL:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1589  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1590  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1591  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1592  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1593  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
e050c7d93f4adb Eric Biggers       2018-01-06  1594  		if (IS_ERR(ctx)) {
e050c7d93f4adb Eric Biggers       2018-01-06  1595  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1596  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1597  		}
e050c7d93f4adb Eric Biggers       2018-01-06  1598  		swap(ctx, vq->call_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1599  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1600  	case VHOST_SET_VRING_ERR:
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1601  		if (copy_from_user(&f, argp, sizeof f)) {
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1602  			r = -EFAULT;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1603  			break;
7ad9c9d2704854 Takuya Yoshikawa   2010-05-27  1604  		}
09f332a589232f Eric Biggers       2018-01-06  1605  		ctx = f.fd == -1 ? NULL : eventfd_ctx_fdget(f.fd);
09f332a589232f Eric Biggers       2018-01-06  1606  		if (IS_ERR(ctx)) {
09f332a589232f Eric Biggers       2018-01-06  1607  			r = PTR_ERR(ctx);
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1608  			break;
535297a6ae4c3b Michael S. Tsirkin 2010-03-17  1609  		}
09f332a589232f Eric Biggers       2018-01-06  1610  		swap(ctx, vq->error_ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1611  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1612  	case VHOST_SET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1613  		r = vhost_set_vring_endian(vq, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1614  		break;
2751c9882b9472 Greg Kurz          2015-04-24  1615  	case VHOST_GET_VRING_ENDIAN:
2751c9882b9472 Greg Kurz          2015-04-24  1616  		r = vhost_get_vring_endian(vq, idx, argp);
2751c9882b9472 Greg Kurz          2015-04-24  1617  		break;
03088137246065 Jason Wang         2016-03-04  1618  	case VHOST_SET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1619  		if (copy_from_user(&s, argp, sizeof(s))) {
03088137246065 Jason Wang         2016-03-04  1620  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1621  			break;
03088137246065 Jason Wang         2016-03-04  1622  		}
03088137246065 Jason Wang         2016-03-04  1623  		vq->busyloop_timeout = s.num;
03088137246065 Jason Wang         2016-03-04  1624  		break;
03088137246065 Jason Wang         2016-03-04  1625  	case VHOST_GET_VRING_BUSYLOOP_TIMEOUT:
03088137246065 Jason Wang         2016-03-04  1626  		s.index = idx;
03088137246065 Jason Wang         2016-03-04  1627  		s.num = vq->busyloop_timeout;
03088137246065 Jason Wang         2016-03-04  1628  		if (copy_to_user(argp, &s, sizeof(s)))
03088137246065 Jason Wang         2016-03-04  1629  			r = -EFAULT;
03088137246065 Jason Wang         2016-03-04  1630  		break;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1631  	default:
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1632  		r = -ENOIOCTLCMD;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1633  	}
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1634  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1635  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1636  		vhost_poll_stop(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1637  
e050c7d93f4adb Eric Biggers       2018-01-06  1638  	if (!IS_ERR_OR_NULL(ctx))
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1639  		eventfd_ctx_put(ctx);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1640  	if (filep)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1641  		fput(filep);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1642  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1643  	if (pollstart && vq->handle_kick)
2b8b328b61c799 Jason Wang         2013-01-28  1644  		r = vhost_poll_start(&vq->poll, vq->kick);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1645  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1646  	mutex_unlock(&vq->mutex);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1647  
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1648  	if (pollstop && vq->handle_kick)
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1649  		vhost_poll_flush(&vq->poll);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1650  	return r;
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1651  }
6ac1afbf6132df Asias He           2013-05-06  1652  EXPORT_SYMBOL_GPL(vhost_vring_ioctl);
3a4d5c94e95935 Michael S. Tsirkin 2010-01-14  1653  

:::::: The code at line 1577 was first introduced by commit
:::::: 3a4d5c94e959359ece6d6b55045c3f046677f55c vhost_net: a kernel-level virtio server

:::::: TO: Michael S. Tsirkin <mst@redhat.com>
:::::: CC: David S. Miller <davem@davemloft.net>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 27202 bytes --]

  parent reply	other threads:[~2020-04-14 21:33 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-14  2:44 [PATCH] vhost: do not enable VHOST_MENU by default Jason Wang
2020-04-14  2:44 ` Jason Wang
2020-04-14  5:54 ` Michael Ellerman
2020-04-14  5:54   ` Michael Ellerman
2020-04-14  5:54   ` Michael Ellerman
2020-04-14  7:26 ` Christian Borntraeger
2020-04-14  7:26   ` Christian Borntraeger
2020-04-14  9:48   ` Jason Wang
2020-04-14  9:48     ` Jason Wang
2020-04-14 11:52 ` Thomas Bogendoerfer
2020-04-14 11:52   ` Thomas Bogendoerfer
2020-04-14 21:15 ` kbuild test robot [this message]
2020-04-14 21:15   ` kbuild test robot
2020-04-14 21:15   ` kbuild test robot
2020-04-14 21:15   ` kbuild test robot
2020-04-14 21:15   ` kbuild test robot
2020-04-15  2:40   ` Jason Wang
2020-04-15  2:40     ` Jason Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202004150530.wxnpDMSc%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=benh@kernel.crashing.org \
    --cc=borntraeger@de.ibm.com \
    --cc=geert@linux-m68k.org \
    --cc=gor@linux.ibm.com \
    --cc=heiko.carstens@de.ibm.com \
    --cc=jasowang@redhat.com \
    --cc=kbuild-all@lists.01.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=paulus@samba.org \
    --cc=tsbogend@alpha.franken.de \
    --cc=virtualization@lists.linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.