diff mbox

[RFC,v2,11/12] virtio-net/virtio-blk: enable virtio 1.0

Message ID 1416921863-16523-12-git-send-email-cornelia.huck@de.ibm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Cornelia Huck Nov. 25, 2014, 1:24 p.m. UTC
virtio-net (non-vhost) and virtio-blk have everything in place to support
virtio 1.0: let's enable the feature bit for them.

Note that VIRTIO_F_VERSION_1 is technically a transport feature; once
every device is ready for virtio 1.0, we can move this setting this
feature bit out of the individual devices.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
---
 hw/block/virtio-blk.c |    4 ++++
 hw/net/virtio-net.c   |    4 ++++
 2 files changed, 8 insertions(+)
diff mbox

Patch

diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
index 6d86f60..3781f98 100644
--- a/hw/block/virtio-blk.c
+++ b/hw/block/virtio-blk.c
@@ -569,6 +569,10 @@  static uint32_t virtio_blk_get_features(VirtIODevice *vdev, unsigned int index,
 {
     VirtIOBlock *s = VIRTIO_BLK(vdev);
 
+    if (index == 1) {
+        features |= (1 << (VIRTIO_F_VERSION_1 - 32));
+    }
+
     if (index > 0) {
         return features;
     }
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index 1e214b5..fcfc95f 100644
--- a/hw/net/virtio-net.c
+++ b/hw/net/virtio-net.c
@@ -447,6 +447,10 @@  static uint32_t virtio_net_get_features(VirtIODevice *vdev, unsigned int index,
     VirtIONet *n = VIRTIO_NET(vdev);
     NetClientState *nc = qemu_get_queue(n->nic);
 
+    if (index == 1 && !get_vhost_net(nc->peer)) {
+        features |= (1 << (VIRTIO_F_VERSION_1 - 32));
+    }
+
     if (index > 0) {
         return features;
     }