From: Andreas Färber Date: Sun, 21 Jul 2013 10:20:15 +0000 (+0200) Subject: megasas: Legacy command line handling fix X-Git-Tag: v1.5.3~25 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a561fcfed630c6a926f545ddcc20a0f31c65adf5;p=thirdparty%2Fqemu.git 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 Signed-off-by: Andreas Färber (cherry picked from commit 22d6aa03fd87ba5f219d26bc1810646d0f95842a) Conflicts: hw/scsi/megasas.c * modified to avoid dependency on fancy new upcast macros Signed-off-by: Michael Roth --- diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c index 4934a815ce6..27288b9222a 100644 --- a/hw/scsi/megasas.c +++ b/hw/scsi/megasas.c @@ -2088,6 +2088,7 @@ static const struct SCSIBusInfo megasas_scsi_info = { static int megasas_scsi_init(PCIDevice *dev) { + DeviceState *d = DEVICE(dev); MegasasState *s = DO_UPCAST(MegasasState, dev, dev); uint8_t *pci_conf; int i, bar_type; @@ -2160,7 +2161,9 @@ static int megasas_scsi_init(PCIDevice *dev) } scsi_bus_new(&s->bus, &dev->qdev, &megasas_scsi_info, NULL); - scsi_bus_legacy_handle_cmdline(&s->bus); + if (!d->hotplugged) { + return scsi_bus_legacy_handle_cmdline(&s->bus); + } return 0; }