[Qemu-devel] [PATCH for-2.13] spapr: drop useless dynamic sysbus device sanity check

Greg Kurz posted 1 patch 6 years ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/152345888086.82965.6686500865958674552.stgit@bahia.lan
Test checkpatch passed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test s390x passed
hw/ppc/spapr.c |   18 ------------------
1 file changed, 18 deletions(-)
[Qemu-devel] [PATCH for-2.13] spapr: drop useless dynamic sysbus device sanity check
Posted by Greg Kurz 6 years ago
Since commit 7da79a167aa11, the machine class init function registers
dynamic sysbus device types it supports. Passing an unsupported device
type on the command line causes QEMU to exit with an error message
just after machine init.

It is hence not needed to do the same sanity check at machine reset.

Signed-off-by: Greg Kurz <groug@kaod.org>
---
 hw/ppc/spapr.c |   18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 3ffadd6ac7ce..637e50e6d10b 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1440,21 +1440,6 @@ void spapr_setup_hpt_and_vrma(sPAPRMachineState *spapr)
     }
 }
 
-static void find_unknown_sysbus_device(SysBusDevice *sbdev, void *opaque)
-{
-    bool matched = false;
-
-    if (object_dynamic_cast(OBJECT(sbdev), TYPE_SPAPR_PCI_HOST_BRIDGE)) {
-        matched = true;
-    }
-
-    if (!matched) {
-        error_report("Device %s is not supported by this machine yet.",
-                     qdev_fw_name(DEVICE(sbdev)));
-        exit(1);
-    }
-}
-
 static int spapr_reset_drcs(Object *child, void *opaque)
 {
     sPAPRDRConnector *drc =
@@ -1478,9 +1463,6 @@ static void spapr_machine_reset(void)
     void *fdt;
     int rc;
 
-    /* Check for unknown sysbus devices */
-    foreach_dynamic_sysbus_device(find_unknown_sysbus_device, NULL);
-
     spapr_caps_reset(spapr);
 
     first_ppc_cpu = POWERPC_CPU(first_cpu);


Re: [Qemu-devel] [PATCH for-2.13] spapr: drop useless dynamic sysbus device sanity check
Posted by David Gibson 6 years ago
On Wed, Apr 11, 2018 at 05:01:20PM +0200, Greg Kurz wrote:
> Since commit 7da79a167aa11, the machine class init function registers
> dynamic sysbus device types it supports. Passing an unsupported device
> type on the command line causes QEMU to exit with an error message
> just after machine init.
> 
> It is hence not needed to do the same sanity check at machine reset.
> 
> Signed-off-by: Greg Kurz <groug@kaod.org>

Applied to ppc-for-2.13, thanks.

> ---
>  hw/ppc/spapr.c |   18 ------------------
>  1 file changed, 18 deletions(-)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 3ffadd6ac7ce..637e50e6d10b 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1440,21 +1440,6 @@ void spapr_setup_hpt_and_vrma(sPAPRMachineState *spapr)
>      }
>  }
>  
> -static void find_unknown_sysbus_device(SysBusDevice *sbdev, void *opaque)
> -{
> -    bool matched = false;
> -
> -    if (object_dynamic_cast(OBJECT(sbdev), TYPE_SPAPR_PCI_HOST_BRIDGE)) {
> -        matched = true;
> -    }
> -
> -    if (!matched) {
> -        error_report("Device %s is not supported by this machine yet.",
> -                     qdev_fw_name(DEVICE(sbdev)));
> -        exit(1);
> -    }
> -}
> -
>  static int spapr_reset_drcs(Object *child, void *opaque)
>  {
>      sPAPRDRConnector *drc =
> @@ -1478,9 +1463,6 @@ static void spapr_machine_reset(void)
>      void *fdt;
>      int rc;
>  
> -    /* Check for unknown sysbus devices */
> -    foreach_dynamic_sysbus_device(find_unknown_sysbus_device, NULL);
> -
>      spapr_caps_reset(spapr);
>  
>      first_ppc_cpu = POWERPC_CPU(first_cpu);
> 

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson