summary refs log tree commit diff stats
path: root/hw
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2013-07-21 12:20:15 +0200
committerAndreas Färber <afaerber@suse.de>2013-07-23 00:37:35 +0200
commit22d6aa03fd87ba5f219d26bc1810646d0f95842a (patch)
tree4a8c7a3adb22e136b181b6f6398655f0f6422ad4 /hw
parentb09318cac65df015b9b0990791f02b894cc57d33 (diff)
downloadfocaccia-qemu-22d6aa03fd87ba5f219d26bc1810646d0f95842a.tar.gz
focaccia-qemu-22d6aa03fd87ba5f219d26bc1810646d0f95842a.zip
megasas: Legacy command line handling fix
Only apply legacy command line handling when the device has not been
hot-plugged. Propagate failure of legacy command line handling.

Cc: qemu-stable@nongnu.org
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'hw')
-rw-r--r--hw/scsi/megasas.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c
index 55d5b73606..2ae434683e 100644
--- a/hw/scsi/megasas.c
+++ b/hw/scsi/megasas.c
@@ -2098,6 +2098,7 @@ static const struct SCSIBusInfo megasas_scsi_info = {
 
 static int megasas_scsi_init(PCIDevice *dev)
 {
+    DeviceState *d = DEVICE(dev);
     MegasasState *s = MEGASAS(dev);
     uint8_t *pci_conf;
     int i, bar_type;
@@ -2170,7 +2171,9 @@ static int megasas_scsi_init(PCIDevice *dev)
     }
 
     scsi_bus_new(&s->bus, DEVICE(dev), &megasas_scsi_info, NULL);
-    scsi_bus_legacy_handle_cmdline(&s->bus);
+    if (!d->hotplugged) {
+        return scsi_bus_legacy_handle_cmdline(&s->bus);
+    }
     return 0;
 }