Commit 2d9a982f authored by Igor Mammedov's avatar Igor Mammedov Committed by Andreas Färber
Browse files

qdev: Drop legacy hotplug fields/methods



It removes not needed anymore BusState::allow_hotplug field and
DeviceClass::unplug callback.

Signed-off-by: default avatarIgor Mammedov <imammedo@redhat.com>
Reviewed-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
parent 5f4d9173
Loading
Loading
Loading
Loading
+3 −13
Original line number Diff line number Diff line
@@ -114,7 +114,6 @@ static void qbus_set_hotplug_handler_internal(BusState *bus, Object *handler,

    object_property_set_link(OBJECT(bus), OBJECT(handler),
                             QDEV_HOTPLUG_HANDLER_PROPERTY, errp);
    bus->allow_hotplug = 1;
}

void qbus_set_hotplug_handler(BusState *bus, DeviceState *handler, Error **errp)
@@ -254,10 +253,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);
    }
}

@@ -294,17 +290,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
+1 −4
Original line number Diff line number Diff line
@@ -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);
@@ -370,6 +367,6 @@ void qbus_set_bus_hotplug_handler(BusState *bus, Error **errp);

static inline bool qbus_is_hotpluggable(BusState *bus)
{
   return bus->allow_hotplug || bus->hotplug_handler;
   return bus->hotplug_handler;
}
#endif