Re: [PATCH 3/3] vhost: device IOTLB API

From: kbuild test robot
Date: Wed Jun 22 2016 - 11:11:59 EST


Hi,

[auto build test ERROR on next-20160622]
[also build test ERROR on v4.7-rc4]
[cannot apply to vhost/linux-next v4.7-rc4 v4.7-rc3 v4.7-rc2]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url: https://github.com/0day-ci/linux/commits/Jason-Wang/basic-device-IOTLB-support/20160622-175522
config: i386-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

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

gcc-6: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
drivers/vhost/vhost.c: In function 'vhost_copy_to_user':
>> drivers/vhost/vhost.c:742:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
ret = translate_desc(vq, (u64)to, size, vq->iotlb_iov,
^
drivers/vhost/vhost.c: In function 'vhost_copy_from_user':
drivers/vhost/vhost.c:771:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
ret = translate_desc(vq, (u64)from, size, vq->iotlb_iov,
^
In file included from include/linux/printk.h:289:0,
from include/linux/kernel.h:13,
from include/linux/list.h:8,
from include/linux/wait.h:6,
from include/linux/eventfd.h:12,
from drivers/vhost/vhost.c:14:
drivers/vhost/vhost.c:777:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
(unsigned long long) from,
^
include/linux/dynamic_debug.h:127:10: note: in definition of macro 'dynamic_pr_debug'
##__VA_ARGS__); \
^~~~~~~~~~~
>> drivers/vhost/vhost.h:220:3: note: in expansion of macro 'pr_debug'
pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
^~~~~~~~
>> drivers/vhost/vhost.c:775:4: note: in expansion of macro 'vq_err'
vq_err(vq, "IOTLB translation failure: uaddr "
^~~~~~
drivers/vhost/vhost.c: In function '__vhost_get_user':
drivers/vhost/vhost.c:802:27: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
ret = translate_desc(vq, (u64)addr, size, vq->iotlb_iov,
^
In file included from include/linux/printk.h:289:0,
from include/linux/kernel.h:13,
from include/linux/list.h:8,
from include/linux/wait.h:6,
from include/linux/eventfd.h:12,
from drivers/vhost/vhost.c:14:
drivers/vhost/vhost.c:808:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
(unsigned long long) addr,
^
include/linux/dynamic_debug.h:127:10: note: in definition of macro 'dynamic_pr_debug'
##__VA_ARGS__); \
^~~~~~~~~~~
>> drivers/vhost/vhost.h:220:3: note: in expansion of macro 'pr_debug'
pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
^~~~~~~~
drivers/vhost/vhost.c:806:3: note: in expansion of macro 'vq_err'
vq_err(vq, "IOTLB translation failure: uaddr "
^~~~~~
drivers/vhost/vhost.c:816:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
(unsigned long long) addr,
^
include/linux/dynamic_debug.h:127:10: note: in definition of macro 'dynamic_pr_debug'
##__VA_ARGS__); \
^~~~~~~~~~~
>> drivers/vhost/vhost.h:220:3: note: in expansion of macro 'pr_debug'
pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
^~~~~~~~
drivers/vhost/vhost.c:814:3: note: in expansion of macro 'vq_err'
vq_err(vq, "Non atomic userspace memory access: uaddr "
^~~~~~
drivers/vhost/vhost.c: In function 'vq_iotlb_prefetch':
drivers/vhost/vhost.c:1144:46: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
return iotlb_access_ok(vq, VHOST_ACCESS_RO, (u64)vq->desc,
^
drivers/vhost/vhost.c:1146:46: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
iotlb_access_ok(vq, VHOST_ACCESS_RO, (u64)vq->avail,
^
drivers/vhost/vhost.c:1149:46: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
iotlb_access_ok(vq, VHOST_ACCESS_WO, (u64)vq->used,
^
In file included from include/linux/printk.h:289:0,
from include/linux/kernel.h:13,
from include/linux/list.h:8,
from include/linux/wait.h:6,
from include/linux/eventfd.h:12,
from drivers/vhost/vhost.c:14:
drivers/vhost/vhost.c: In function 'vhost_vq_init_access':
drivers/vhost/vhost.c:1737:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
(unsigned long long) &vq->used->idx);
^
include/linux/dynamic_debug.h:127:10: note: in definition of macro 'dynamic_pr_debug'
##__VA_ARGS__); \
^~~~~~~~~~~
>> drivers/vhost/vhost.h:220:3: note: in expansion of macro 'pr_debug'
pr_debug(pr_fmt(fmt), ##__VA_ARGS__); \
^~~~~~~~
drivers/vhost/vhost.c:1736:3: note: in expansion of macro 'vq_err'
vq_err(vq, "Can't access used idx at 0x%llx\n",
^~~~~~
gcc-6: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
--
gcc-6: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
drivers/vhost/scsi.c: In function 'vhost_scsi_do_evt_work':
>> drivers/vhost/scsi.c:460:9: error: too few arguments to function 'vhost_get_vq_desc'
head = vhost_get_vq_desc(vq, vq->iov,
^~~~~~~~~~~~~~~~~
In file included from drivers/vhost/scsi.c:51:0:
drivers/vhost/vhost.h:181:5: note: declared here
int vhost_get_vq_desc(struct vhost_virtqueue *,
^~~~~~~~~~~~~~~~~
drivers/vhost/scsi.c: In function 'vhost_scsi_handle_vq':
drivers/vhost/scsi.c:867:10: error: too few arguments to function 'vhost_get_vq_desc'
head = vhost_get_vq_desc(vq, vq->iov,
^~~~~~~~~~~~~~~~~
In file included from drivers/vhost/scsi.c:51:0:
drivers/vhost/vhost.h:181:5: note: declared here
int vhost_get_vq_desc(struct vhost_virtqueue *,
^~~~~~~~~~~~~~~~~

vim +/vhost_get_vq_desc +460 drivers/vhost/scsi.c

a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 454 vs->vs_events_missed = true;
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 455 return;
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 456 }
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 457
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 458 again:
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 459 vhost_disable_notify(&vs->dev, vq);
47283bef drivers/vhost/scsi.c Michael S. Tsirkin 2014-06-05 @460 head = vhost_get_vq_desc(vq, vq->iov,
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 461 ARRAY_SIZE(vq->iov), &out, &in,
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 462 NULL, NULL);
a6c9af87 drivers/vhost/tcm_vhost.c Asias He 2013-04-25 463 if (head < 0) {

:::::: The code at line 460 was first introduced by commit
:::::: 47283bef7ed356629467d1fac61687756e48f254 vhost: move memory pointer to VQs

:::::: TO: Michael S. Tsirkin <mst@xxxxxxxxxx>
:::::: CC: Michael S. Tsirkin <mst@xxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: Binary data