vp_vdpa: add vq irq offloading support
This patch implements the get_vq_irq() callback for virtio pci devices to allow irq offloading. Signed-off-by: Wu Zongyong <wuzongyong@linux.alibaba.com> Acked-by: Jason Wang <jasowang@redhat.com> Link: https://lore.kernel.org/r/bb091e5505db704dd620f8854a7aebc921d2a752.1635493219.git.wuzongyong@linux.alibaba.com Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
d0ae1fbfcf
commit
5bbfea1eac
@ -76,6 +76,17 @@ static u8 vp_vdpa_get_status(struct vdpa_device *vdpa)
|
||||
return vp_modern_get_status(mdev);
|
||||
}
|
||||
|
||||
static int vp_vdpa_get_vq_irq(struct vdpa_device *vdpa, u16 idx)
|
||||
{
|
||||
struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa);
|
||||
int irq = vp_vdpa->vring[idx].irq;
|
||||
|
||||
if (irq == VIRTIO_MSI_NO_VECTOR)
|
||||
return -EINVAL;
|
||||
|
||||
return irq;
|
||||
}
|
||||
|
||||
static void vp_vdpa_free_irq(struct vp_vdpa *vp_vdpa)
|
||||
{
|
||||
struct virtio_pci_modern_device *mdev = &vp_vdpa->mdev;
|
||||
@ -427,6 +438,7 @@ static const struct vdpa_config_ops vp_vdpa_ops = {
|
||||
.get_config = vp_vdpa_get_config,
|
||||
.set_config = vp_vdpa_set_config,
|
||||
.set_config_cb = vp_vdpa_set_config_cb,
|
||||
.get_vq_irq = vp_vdpa_get_vq_irq,
|
||||
};
|
||||
|
||||
static void vp_vdpa_free_irq_vectors(void *data)
|
||||
|
Loading…
Reference in New Issue
Block a user