[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 29/30] qdev: drop legacy hotplug fields/methods
From: |
Igor Mammedov |
Subject: |
[Qemu-devel] [PATCH 29/30] qdev: drop legacy hotplug fields/methods |
Date: |
Wed, 24 Sep 2014 11:48:18 +0000 |
It removes not needed anymore BusState.allow_hotplug field and
DeviceClass.unplug callback.
Signed-off-by: Igor Mammedov <address@hidden>
---
hw/core/qdev.c | 15 +++------------
include/hw/qdev-core.h | 7 +------
2 files changed, 4 insertions(+), 18 deletions(-)
diff --git a/hw/core/qdev.c b/hw/core/qdev.c
index 1d1b113..4182cc3 100644
--- a/hw/core/qdev.c
+++ b/hw/core/qdev.c
@@ -239,10 +239,7 @@ void qdev_unplug(DeviceState *dev, Error **errp)
hotplug_handler_unplug(dev->parent_bus->hotplug_handler, dev,
errp);
}
} else {
- assert(dc->unplug != NULL);
- if (dc->unplug(dev) < 0) { /* legacy handler */
- error_set(errp, QERR_UNDEFINED_ERROR);
- }
+ assert(0);
}
}
@@ -279,17 +276,11 @@ void qbus_reset_all_fn(void *opaque)
}
/* can be used as ->unplug() callback for the simple cases */
-int qdev_simple_unplug_cb(DeviceState *dev)
-{
- /* just zap it */
- object_unparent(OBJECT(dev));
- return 0;
-}
-
void qdev_simple_device_unplug_cb(HotplugHandler *hotplug_dev,
DeviceState *dev, Error **errp)
{
- qdev_simple_unplug_cb(dev);
+ /* just zap it */
+ object_unparent(OBJECT(dev));
}
/* Like qdev_init(), but terminate program via error_report() instead of
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h
index 653ff4a..01443c9 100644
--- a/include/hw/qdev-core.h
+++ b/include/hw/qdev-core.h
@@ -126,7 +126,6 @@ typedef struct DeviceClass {
/* Private to qdev / bus. */
qdev_initfn init; /* TODO remove, once users are converted to realize */
- qdev_event unplug;
qdev_event exit; /* TODO remove, once users are converted to unrealize */
const char *bus_type;
} DeviceClass;
@@ -210,7 +209,6 @@ struct BusState {
Object obj;
DeviceState *parent;
const char *name;
- int allow_hotplug;
HotplugHandler *hotplug_handler;
int max_index;
bool realized;
@@ -264,7 +262,6 @@ void qdev_init_nofail(DeviceState *dev);
void qdev_set_legacy_instance_id(DeviceState *dev, int alias_id,
int required_for_version);
void qdev_unplug(DeviceState *dev, Error **errp);
-int qdev_simple_unplug_cb(DeviceState *dev);
void qdev_simple_device_unplug_cb(HotplugHandler *hotplug_dev,
DeviceState *dev, Error **errp);
void qdev_machine_creation_done(void);
@@ -366,8 +363,6 @@ char *qdev_get_dev_path(DeviceState *dev);
static inline void qbus_set_hotplug_handler(BusState *bus, DeviceState
*handler,
Error **errp)
{
- bus->allow_hotplug = 1;
-
if (!object_dynamic_cast(OBJECT(handler), TYPE_HOTPLUG_HANDLER)) {
return;
}
@@ -378,6 +373,6 @@ static inline void qbus_set_hotplug_handler(BusState *bus,
DeviceState *handler,
static inline bool qbus_is_hotpluggable(BusState *bus)
{
- return bus->allow_hotplug || bus->hotplug_handler;
+ return bus->hotplug_handler;
}
#endif
--
1.8.3.1
[Qemu-devel] [PATCH 29/30] qdev: drop legacy hotplug fields/methods,
Igor Mammedov <=
[Qemu-devel] [PATCH 03/30] test: virtio-rng: check if hot-plug/unplug works, Igor Mammedov, 2014/09/24
[Qemu-devel] [PATCH 11/30] qdev: HotplugHandler: provide unplug callback, Igor Mammedov, 2014/09/24
[Qemu-devel] [PATCH 05/30] test: virtio-blk: check if hot-plug/unplug works, Igor Mammedov, 2014/09/24