On Tue, 5 Feb 2019 at 12:58, Thomas Huth <[email protected]> wrote: > > The device can not be instantiated by the user and QEMU currently > aborts when you try to use it: > > $ x86_64-softmmu/qemu-system-x86_64 -device cpu-cluster > qemu-system-x86_64: hw/cpu/cluster.c:73: cpu_cluster_realize: > Assertion `cbdata.cpu_count > 0' failed. > Aborted (core dumped) > > Since this is an internal device only, mark it with user_creatable = false. > > Signed-off-by: Thomas Huth <[email protected]> > --- > hw/cpu/cluster.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/hw/cpu/cluster.c b/hw/cpu/cluster.c > index 25f9070..6f5f037 100644 > --- a/hw/cpu/cluster.c > +++ b/hw/cpu/cluster.c > @@ -79,6 +79,9 @@ static void cpu_cluster_class_init(ObjectClass *klass, void > *data) > > dc->props = cpu_cluster_properties; > dc->realize = cpu_cluster_realize; > + > + /* This is not directly for users, CPU children must be attached by code > */ > + dc->user_creatable = false; > } > > static const TypeInfo cpu_cluster_type_info = { > --
Reviewed-by: Peter Maydell <[email protected]> Would it be possible to add a 'make check' test that every device we claim to be user-creatable can be created without crashing ? thanks -- PMM
