}
 
        /* Discover virtqueues and write information to configuration.  */
-       err = vdev->config->find_vqs(vdev, num_vqs, vqs, callbacks, names,
-                       &desc);
+       err = virtio_find_vqs(vdev, num_vqs, vqs, callbacks, names, &desc);
        if (err)
                goto out;
 
 
                }
        }
        /* Find the queues. */
-       err = portdev->vdev->config->find_vqs(portdev->vdev, nr_queues, vqs,
-                                             io_callbacks,
-                                             (const char **)io_names, NULL);
+       err = virtio_find_vqs(portdev->vdev, nr_queues, vqs,
+                             io_callbacks,
+                             (const char **)io_names, NULL);
        if (err)
                goto free;
 
 
                names[i] = vi->data_vq[i].name;
        }
 
-       ret = vi->vdev->config->find_vqs(vi->vdev, total_vqs, vqs, callbacks,
-                                        names, NULL);
+       ret = virtio_find_vqs(vi->vdev, total_vqs, vqs, callbacks, names, NULL);
        if (ret)
                goto err_find;
 
 
        DRM_INFO("virgl 3d acceleration not supported by guest\n");
 #endif
 
-       ret = vgdev->vdev->config->find_vqs(vgdev->vdev, 2, vqs,
-                                           callbacks, names, NULL);
+       ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL);
        if (ret) {
                DRM_ERROR("failed to find virt queues\n");
                goto err_vqs;
 
                goto err;
 
        /* Get the TX virtio ring. This is a "guest side vring". */
-       err = vdev->config->find_vqs(vdev, 1, &cfv->vq_tx, &vq_cbs, &names,
-                       NULL);
+       err = virtio_find_vqs(vdev, 1, &cfv->vq_tx, &vq_cbs, &names, NULL);
        if (err)
                goto err;
 
 
                names[txq2vq(i)] = vi->sq[i].name;
        }
 
-       ret = vi->vdev->config->find_vqs(vi->vdev, total_vqs, vqs, callbacks,
-                                        names, NULL);
+       ret = virtio_find_vqs(vi->vdev, total_vqs, vqs, callbacks, names, NULL);
        if (ret)
                goto err_find;
 
 
        init_waitqueue_head(&vrp->sendq);
 
        /* We expect two virtqueues, rx and tx (and in this order) */
-       err = vdev->config->find_vqs(vdev, 2, vqs, vq_cbs, names, NULL);
+       err = virtio_find_vqs(vdev, 2, vqs, vq_cbs, names, NULL);
        if (err)
                goto free_vrp;
 
 
        }
 
        /* Discover virtqueues and write information to configuration.  */
-       err = vdev->config->find_vqs(vdev, num_vqs, vqs, callbacks, names,
-                       &desc);
+       err = virtio_find_vqs(vdev, num_vqs, vqs, callbacks, names, &desc);
        if (err)
                goto out;
 
 
         * optionally stat.
         */
        nvqs = virtio_has_feature(vb->vdev, VIRTIO_BALLOON_F_STATS_VQ) ? 3 : 2;
-       err = vb->vdev->config->find_vqs(vb->vdev, nvqs, vqs, callbacks, names,
-                       NULL);
+       err = virtio_find_vqs(vb->vdev, nvqs, vqs, callbacks, names, NULL);
        if (err)
                return err;
 
 
        static const char * const names[] = { "events", "status" };
        int err;
 
-       err = vi->vdev->config->find_vqs(vi->vdev, 2, vqs, cbs, names,
-                       NULL);
+       err = virtio_find_vqs(vi->vdev, 2, vqs, cbs, names, NULL);
        if (err)
                return err;
        vi->evt = vqs[0];
 
        return vq;
 }
 
+static inline
+int virtio_find_vqs(struct virtio_device *vdev, unsigned nvqs,
+                       struct virtqueue *vqs[], vq_callback_t *callbacks[],
+                       const char * const names[],
+                       struct irq_affinity *desc)
+{
+       return vdev->config->find_vqs(vdev, nvqs, vqs, callbacks, names, desc);
+}
+
 /**
  * virtio_device_ready - enable vq use in probe function
  * @vdev: the device
 
 
        vsock->vdev = vdev;
 
-       ret = vsock->vdev->config->find_vqs(vsock->vdev, VSOCK_VQ_MAX,
-                                           vsock->vqs, callbacks, names,
-                                           NULL);
+       ret = virtio_find_vqs(vsock->vdev, VSOCK_VQ_MAX,
+                             vsock->vqs, callbacks, names,
+                             NULL);
        if (ret < 0)
                goto out;