]> git.proxmox.com Git - mirror_qemu.git/commitdiff
virtio_error: don't invoke status callbacks
authorMichael S. Tsirkin <mst@redhat.com>
Wed, 13 Dec 2017 19:59:54 +0000 (21:59 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 19 Dec 2017 21:41:00 +0000 (23:41 +0200)
Backends don't need to know what frontend requested a reset,
and notifying then from virtio_error is messy because
virtio_error itself might be invoked from backend.

Let's just set the status directly.

Cc: qemu-stable@nongnu.org
Reported-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/virtio.c

index ad564b0132428a32cbf4ac15be7ff78db9458d76..d6002ee550374098d02e2638231a1fa6331664d5 100644 (file)
@@ -2469,7 +2469,7 @@ void GCC_FMT_ATTR(2, 3) virtio_error(VirtIODevice *vdev, const char *fmt, ...)
     va_end(ap);
 
     if (virtio_vdev_has_feature(vdev, VIRTIO_F_VERSION_1)) {
-        virtio_set_status(vdev, vdev->status | VIRTIO_CONFIG_S_NEEDS_RESET);
+        vdev->status = vdev->status | VIRTIO_CONFIG_S_NEEDS_RESET;
         virtio_notify_config(vdev);
     }