@@ -492,6 +492,9 @@ static void qbus_list_bus(DeviceState *dev)
BusState *child;
const char *sep = " ";
+ if (monitor_cur_is_qmp()) {
+ return;
+ }
error_printf("child busses at \"%s\":",
dev->id ? dev->id : dev->info->name);
QTAILQ_FOREACH(child, &dev->child_bus, sibling) {
@@ -506,6 +509,9 @@ static void qbus_list_dev(BusState *bus)
DeviceState *dev;
const char *sep = " ";
+ if (monitor_cur_is_qmp()) {
+ return;
+ }
error_printf("devices at \"%s\":", bus->name);
QTAILQ_FOREACH(dev, &bus->children, sibling) {
error_printf("%s\"%s\"", sep, dev->info->name);
@@ -611,9 +617,7 @@ static BusState *qbus_find(const char *path)
dev = qbus_find_dev(bus, elem);
if (!dev) {
qerror_report(QERR_DEVICE_NOT_FOUND, elem);
- if (!monitor_cur_is_qmp()) {
- qbus_list_dev(bus);
- }
+ qbus_list_dev(bus);
return NULL;
}
@@ -633,9 +637,7 @@ search_dev_bus:
return QTAILQ_FIRST(&dev->child_bus);
default:
qerror_report(QERR_DEVICE_MULTIPLE_BUSSES, elem);
- if (!monitor_cur_is_qmp()) {
- qbus_list_bus(dev);
- }
+ qbus_list_bus(dev);
return NULL;
}
}
@@ -658,9 +660,7 @@ search_dev_bus:
}
}
qerror_report(QERR_BUS_NOT_FOUND, elem);
- if (!monitor_cur_is_qmp()) {
- qbus_list_bus(dev);
- }
+ qbus_list_bus(dev);
return NULL;
}
}
@@ -695,9 +695,7 @@ static DeviceState *qdev_find(const char *path)
dev = qdev_find_id_recursive(main_system_bus, path);
if (!dev) {
qerror_report(QERR_DEVICE_NOT_FOUND, dev_name);
- if (!monitor_cur_is_qmp()) {
- qbus_list_dev(bus);
- }
+ qbus_list_dev(bus);
}
}
return dev;