mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
hw/qdev: Check qbus_is_hotpluggable in hotplug_unplug_allowed_common
Check the same code once in the common helper. Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> [PMD: Split from bigger patch, part 5/6] Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Message-Id: <20250110091908.64454-6-philmd@linaro.org>
This commit is contained in:
committed by
Philippe Mathieu-Daudé
parent
1bff035be7
commit
ccaca8929d
@@ -42,6 +42,14 @@ static bool qdev_hotplug_unplug_allowed_common(DeviceState *dev, BusState *bus,
|
||||
return false;
|
||||
}
|
||||
|
||||
if (bus) {
|
||||
if (!qbus_is_hotpluggable(bus)) {
|
||||
error_setg(errp, "Bus '%s' does not support hotplugging",
|
||||
bus->name);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -675,11 +675,6 @@ DeviceState *qdev_device_add_from_qdict(const QDict *opts,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (phase_check(PHASE_MACHINE_READY) && bus && !qbus_is_hotpluggable(bus)) {
|
||||
error_setg(errp, "Bus '%s' does not support hotplugging", bus->name);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (migration_is_running()) {
|
||||
error_setg(errp, "device_add not allowed while migrating");
|
||||
return NULL;
|
||||
@@ -911,12 +906,6 @@ void qdev_unplug(DeviceState *dev, Error **errp)
|
||||
return;
|
||||
}
|
||||
|
||||
if (dev->parent_bus && !qbus_is_hotpluggable(dev->parent_bus)) {
|
||||
error_setg(errp, "Bus '%s' does not support hotplugging",
|
||||
dev->parent_bus->name);
|
||||
return;
|
||||
}
|
||||
|
||||
if (migration_is_running() && !dev->allow_unplug_during_migration) {
|
||||
error_setg(errp, "device_del not allowed while migrating");
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user