[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202004022145.AYvWRbkt%lkp@intel.com>
Date: Thu, 2 Apr 2020 21:50:09 +0800
From: kbuild test robot <lkp@...el.com>
To: "Michael S. Tsirkin" <mst@...hat.com>
Cc: kbuild-all@...ts.01.org, kvm@...r.kernel.org,
virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org
Subject: [vhost:vhost 22/22] drivers/vdpa/vdpa_sim/vdpa_sim.c:94:8: error:
implicit declaration of function 'vringh_init_iotlb'; did you mean
'vringh_init_kern'?
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git vhost
head: 076cb4adba3e2d7d3c25b72a1390b24ebfc58161
commit: 076cb4adba3e2d7d3c25b72a1390b24ebfc58161 [22/22] virtio/test: fix up after IOTLB changes
config: m68k-allmodconfig (attached as .config)
compiler: m68k-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
git checkout 076cb4adba3e2d7d3c25b72a1390b24ebfc58161
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
drivers/vdpa/vdpa_sim/vdpa_sim.c: In function 'vdpasim_queue_ready':
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:94:8: error: implicit declaration of function 'vringh_init_iotlb'; did you mean 'vringh_init_kern'? [-Werror=implicit-function-declaration]
94 | ret = vringh_init_iotlb(&vq->vring, vdpasim_features,
| ^~~~~~~~~~~~~~~~~
| vringh_init_kern
drivers/vdpa/vdpa_sim/vdpa_sim.c: In function 'vdpasim_work':
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:149:9: error: implicit declaration of function 'vringh_getdesc_iotlb'; did you mean 'vringh_getdesc_kern'? [-Werror=implicit-function-declaration]
149 | err = vringh_getdesc_iotlb(&txq->vring, &txq->iov, NULL,
| ^~~~~~~~~~~~~~~~~~~~
| vringh_getdesc_kern
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:157:4: error: implicit declaration of function 'vringh_complete_iotlb'; did you mean 'vringh_complete_kern'? [-Werror=implicit-function-declaration]
157 | vringh_complete_iotlb(&txq->vring, txq->head, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| vringh_complete_kern
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:162:11: error: implicit declaration of function 'vringh_iov_pull_iotlb'; did you mean 'vringh_iov_pull_kern'? [-Werror=implicit-function-declaration]
162 | read = vringh_iov_pull_iotlb(&txq->vring, &txq->iov,
| ^~~~~~~~~~~~~~~~~~~~~
| vringh_iov_pull_kern
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:168:12: error: implicit declaration of function 'vringh_iov_push_iotlb'; did you mean 'vringh_iov_push_kern'? [-Werror=implicit-function-declaration]
168 | write = vringh_iov_push_iotlb(&rxq->vring, &rxq->iov,
| ^~~~~~~~~~~~~~~~~~~~~
| vringh_iov_push_kern
drivers/vdpa/vdpa_sim/vdpa_sim.c: In function 'vdpasim_create':
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:339:2: error: implicit declaration of function 'vringh_set_iotlb' [-Werror=implicit-function-declaration]
339 | vringh_set_iotlb(&vdpasim->vqs[0].vring, vdpasim->iommu);
| ^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +94 drivers/vdpa/vdpa_sim/vdpa_sim.c
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 88
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 89 static void vdpasim_queue_ready(struct vdpasim *vdpasim, unsigned int idx)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 90 {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 91 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx];
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 92 int ret;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 93
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 @94 ret = vringh_init_iotlb(&vq->vring, vdpasim_features,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 95 VDPASIM_QUEUE_MAX, false,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 96 (struct vring_desc *)(uintptr_t)vq->desc_addr,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 97 (struct vring_avail *)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 98 (uintptr_t)vq->driver_addr,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 99 (struct vring_used *)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 100 (uintptr_t)vq->device_addr);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 101 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 102
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 103 static void vdpasim_vq_reset(struct vdpasim_virtqueue *vq)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 104 {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 105 vq->ready = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 106 vq->desc_addr = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 107 vq->driver_addr = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 108 vq->device_addr = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 109 vq->cb = NULL;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 110 vq->private = NULL;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 111 vringh_init_iotlb(&vq->vring, vdpasim_features, VDPASIM_QUEUE_MAX,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 112 false, NULL, NULL, NULL);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 113 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 114
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 115 static void vdpasim_reset(struct vdpasim *vdpasim)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 116 {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 117 int i;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 118
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 119 for (i = 0; i < VDPASIM_VQ_NUM; i++)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 120 vdpasim_vq_reset(&vdpasim->vqs[i]);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 121
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 122 vhost_iotlb_reset(vdpasim->iommu);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 123
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 124 vdpasim->features = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 125 vdpasim->status = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 126 ++vdpasim->generation;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 127 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 128
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 129 static void vdpasim_work(struct work_struct *work)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 130 {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 131 struct vdpasim *vdpasim = container_of(work, struct
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 132 vdpasim, work);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 133 struct vdpasim_virtqueue *txq = &vdpasim->vqs[1];
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 134 struct vdpasim_virtqueue *rxq = &vdpasim->vqs[0];
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 135 size_t read, write, total_write;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 136 int err;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 137 int pkts = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 138
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 139 spin_lock(&vdpasim->lock);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 140
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 141 if (!(vdpasim->status & VIRTIO_CONFIG_S_DRIVER_OK))
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 142 goto out;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 143
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 144 if (!txq->ready || !rxq->ready)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 145 goto out;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 146
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 147 while (true) {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 148 total_write = 0;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 @149 err = vringh_getdesc_iotlb(&txq->vring, &txq->iov, NULL,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 150 &txq->head, GFP_ATOMIC);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 151 if (err <= 0)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 152 break;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 153
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 154 err = vringh_getdesc_iotlb(&rxq->vring, NULL, &rxq->iov,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 155 &rxq->head, GFP_ATOMIC);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 156 if (err <= 0) {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 @157 vringh_complete_iotlb(&txq->vring, txq->head, 0);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 158 break;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 159 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 160
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 161 while (true) {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 @162 read = vringh_iov_pull_iotlb(&txq->vring, &txq->iov,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 163 vdpasim->buffer,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 164 PAGE_SIZE);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 165 if (read <= 0)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 166 break;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 167
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 @168 write = vringh_iov_push_iotlb(&rxq->vring, &rxq->iov,
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 169 vdpasim->buffer, read);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 170 if (write <= 0)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 171 break;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 172
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 173 total_write += write;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 174 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 175
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 176 /* Make sure data is wrote before advancing index */
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 177 smp_wmb();
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 178
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 179 vringh_complete_iotlb(&txq->vring, txq->head, 0);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 180 vringh_complete_iotlb(&rxq->vring, rxq->head, total_write);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 181
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 182 /* Make sure used is visible before rasing the interrupt. */
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 183 smp_wmb();
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 184
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 185 local_bh_disable();
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 186 if (txq->cb)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 187 txq->cb(txq->private);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 188 if (rxq->cb)
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 189 rxq->cb(rxq->private);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 190 local_bh_enable();
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 191
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 192 if (++pkts > 4) {
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 193 schedule_work(&vdpasim->work);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 194 goto out;
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 195 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 196 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 197
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 198 out:
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 199 spin_unlock(&vdpasim->lock);
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 200 }
a35630af6f3198 drivers/virtio/vdpa/vdpa_sim/vdpa_sim.c Jason Wang 2020-03-26 201
:::::: The code at line 94 was first introduced by commit
:::::: a35630af6f31989c517b45c19dc7f9c64bf59a8c vdpasim: vDPA device simulator
:::::: TO: Jason Wang <jasowang@...hat.com>
:::::: CC: Michael S. Tsirkin <mst@...hat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (52995 bytes)
Powered by blists - more mailing lists