"Edgar E. Iglesias" <[email protected]> writes:

> From: "Edgar E. Iglesias" <[email protected]>
>
> Signed-off-by: Edgar E. Iglesias <[email protected]>
> ---
>  hw/virtio/virtio.c         | 16 ++++++++++++++++
>  include/hw/virtio/virtio.h |  2 ++
>  2 files changed, 18 insertions(+)
>
> diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
> index 8a53fb5f93..fe7c635390 100644
> --- a/hw/virtio/virtio.c
> +++ b/hw/virtio/virtio.c
> @@ -2379,6 +2379,22 @@ void virtio_queue_set_rings(VirtIODevice *vdev, int n, 
> hwaddr desc,
>      virtio_init_region_cache(vdev, n);
>  }
>  
> +void virtio_queue_get_rings(VirtIODevice *vdev, int n, hwaddr *desc,
> +                            hwaddr *avail, hwaddr *used)
> +{
> +    assert(vdev->vq[n].vring.num);
> +
> +    if (desc) {
> +        *desc = vdev->vq[n].vring.desc;
> +    }
> +    if (avail) {
> +        *avail = vdev->vq[n].vring.avail;
> +    }
> +    if (used) {
> +        *used = vdev->vq[n].vring.used;
> +    }
> +}
> +
>  void virtio_queue_set_num(VirtIODevice *vdev, int n, int num)
>  {
>      /* Don't allow guest to flip queue between existent and
> diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
> index d97529c3f1..8bceb115a3 100644
> --- a/include/hw/virtio/virtio.h
> +++ b/include/hw/virtio/virtio.h
> @@ -361,6 +361,8 @@ int virtio_queue_get_max_num(VirtIODevice *vdev, int n);
>  int virtio_get_num_queues(VirtIODevice *vdev);
>  void virtio_queue_set_rings(VirtIODevice *vdev, int n, hwaddr desc,
>                              hwaddr avail, hwaddr used);
> +void virtio_queue_get_rings(VirtIODevice *vdev, int n, hwaddr *desc,
> +                            hwaddr *avail, hwaddr *used);

Same as last comment, lets start documenting the API.

>  void virtio_queue_update_rings(VirtIODevice *vdev, int n);
>  void virtio_init_region_cache(VirtIODevice *vdev, int n);
>  void virtio_queue_set_align(VirtIODevice *vdev, int n, int align);

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro

Reply via email to