[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH for-2.11] hw/ide/microdrive: Mark the
From: |
John Snow |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH for-2.11] hw/ide/microdrive: Mark the dscm1xxxx device with user_creatable = false |
Date: |
Mon, 28 Aug 2017 19:20:27 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 |
On 08/23/2017 11:03 PM, Thomas Huth wrote:
> QEMU currently aborts with an assertion message when the user is trying
> to remove a dscm1xxxx again:
>
> $ aarch64-softmmu/qemu-system-aarch64 -S -M integratorcp -nographic
> QEMU 2.9.93 monitor - type 'help' for more information
> (qemu) device_add dscm1xxxx,id=xyz
> (qemu) device_del xyz
> **
> ERROR:qemu/qdev-monitor.c:872:qdev_unplug: assertion failed: (hotplug_ctrl)
> Aborted (core dumped)
>
> Looks like this device has to be wired up in code and is not meant
> to be hot-pluggable, so let's mark it with user_creatable = false.
>
> Signed-off-by: Thomas Huth <address@hidden>
> ---
> hw/ide/microdrive.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/hw/ide/microdrive.c b/hw/ide/microdrive.c
> index e3fd30e..17917c0 100644
> --- a/hw/ide/microdrive.c
> +++ b/hw/ide/microdrive.c
> @@ -575,12 +575,15 @@ PCMCIACardState *dscm1xxxx_init(DriveInfo *dinfo)
> static void dscm1xxxx_class_init(ObjectClass *oc, void *data)
> {
> PCMCIACardClass *pcc = PCMCIA_CARD_CLASS(oc);
> + DeviceClass *dc = DEVICE_CLASS(oc);
>
> pcc->cis = dscm1xxxx_cis;
> pcc->cis_len = sizeof(dscm1xxxx_cis);
>
> pcc->attach = dscm1xxxx_attach;
> pcc->detach = dscm1xxxx_detach;
> + /* Reason: Needs to be wired-up in code, see dscm1xxxx_init() */
> + dc->user_creatable = false;
> }
>
> static const TypeInfo dscm1xxxx_type_info = {
>
OK; I'll look into Paolo's suggestion as a further fix, but whether or
not we treat this property as a hint, it should be set anyway as you say.
Reviewed-by: John Snow <address@hidden>
Thanks, applied to my IDE tree:
https://github.com/jnsnow/qemu/commits/ide
https://github.com/jnsnow/qemu.git
--js