@@ -348,7 +348,7 @@ static VirtIOS390DeviceInfo s390_virtio_blk = {
.qdev.size = sizeof(VirtIOS390Device),
.qdev.props = (Property[]) {
DEFINE_BLOCK_PROPERTIES(VirtIOS390Device, block),
- DEFINE_PROP_STRING("serial", VirtIOS390Device, blk.serial),
+ DEFINE_VIRTIO_BLK_PROPERTIES(VirtIOS390Device, host_features, blk),
DEFINE_PROP_END_OF_LIST(),
},
};
@@ -110,4 +110,9 @@ struct VirtIOBlkConf
#define DEFINE_VIRTIO_BLK_FEATURES(_state, _field) \
DEFINE_VIRTIO_COMMON_FEATURES(_state, _field)
#endif
+
+#define DEFINE_VIRTIO_BLK_PROPERTIES(_state, _features_field, _conf_field) \
+ DEFINE_VIRTIO_BLK_FEATURES(_state, _features_field), \
+ DEFINE_PROP_STRING("serial", _state, _conf_field.serial)
+
#endif
@@ -809,11 +809,10 @@ static PCIDeviceInfo virtio_info[] = {
.qdev.props = (Property[]) {
DEFINE_PROP_HEX32("class", VirtIOPCIProxy, class_code, 0),
DEFINE_BLOCK_PROPERTIES(VirtIOPCIProxy, block),
- DEFINE_PROP_STRING("serial", VirtIOPCIProxy, blk.serial),
DEFINE_PROP_BIT("ioeventfd", VirtIOPCIProxy, flags,
VIRTIO_PCI_FLAG_USE_IOEVENTFD_BIT, true),
DEFINE_PROP_UINT32("vectors", VirtIOPCIProxy, nvectors, 2),
- DEFINE_VIRTIO_BLK_FEATURES(VirtIOPCIProxy, host_features),
+ DEFINE_VIRTIO_BLK_PROPERTIES(VirtIOPCIProxy, host_features, blk),
DEFINE_PROP_END_OF_LIST(),
},
.qdev.reset = virtio_pci_reset,
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- hw/s390-virtio-bus.c | 2 +- hw/virtio-blk.h | 5 +++++ hw/virtio-pci.c | 3 +-- 3 files changed, 7 insertions(+), 3 deletions(-)