qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] vhost: Use vbus var instead of VIRTIO_BUS() mac


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH] vhost: Use vbus var instead of VIRTIO_BUS() macro
Date: Wed, 9 Nov 2016 14:22:42 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0


On 09/11/2016 14:18, Felipe Franciosi wrote:
> Recent changes on vhost_dev_enable/disable_notifiers() produced a
> VirtioBusState vbus variable which can be used instead of the
> VIRTIO_BUS() macro. This commit just makes the code a little bit cleaner
> and more consistent.
> 
> Signed-off-by: Felipe Franciosi <address@hidden>

Michael, what do you think?  Perhaps it's simplest to just squash the
two patches (v2 of "vhost: Update 'ioeventfd_started' with host
notifiers" and this one).

Paolo

> ---
>  hw/virtio/vhost.c | 14 ++++++--------
>  1 file changed, 6 insertions(+), 8 deletions(-)
> 
> diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
> index 1290963..7d29dad 100644
> --- a/hw/virtio/vhost.c
> +++ b/hw/virtio/vhost.c
> @@ -1198,20 +1198,18 @@ int vhost_dev_enable_notifiers(struct vhost_dev 
> *hdev, VirtIODevice *vdev)
>  
>      virtio_device_stop_ioeventfd(vdev);
>      for (i = 0; i < hdev->nvqs; ++i) {
> -        r = virtio_bus_set_host_notifier(VIRTIO_BUS(qbus), hdev->vq_index + 
> i,
> -                                         true);
> +        r = virtio_bus_set_host_notifier(vbus, hdev->vq_index + i, true);
>          if (r < 0) {
>              error_report("vhost VQ %d notifier binding failed: %d", i, -r);
>              goto fail_vq;
>          }
>      }
> -    VIRTIO_BUS(qbus)->ioeventfd_started = true;
> +    vbus->ioeventfd_started = true;
>  
>      return 0;
>  fail_vq:
>      while (--i >= 0) {
> -        e = virtio_bus_set_host_notifier(VIRTIO_BUS(qbus), hdev->vq_index + 
> i,
> -                                         false);
> +        e = virtio_bus_set_host_notifier(vbus, hdev->vq_index + i, false);
>          if (e < 0) {
>              error_report("vhost VQ %d notifier cleanup error: %d", i, -r);
>          }
> @@ -1230,17 +1228,17 @@ fail:
>  void vhost_dev_disable_notifiers(struct vhost_dev *hdev, VirtIODevice *vdev)
>  {
>      BusState *qbus = BUS(qdev_get_parent_bus(DEVICE(vdev)));
> +    VirtioBusState *vbus = VIRTIO_BUS(qbus);
>      int i, r;
>  
>      for (i = 0; i < hdev->nvqs; ++i) {
> -        r = virtio_bus_set_host_notifier(VIRTIO_BUS(qbus), hdev->vq_index + 
> i,
> -                                         false);
> +        r = virtio_bus_set_host_notifier(vbus, hdev->vq_index + i, false);
>          if (r < 0) {
>              error_report("vhost VQ %d notifier cleanup failed: %d", i, -r);
>          }
>          assert (r >= 0);
>      }
> -    VIRTIO_BUS(qbus)->ioeventfd_started = false;
> +    vbus->ioeventfd_started = false;
>      virtio_device_start_ioeventfd(vdev);
>  }
>  
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]