Message ID | 20200620153837.14222-1-f4bug@amsat.org |
---|---|
State | New |
Headers | show |
Series | hw/core/qdev: Increase qdev_realize() kindness | expand |
diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 2131c7f951..dd3c90d37a 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -392,8 +392,11 @@ bool qdev_realize(DeviceState *dev, BusState *bus, Error **errp) if (bus) { qdev_set_parent_bus(dev, bus); - } else { - assert(!DEVICE_GET_CLASS(dev)->bus_type); + } else if (DEVICE_GET_CLASS(dev)->bus_type) { + error_report("%s: Unexpected bus '%s' for device '%s'", + __func__, DEVICE_GET_CLASS(dev)->bus_type, + object_get_typename(OBJECT(dev))); + abort(); } object_property_set_bool(OBJECT(dev), true, "realized", &err);
Since commit 510ef98dca5, qdev_realize() aborts if bus-less device is realized on a bus. Be kind with the developer by displaying a hint about what is wrong. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- hw/core/qdev.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)