On Fri, 17 Apr 2015 20:13:42 +0800 Shannon Zhao <shannon.z...@linaro.org> wrote:
[Some questions may be silly, but I'm not familiar with the virtio-mmio code] > 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. So how does virtio-mmio expose any host features? > > 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. Is there a way virtio-mmio could make use of instance_init? > > 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(-) >