qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] [PATCH] hw/arm/allwinner-a10: Mark the allwinner-a10 devi


From: Eduardo Habkost
Subject: Re: [Qemu-arm] [PATCH] hw/arm/allwinner-a10: Mark the allwinner-a10 device with user_creatable = false
Date: Wed, 23 Aug 2017 14:21:18 -0300
User-agent: Mutt/1.8.0 (2017-02-23)

On Tue, Aug 22, 2017 at 05:46:29PM +0200, Thomas Huth wrote:
> QEMU currently exits unexpectedly when the user accidentially
> tries to do something like this:
> 
> $ aarch64-softmmu/qemu-system-aarch64 -S -M integratorcp -nographic
> QEMU 2.9.93 monitor - type 'help' for more information
> (qemu) device_add allwinner-a10
> Unsupported NIC model: smc91c111
> 
> Exiting just due to a "device_add" should not happen. Looking closer
> at the the realize and instance_init function of this device also
> reveals that it is using serial_hds and nd_table directly there, so
> this device is clearly not creatable by the user and should be marked
> accordingly.
> 
> Signed-off-by: Thomas Huth <address@hidden>
> ---
>  hw/arm/allwinner-a10.c    | 2 ++
>  scripts/device-crash-test | 1 -
>  2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/arm/allwinner-a10.c b/hw/arm/allwinner-a10.c
> index f62a9a3..43a3f01 100644
> --- a/hw/arm/allwinner-a10.c
> +++ b/hw/arm/allwinner-a10.c
> @@ -118,6 +118,8 @@ static void aw_a10_class_init(ObjectClass *oc, void *data)
>      DeviceClass *dc = DEVICE_CLASS(oc);
>  
>      dc->realize = aw_a10_realize;
> +    /* Reason: Uses serial_hds in realize and nd_table in instance_init */
> +    dc->user_creatable = false;

I assume this patch will be replaced by one changing TYPE_DEVICE
to default to user_creatable=false, based on the replies to the
hw/misc/auxbus.c patch?


>  }
>  
>  static const TypeInfo aw_a10_type_info = {
> diff --git a/scripts/device-crash-test b/scripts/device-crash-test
> index 8eb2d02..74aee68 100755
> --- a/scripts/device-crash-test
> +++ b/scripts/device-crash-test
> @@ -187,7 +187,6 @@ ERROR_WHITELIST = [
>      {'log':r"Device [\w.,-]+ can not be dynamically instantiated"},
>      {'log':r"Platform Bus: Can not fit MMIO region of size "},
>      # other more specific errors we will ignore:
> -    {'device':'allwinner-a10', 'log':"Unsupported NIC model:"},
>      {'device':'.*-spapr-cpu-core', 'log':r"CPU core type should be"},
>      {'log':r"MSI(-X)? is not supported by interrupt controller"},
>      {'log':r"pxb-pcie? devices cannot reside on a PCIe? bus"},
> -- 
> 1.8.3.1
> 

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]