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 <[email protected]>

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 <[email protected]>
:::::: CC: Michael S. Tsirkin <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to