All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/4] virtio: Move host features to backends
@ 2015-04-17 12:13 Shannon Zhao
  2015-04-17 12:13 ` [Qemu-devel] [PATCH 1/4] hw/s390x/virtio-ccw: Add virtio_ccw_device_plugged for virtio-ccw Shannon Zhao
                   ` (4 more replies)
  0 siblings, 5 replies; 19+ messages in thread
From: Shannon Zhao @ 2015-04-17 12:13 UTC (permalink / raw)
  To: qemu-devel
  Cc: peter.maydell, mst, peter.huangpeng, shannon.zhao, zhaoshenglong,
	pbonzini, christoffer.dall

The reason to do this is that the virtio-net-device can't expose host
features to guest while using virtio-mmio. So the performance is low.

The virtio-*-pci, virtio-*-s390, and virtio-*-ccw already have the ability
to forward property accesses to the backend child, by calling 
*_virtio_*_instance_init -> qdev_alias_all_properties.

Here we move the host features to backends, involving
DEFINE_VIRTIO_NET_FEATURES, DEFINE_VIRTIO_SCSI_FEATURES. So the virtio-mmio
devices could have the host freatures, and this has a great performance
improvement to virtio-mmio.

This is also backward compatible for s390 and x86.

Shannon Zhao (4):
  hw/s390x/virtio-ccw: Add virtio_ccw_device_plugged for virtio-ccw
  hw/s390x/s390-virtio-bus: Add virtio_s390_device_plugged for
    s390-virtio
  hw/net/virtio-net: Move DEFINE_VIRTIO_NET_FEATURES to virtio-net
  virtio-scsi: Move DEFINE_VIRTIO_SCSI_FEATURES to virtio-scsi

 hw/net/virtio-net.c             |  4 ++++
 hw/s390x/s390-virtio-bus.c      | 12 ++++++++++--
 hw/s390x/virtio-ccw.c           | 13 +++++++++++--
 hw/scsi/virtio-scsi.c           |  5 +++++
 hw/virtio/virtio-pci.c          |  2 --
 include/hw/virtio/virtio-net.h  |  1 +
 include/hw/virtio/virtio-scsi.h |  1 +
 7 files changed, 32 insertions(+), 6 deletions(-)

-- 
2.0.4

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2015-04-20 12:44 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-17 12:13 [Qemu-devel] [PATCH 0/4] virtio: Move host features to backends Shannon Zhao
2015-04-17 12:13 ` [Qemu-devel] [PATCH 1/4] hw/s390x/virtio-ccw: Add virtio_ccw_device_plugged for virtio-ccw Shannon Zhao
2015-04-17 13:44   ` Cornelia Huck
2015-04-17 14:50     ` Shannon Zhao
2015-04-17 15:33   ` Peter Maydell
2015-04-18  1:36     ` Shannon Zhao
2015-04-17 12:13 ` [Qemu-devel] [PATCH 2/4] hw/s390x/s390-virtio-bus: Add virtio_s390_device_plugged for s390-virtio Shannon Zhao
2015-04-17 12:13 ` [Qemu-devel] [PATCH 3/4] hw/net/virtio-net: Move DEFINE_VIRTIO_NET_FEATURES to virtio-net Shannon Zhao
2015-04-17 14:05   ` Peter Maydell
2015-04-17 14:50     ` Shannon Zhao
2015-04-17 15:03       ` Peter Maydell
2015-04-17 12:13 ` [Qemu-devel] [PATCH 4/4] virtio-scsi: Move DEFINE_VIRTIO_SCSI_FEATURES to virtio-scsi Shannon Zhao
2015-04-17 13:43 ` [Qemu-devel] [PATCH 0/4] virtio: Move host features to backends Cornelia Huck
2015-04-17 14:00   ` Peter Maydell
2015-04-20  8:54     ` Cornelia Huck
2015-04-20  9:02       ` Peter Maydell
2015-04-20  9:12       ` Michael S. Tsirkin
2015-04-20 12:14         ` Cornelia Huck
2015-04-20 12:43           ` Michael S. Tsirkin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.