On 5 April 2018 at 07:09, Thomas Huth <th...@redhat.com> wrote:
> QEMU currently exits unexpectedly when trying to introspect the fsl-imx6
> and fsl-imx7 devices on systems with many SMP CPUs:
>
> $ echo "{'execute':'qmp_capabilities'}"\
>        "{'execute':'device-list-properties',"\
>        " 'arguments':{'typename':'fsl,imx6'}}" \
>        | arm-softmmu/qemu-system-arm -M virt,accel=qtest -qmp stdio -smp 8
> {"QMP": {"version": {"qemu": {"micro": 91, "minor": 11, "major": 2},
>  "package": "build-all"}, "capabilities": []}}
> {"return": {}}
> fsl,imx6: Only 4 CPUs are supported (8 requested)
>
> And:
>
> $ echo "{'execute':'qmp_capabilities'}"\
>        "{'execute':'device-list-properties',"\
>        " 'arguments':{'typename':'fsl,imx7'}}" \
>        | arm-softmmu/qemu-system-arm -M raspi2,accel=qtest -qmp stdio
> {"QMP": {"version": {"qemu": {"micro": 91, "minor": 11, "major": 2},
>  "package": "build-all"}, "capabilities": []}}
> {"return": {}}
> fsl,imx7: Only 2 CPUs are supported (4 requested)
>
> This happens because these devices are doing an exit() from their
> instance_init function - which should never be done since instance_init
> can be called at any time for device introspection! Fix it by moving
> the deadly check into the realize() function instead.
>
> Signed-off-by: Thomas Huth <th...@redhat.com>



Applied to target-arm.next, thanks.

-- PMM

Reply via email to