[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL v2 30/60] virtio: move VIRTIO_F_NOTIFY_ON_EMPTY into
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL v2 30/60] virtio: move VIRTIO_F_NOTIFY_ON_EMPTY into core |
Date: |
Mon, 1 Jun 2015 14:23:59 +0200 |
From: Cornelia Huck <address@hidden>
Nearly all transports have been offering VIRTIO_F_NOTIFY_ON_EMPTY,
s390-virtio being the exception. There's no reason why it shouldn't
offer it as well, though (handling is done in core anyway), so let's
move it to the common virtio features.
While we're changing it anyway, fix the indentation for the
DEFINE_VIRTIO_COMMON_FEATURES macro.
Signed-off-by: Cornelia Huck <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
include/hw/virtio/virtio.h | 10 ++++++----
hw/s390x/virtio-ccw.c | 3 ---
hw/virtio/virtio-mmio.c | 10 ----------
hw/virtio/virtio-pci.c | 1 -
4 files changed, 6 insertions(+), 18 deletions(-)
diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h
index f1f9ca5..5244a3e 100644
--- a/include/hw/virtio/virtio.h
+++ b/include/hw/virtio/virtio.h
@@ -194,10 +194,12 @@ typedef struct VirtIOSCSIConf VirtIOSCSIConf;
typedef struct VirtIORNGConf VirtIORNGConf;
#define DEFINE_VIRTIO_COMMON_FEATURES(_state, _field) \
- DEFINE_PROP_BIT("indirect_desc", _state, _field, \
- VIRTIO_RING_F_INDIRECT_DESC, true), \
- DEFINE_PROP_BIT("event_idx", _state, _field, \
- VIRTIO_RING_F_EVENT_IDX, true)
+ DEFINE_PROP_BIT("indirect_desc", _state, _field, \
+ VIRTIO_RING_F_INDIRECT_DESC, true), \
+ DEFINE_PROP_BIT("event_idx", _state, _field, \
+ VIRTIO_RING_F_EVENT_IDX, true), \
+ DEFINE_PROP_BIT("notify_on_empty", _state, _field, \
+ VIRTIO_F_NOTIFY_ON_EMPTY, true)
hwaddr virtio_queue_get_desc_addr(VirtIODevice *vdev, int n);
hwaddr virtio_queue_get_avail_addr(VirtIODevice *vdev, int n);
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
index b7c07ef..e772265 100644
--- a/hw/s390x/virtio-ccw.c
+++ b/hw/s390x/virtio-ccw.c
@@ -1382,12 +1382,9 @@ static void virtio_ccw_device_plugged(DeviceState *d)
{
VirtioCcwDevice *dev = VIRTIO_CCW_DEVICE(d);
SubchDev *sch = dev->sch;
- VirtIODevice *vdev = virtio_ccw_get_vdev(sch);
sch->id.cu_model = virtio_bus_get_vdev_id(&dev->bus);
- virtio_add_feature(&vdev->host_features, VIRTIO_F_NOTIFY_ON_EMPTY);
-
css_generate_sch_crws(sch->cssid, sch->ssid, sch->schid,
d->hotplugged, 1);
}
diff --git a/hw/virtio/virtio-mmio.c b/hw/virtio/virtio-mmio.c
index 1817a07..3008b65 100644
--- a/hw/virtio/virtio-mmio.c
+++ b/hw/virtio/virtio-mmio.c
@@ -336,15 +336,6 @@ static void virtio_mmio_reset(DeviceState *d)
/* virtio-mmio device */
-/* This is called by virtio-bus just after the device is plugged. */
-static void virtio_mmio_device_plugged(DeviceState *opaque)
-{
- VirtIOMMIOProxy *proxy = VIRTIO_MMIO(opaque);
- VirtIODevice *vdev = virtio_bus_get_device(&proxy->bus);
-
- virtio_add_feature(&vdev->host_features, VIRTIO_F_NOTIFY_ON_EMPTY);
-}
-
static void virtio_mmio_realizefn(DeviceState *d, Error **errp)
{
VirtIOMMIOProxy *proxy = VIRTIO_MMIO(d);
@@ -384,7 +375,6 @@ static void virtio_mmio_bus_class_init(ObjectClass *klass,
void *data)
k->notify = virtio_mmio_update_irq;
k->save_config = virtio_mmio_save_config;
k->load_config = virtio_mmio_load_config;
- k->device_plugged = virtio_mmio_device_plugged;
k->has_variable_vring_alignment = true;
bus_class->max_dev = 1;
}
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index 8ea7231..8923ba8 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -953,7 +953,6 @@ static void virtio_pci_device_plugged(DeviceState *d)
proxy->flags &= ~VIRTIO_PCI_FLAG_USE_IOEVENTFD;
}
- virtio_add_feature(&vdev->host_features, VIRTIO_F_NOTIFY_ON_EMPTY);
virtio_add_feature(&vdev->host_features, VIRTIO_F_BAD_FEATURE);
}
--
MST
- [Qemu-devel] [PULL v2 20/60] pc: Move compat_props setting inside *_machine_options() functions, (continued)
- [Qemu-devel] [PULL v2 20/60] pc: Move compat_props setting inside *_machine_options() functions, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 21/60] pc: Don't use QEMUMachine anymore, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 22/60] pc: Remove qemu_register_pc_machine() function, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 23/60] machine: Remove unused fields from QEMUMachine, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 24/60] piix: Add kvmclock_enabled, pci_enabled globals, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 25/60] piix: Eliminate pc_init_pci(), Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 27/60] pc: acpi: fix pvpanic for buggy guests, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 26/60] pc: Generate init functions with a macro, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 28/60] virtio: move host_features, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 29/60] virtio-ccw: Don't advertise VIRTIO_F_BAD_FEATURE, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 30/60] virtio: move VIRTIO_F_NOTIFY_ON_EMPTY into core,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL v2 31/60] virtio-net: adding all queues in .realize(), Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 33/60] virtio: introduce virtio_get_num_queues(), Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 32/60] virtio: device_plugged() can fail, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 34/60] virtio-ccw: introduce ccw specific queue limit, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 35/60] virtio-ccw: validate the number of queues against bus limitation, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 36/60] virtio-s390: introduce virito s390 queue limit, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 37/60] virtio-s390: introduce virtio_s390_device_plugged(), Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 38/60] virtio: rename VIRTIO_PCI_QUEUE_MAX to VIRTIO_QUEUE_MAX, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 39/60] virtio: increase the queue limit to 1024, Michael S. Tsirkin, 2015/06/01
- [Qemu-devel] [PULL v2 40/60] i386/pc: pc_basic_device_init(): delegate FDC creation request, Michael S. Tsirkin, 2015/06/01