virtio-rng-s390 has zero config length, so no need to sync its config otherwise
qemu will crash since vdev->config is NULL.

Cc: Alexander Graf <ag...@suse.de>
Cc: Richard Henderson <r...@twiddle.net>
Signed-off-by: Jason Wang <jasow...@redhat.com>
---
 hw/s390x/s390-virtio-bus.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/hw/s390x/s390-virtio-bus.c b/hw/s390x/s390-virtio-bus.c
index dabbc2e..0f83516 100644
--- a/hw/s390x/s390-virtio-bus.c
+++ b/hw/s390x/s390-virtio-bus.c
@@ -350,6 +350,10 @@ void s390_virtio_device_sync(VirtIOS390Device *dev)
     dev->feat_offs = cur_offs + dev->feat_len;
     cur_offs += dev->feat_len * 2;
 
+    if (!dev->vdev->config_len) {
+        return;
+    }
+
     /* Sync config space */
     if (dev->vdev->get_config) {
         dev->vdev->get_config(dev->vdev, dev->vdev->config);
-- 
1.7.1


Reply via email to