[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);
> }
>
>