On 2020/7/28 ??12:24, Zhu Lingshan wrote:> This commit adds a new function get_vq_irq() in struct
> vdpa_config_ops, which will return the irq number of a
> virtqueue.
>
> Signed-off-by: Zhu Lingshan <lingshan.zhu at intel.com>
> Suggested-by: Jason Wang <jasowang at redhat.com>
> ---
> include/linux/vdpa.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/include/linux/vdpa.h b/include/linux/vdpa.h
> index 239db794357c..cebc79173aaa 100644
> --- a/include/linux/vdpa.h
> +++ b/include/linux/vdpa.h
> @@ -87,6 +87,11 @@ struct vdpa_device {
> * @vdev: vdpa device
> * @idx: virtqueue index
> * Returns the notifcation area
> + * @get_vq_irq: Get the irq number of a virtqueue
> + * @vdev: vdpa device
> + * @idx: virtqueue index
> + * Returns u32: irq number of a virtqueue,
> + * -EINVAL if no irq assigned.
I think we can not get -EINVAL since the function will return a u32.
Thanks
> * @get_vq_align: Get the virtqueue align requirement
> * for the device
> * @vdev: vdpa device
> @@ -178,6 +183,7 @@ struct vdpa_config_ops {
> u64 (*get_vq_state)(struct vdpa_device *vdev, u16 idx);
> struct vdpa_notification_area
> (*get_vq_notification)(struct vdpa_device *vdev, u16 idx);
> + u32 (*get_vq_irq)(struct vdpa_device *vdv, u16 idx);
>
> /* Device ops */
> u32 (*get_vq_align)(struct vdpa_device *vdev);