RE: [PATCH 1/2] vfio: ABI for setting mdev display flip eventfd

From: Zhang, Tina
Date: Mon May 27 2019 - 21:46:20 EST




> -----Original Message-----
> From: intel-gvt-dev [mailto:intel-gvt-dev-bounces@xxxxxxxxxxxxxxxxxxxxx] On
> Behalf Of Alex Williamson
> Sent: Monday, May 27, 2019 10:05 PM
> To: Zhang, Tina <tina.zhang@xxxxxxxxx>
> Cc: kvm@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> zhenyuw@xxxxxxxxxxxxxxx; Yuan, Hang <hang.yuan@xxxxxxxxx>;
> kraxel@xxxxxxxxxx; intel-gvt-dev@xxxxxxxxxxxxxxxxxxxxx; Lv, Zhiyuan
> <zhiyuan.lv@xxxxxxxxx>
> Subject: Re: [PATCH 1/2] vfio: ABI for setting mdev display flip eventfd
>
> On Mon, 27 May 2019 16:43:11 +0800
> Tina Zhang <tina.zhang@xxxxxxxxx> wrote:
>
> > Add VFIO_DEVICE_SET_GFX_FLIP_EVENTFD ioctl command to set eventfd
> > based signaling mechanism to deliver vGPU framebuffer page flip event
> > to userspace.
> >
> > Signed-off-by: Tina Zhang <tina.zhang@xxxxxxxxx>
> > ---
> > include/uapi/linux/vfio.h | 12 ++++++++++++
> > 1 file changed, 12 insertions(+)
> >
> > diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h
> > index 02bb7ad6e986..27300597717f 100644
> > --- a/include/uapi/linux/vfio.h
> > +++ b/include/uapi/linux/vfio.h
> > @@ -696,6 +696,18 @@ struct vfio_device_ioeventfd {
> >
> > #define VFIO_DEVICE_IOEVENTFD _IO(VFIO_TYPE, VFIO_BASE +
> 16)
> >
> > +/**
> > + * VFIO_DEVICE_SET_GFX_FLIP_EVENTFD - _IOW(VFIO_TYPE, VFIO_BASE
> + 17,
> > +__s32)
> > + *
> > + * Set eventfd based signaling mechanism to deliver vGPU framebuffer
> > +page
> > + * flip event to userspace. A value of -1 is used to stop the page
> > +flip
> > + * delivering.
> > + *
> > + * Return: 0 on success, -errno on failure.
> > + */
> > +
> > +#define VFIO_DEVICE_SET_GFX_FLIP_EVENTFD _IO(VFIO_TYPE,
> VFIO_BASE +
> > +17)
> > +
> > /* -------- API for Type1 VFIO IOMMU -------- */
> >
> > /**
>
> Why can't we use VFIO_DEVICE_SET_IRQS for this? We can add a capability
> to vfio_irq_info in the same way that we did for regions to describe device
> specific IRQ support. Thanks,
Add a new kind of index, like this?
enum {
VFIO_PCI_INTX_IRQ_INDEX,
VFIO_PCI_MSI_IRQ_INDEX,
VFIO_PCI_MSIX_IRQ_INDEX,
VFIO_PCI_ERR_IRQ_INDEX,
VFIO_PCI_REQ_IRQ_INDEX,
+ VFIO_PCI_GFX_FLIP_EVENT_INDEX,
VFIO_PCI_NUM_IRQS
};
Perhaps this is what we don't want. This VFIO_PCI_GFX_FLIP_EVENT_INDEX is specific to graphics card and it's actually an event which is reported by INTX/MSI/ MSIX IRQ.
Thanks.

BR,
Tina
>
> Alex
> _______________________________________________
> intel-gvt-dev mailing list
> intel-gvt-dev@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/intel-gvt-dev