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