Thomas Huth <[email protected]> writes:

> On 11/03/2026 15.55, Peter Maydell wrote:
>> On Wed, 11 Mar 2026 at 14:10, Markus Armbruster <[email protected]> wrote:
>>>
>>> Watch this:
>>>
>>>      $ qemu-system-aarch64 -S -display none -M virt -device acpi-ged,help
>>>      qemu-system-aarch64: ../hw/core/qdev.c:858: qdev_get_machine: 
>>> Assertion `dev' failed.
>>>
>>> A number of devices crash this way:
>>>
>>> * acpi-ged (aarch64 arm i386 loongarch64 x86_64)
>>> * fsl-imx6 (aarch64 arm)
>>> * fsl-imx7 (aarch64 arm)
>>> * fsl-imx8mp (aarch64)
>>> * microchip.pfsoc (riscv64)
>>> * riscv.sifive.e.soc (riscv32 riscv64)
>>> * xlnx-zynqmp (aarch64)
>> 
>> Largely speaking these are pretty useless to try to create on
>> the command line, of course...
>
> Agreed, but note that you can also query help for non-user-creatable devices 
> normally, e.g.:
>
> $ ./qemu-system-x86_64 -device port92
> qemu-system-x86_64: -device port92: Parameter 'driver' expects a pluggable 
> device type
> $ ./qemu-system-x86_64 -device port92,help
> port92 options:
>    a20[0]=<link<irq>>
>    port92[0]=<child<memory-region>>

Correct.

QOM introspection needs to create and destroy an object, and this must
effectively be a no-op.  I don't like that part of its design, but it's
what we got.

> ... so we likely should fix the crashes anyway, even if we decide to mark 
> the devices with user_creatable = false.

In fact, the devices mentioned above are all marked already.


Reply via email to