On Tue, Apr 28, 2015 at 07:51:11PM +0800, shannon.z...@linaro.org wrote: > From: Shannon Zhao <shannon.z...@linaro.org> > > 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. So if we move the > host features to backends, it doesn't break the backwards compatibility > for virtio-*-pci, virtio-*-s390, and virtio-*-ccw. > > 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, especially to virtio-net-device.
Can you move COMMON_FEATURES too please? > changes since v3: > * detail the changes in commit log > * don't expose virtio_net_set_config_size > > changes since v2: > * move virtio_net_set_config_size to virtio-net (Cornelia) > > changes since v1: > * drop unnecessary change of adding device_plugged hook for > virtio-ccw and s390-virtio-bus (Cornelia) > > Shannon Zhao (2): > 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 | 7 ++++++- > hw/s390x/s390-virtio-bus.c | 3 --- > hw/s390x/virtio-ccw.c | 3 --- > hw/scsi/virtio-scsi.c | 5 +++++ > hw/virtio/virtio-pci.c | 3 --- > include/hw/virtio/virtio-net.h | 2 +- > include/hw/virtio/virtio-scsi.h | 1 + > 7 files changed, 13 insertions(+), 11 deletions(-) > > -- > 2.1.0