Re: [Qemu-devel] [PATCH] scsi: Remove automatic creation of SCSI controllers with -drive if=scsi

2018-02-23 Thread no-reply
Hi,

This series failed build test on s390x host. Please find the details below.

N/A. Internal error while reading log file



---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-de...@freelists.org

Re: [Qemu-devel] [PATCH] scsi: Remove automatic creation of SCSI controllers with -drive if=scsi

2018-02-20 Thread Paolo Bonzini
On 20/02/2018 11:42, Thomas Huth wrote:
> Automatic creation of SCSI controllers for "-drive if=scsi" for x86
> machines was quite a bad idea (see description of commit f778a82f0c179
> for details). This is marked as deprecated since QEMU v2.9.0, and as
> far as I know, nobody complained that this is still urgently required
> anymore. Time to remove this now.
> 
> Suggested-by: Markus Armbruster 
> Signed-off-by: Thomas Huth 

Queued, thanks.  _Your_ queue must be getting shorter instead!

Paolo

> ---
>  hw/i386/pc.c   | 17 -
>  hw/i386/pc_piix.c  |  4 
>  hw/i386/pc_q35.c   |  3 ---
>  hw/scsi/lsi53c895a.c   |  2 +-
>  hw/scsi/scsi-bus.c | 49 +
>  hw/scsi/spapr_vscsi.c  |  3 +--
>  include/hw/scsi/scsi.h |  2 +-
>  qemu-doc.texi  |  5 -
>  vl.c   |  9 -
>  9 files changed, 4 insertions(+), 90 deletions(-)
> 
> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index 55e69d6..2f7746c 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -1636,23 +1636,6 @@ void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus)
>  rom_reset_order_override();
>  }
>  
> -void pc_pci_device_init(PCIBus *pci_bus)
> -{
> -int max_bus;
> -int bus;
> -
> -/* Note: if=scsi is deprecated with PC machine types */
> -max_bus = drive_get_max_bus(IF_SCSI);
> -for (bus = 0; bus <= max_bus; bus++) {
> -pci_create_simple(pci_bus, -1, "lsi53c895a");
> -/*
> - * By not creating frontends here, we make
> - * scsi_legacy_handle_cmdline() create them, and warn that
> - * this usage is deprecated.
> - */
> -}
> -}
> -
>  void ioapic_init_gsi(GSIState *gsi_state, const char *parent_name)
>  {
>  DeviceState *dev;
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 456dc9e..8658bcb 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -295,10 +295,6 @@ static void pc_init1(MachineState *machine,
>   PC_MACHINE_ACPI_DEVICE_PROP, _abort);
>  }
>  
> -if (pcmc->pci_enabled) {
> -pc_pci_device_init(pci_bus);
> -}
> -
>  if (pcms->acpi_nvdimm_state.is_enabled) {
>  nvdimm_init_acpi_state(>acpi_nvdimm_state, system_io,
> pcms->fw_cfg, OBJECT(pcms));
> diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
> index aba7541..0c0bc48 100644
> --- a/hw/i386/pc_q35.c
> +++ b/hw/i386/pc_q35.c
> @@ -273,9 +273,6 @@ static void pc_q35_init(MachineState *machine)
>  /* the rest devices to which pci devfn is automatically assigned */
>  pc_vga_init(isa_bus, host_bus);
>  pc_nic_init(isa_bus, host_bus);
> -if (pcmc->pci_enabled) {
> -pc_pci_device_init(host_bus);
> -}
>  
>  if (pcms->acpi_nvdimm_state.is_enabled) {
>  nvdimm_init_acpi_state(>acpi_nvdimm_state, system_io,
> diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
> index 191505d..f3d4c4d 100644
> --- a/hw/scsi/lsi53c895a.c
> +++ b/hw/scsi/lsi53c895a.c
> @@ -2277,5 +2277,5 @@ void lsi53c895a_create(PCIBus *bus)
>  {
>  LSIState *s = LSI53C895A(pci_create_simple(bus, -1, "lsi53c895a"));
>  
> -scsi_bus_legacy_handle_cmdline(>bus, false);
> +scsi_bus_legacy_handle_cmdline(>bus);
>  }
> diff --git a/hw/scsi/scsi-bus.c b/hw/scsi/scsi-bus.c
> index b7bafbe..1eaeffc 100644
> --- a/hw/scsi/scsi-bus.c
> +++ b/hw/scsi/scsi-bus.c
> @@ -271,7 +271,7 @@ SCSIDevice *scsi_bus_legacy_add_drive(SCSIBus *bus, 
> BlockBackend *blk,
>  return SCSI_DEVICE(dev);
>  }
>  
> -void scsi_bus_legacy_handle_cmdline(SCSIBus *bus, bool deprecated)
> +void scsi_bus_legacy_handle_cmdline(SCSIBus *bus)
>  {
>  Location loc;
>  DriveInfo *dinfo;
> @@ -284,59 +284,12 @@ void scsi_bus_legacy_handle_cmdline(SCSIBus *bus, bool 
> deprecated)
>  continue;
>  }
>  qemu_opts_loc_restore(dinfo->opts);
> -if (deprecated) {
> -/* Handling -drive not claimed by machine initialization */
> -if (blk_get_attached_dev(blk_by_legacy_dinfo(dinfo))) {
> -continue;   /* claimed */
> -}
> -if (!dinfo->is_default) {
> -warn_report("bus=%d,unit=%d is deprecated with this"
> -" machine type",
> -bus->busnr, unit);
> -}
> -}
>  scsi_bus_legacy_add_drive(bus, blk_by_legacy_dinfo(dinfo),
>unit, false, -1, false, NULL, 
> _fatal);
>  }
>  loc_pop();
>  }
>  
> -static bool is_scsi_hba_with_legacy_magic(Object *obj)
> -{
> -static const char *magic[] = {
> -"am53c974", "dc390", "esp", "lsi53c810", "lsi53c895a",
> -"megasas", "megasas-gen2", "mptsas1068", "spapr-vscsi",
> -"virtio-scsi-device",
> -NULL
> -};
> -const char *typename = object_get_typename(obj);
> -int i;
> -

[Qemu-devel] [PATCH] scsi: Remove automatic creation of SCSI controllers with -drive if=scsi

2018-02-20 Thread Thomas Huth
Automatic creation of SCSI controllers for "-drive if=scsi" for x86
machines was quite a bad idea (see description of commit f778a82f0c179
for details). This is marked as deprecated since QEMU v2.9.0, and as
far as I know, nobody complained that this is still urgently required
anymore. Time to remove this now.

Suggested-by: Markus Armbruster 
Signed-off-by: Thomas Huth 
---
 hw/i386/pc.c   | 17 -
 hw/i386/pc_piix.c  |  4 
 hw/i386/pc_q35.c   |  3 ---
 hw/scsi/lsi53c895a.c   |  2 +-
 hw/scsi/scsi-bus.c | 49 +
 hw/scsi/spapr_vscsi.c  |  3 +--
 include/hw/scsi/scsi.h |  2 +-
 qemu-doc.texi  |  5 -
 vl.c   |  9 -
 9 files changed, 4 insertions(+), 90 deletions(-)

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 55e69d6..2f7746c 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1636,23 +1636,6 @@ void pc_nic_init(ISABus *isa_bus, PCIBus *pci_bus)
 rom_reset_order_override();
 }
 
-void pc_pci_device_init(PCIBus *pci_bus)
-{
-int max_bus;
-int bus;
-
-/* Note: if=scsi is deprecated with PC machine types */
-max_bus = drive_get_max_bus(IF_SCSI);
-for (bus = 0; bus <= max_bus; bus++) {
-pci_create_simple(pci_bus, -1, "lsi53c895a");
-/*
- * By not creating frontends here, we make
- * scsi_legacy_handle_cmdline() create them, and warn that
- * this usage is deprecated.
- */
-}
-}
-
 void ioapic_init_gsi(GSIState *gsi_state, const char *parent_name)
 {
 DeviceState *dev;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 456dc9e..8658bcb 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -295,10 +295,6 @@ static void pc_init1(MachineState *machine,
  PC_MACHINE_ACPI_DEVICE_PROP, _abort);
 }
 
-if (pcmc->pci_enabled) {
-pc_pci_device_init(pci_bus);
-}
-
 if (pcms->acpi_nvdimm_state.is_enabled) {
 nvdimm_init_acpi_state(>acpi_nvdimm_state, system_io,
pcms->fw_cfg, OBJECT(pcms));
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index aba7541..0c0bc48 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -273,9 +273,6 @@ static void pc_q35_init(MachineState *machine)
 /* the rest devices to which pci devfn is automatically assigned */
 pc_vga_init(isa_bus, host_bus);
 pc_nic_init(isa_bus, host_bus);
-if (pcmc->pci_enabled) {
-pc_pci_device_init(host_bus);
-}
 
 if (pcms->acpi_nvdimm_state.is_enabled) {
 nvdimm_init_acpi_state(>acpi_nvdimm_state, system_io,
diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
index 191505d..f3d4c4d 100644
--- a/hw/scsi/lsi53c895a.c
+++ b/hw/scsi/lsi53c895a.c
@@ -2277,5 +2277,5 @@ void lsi53c895a_create(PCIBus *bus)
 {
 LSIState *s = LSI53C895A(pci_create_simple(bus, -1, "lsi53c895a"));
 
-scsi_bus_legacy_handle_cmdline(>bus, false);
+scsi_bus_legacy_handle_cmdline(>bus);
 }
diff --git a/hw/scsi/scsi-bus.c b/hw/scsi/scsi-bus.c
index b7bafbe..1eaeffc 100644
--- a/hw/scsi/scsi-bus.c
+++ b/hw/scsi/scsi-bus.c
@@ -271,7 +271,7 @@ SCSIDevice *scsi_bus_legacy_add_drive(SCSIBus *bus, 
BlockBackend *blk,
 return SCSI_DEVICE(dev);
 }
 
-void scsi_bus_legacy_handle_cmdline(SCSIBus *bus, bool deprecated)
+void scsi_bus_legacy_handle_cmdline(SCSIBus *bus)
 {
 Location loc;
 DriveInfo *dinfo;
@@ -284,59 +284,12 @@ void scsi_bus_legacy_handle_cmdline(SCSIBus *bus, bool 
deprecated)
 continue;
 }
 qemu_opts_loc_restore(dinfo->opts);
-if (deprecated) {
-/* Handling -drive not claimed by machine initialization */
-if (blk_get_attached_dev(blk_by_legacy_dinfo(dinfo))) {
-continue;   /* claimed */
-}
-if (!dinfo->is_default) {
-warn_report("bus=%d,unit=%d is deprecated with this"
-" machine type",
-bus->busnr, unit);
-}
-}
 scsi_bus_legacy_add_drive(bus, blk_by_legacy_dinfo(dinfo),
   unit, false, -1, false, NULL, _fatal);
 }
 loc_pop();
 }
 
-static bool is_scsi_hba_with_legacy_magic(Object *obj)
-{
-static const char *magic[] = {
-"am53c974", "dc390", "esp", "lsi53c810", "lsi53c895a",
-"megasas", "megasas-gen2", "mptsas1068", "spapr-vscsi",
-"virtio-scsi-device",
-NULL
-};
-const char *typename = object_get_typename(obj);
-int i;
-
-for (i = 0; magic[i]; i++)
-if (!strcmp(typename, magic[i])) {
-return true;
-}
-
-return false;
-}
-
-static int scsi_legacy_handle_cmdline_cb(Object *obj, void *opaque)
-{
-SCSIBus *bus = (SCSIBus *)object_dynamic_cast(obj, TYPE_SCSI_BUS);
-
-if (bus && is_scsi_hba_with_legacy_magic(OBJECT(bus->qbus.parent))) {
-