From 6f32a6b47ef4247ad14dad63c6ee231fdce4c5e9 Mon Sep 17 00:00:00 2001 From: KONRAD Frederic Date: Tue, 30 Apr 2013 16:08:51 +0200 Subject: virtio-scsi: fix the command line compatibility. The bus name is wrong since the refactoring. This keeps the behaviour of the command line. Signed-off-by: KONRAD Frederic Tested-by: Cornelia Huck Message-id: 1367330931-12994-6-git-send-email-fred.konrad@greensocs.com Signed-off-by: Anthony Liguori --- hw/s390x/s390-virtio-bus.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'hw/s390x/s390-virtio-bus.c') diff --git a/hw/s390x/s390-virtio-bus.c b/hw/s390x/s390-virtio-bus.c index 83faf97ea7..5a3d97c037 100644 --- a/hw/s390x/s390-virtio-bus.c +++ b/hw/s390x/s390-virtio-bus.c @@ -235,6 +235,18 @@ static int s390_virtio_scsi_init(VirtIOS390Device *s390_dev) { VirtIOSCSIS390 *dev = VIRTIO_SCSI_S390(s390_dev); DeviceState *vdev = DEVICE(&dev->vdev); + DeviceState *qdev = DEVICE(s390_dev); + char *bus_name; + + /* + * For command line compatibility, this sets the virtio-scsi-device bus + * name as before. + */ + if (qdev->id) { + bus_name = g_strdup_printf("%s.0", qdev->id); + virtio_device_set_child_bus_name(VIRTIO_DEVICE(vdev), bus_name); + g_free(bus_name); + } qdev_set_parent_bus(vdev, BUS(&s390_dev->bus)); if (qdev_init(vdev) < 0) { -- cgit v1.2.1