diff options
| author | David Hildenbrand <david@redhat.com> | 2019-02-28 13:28:49 +0100 |
|---|---|---|
| committer | Eduardo Habkost <ehabkost@redhat.com> | 2019-03-06 11:51:08 -0300 |
| commit | 14405c274e86e993e90198a49eecab3ca0ded8db (patch) | |
| tree | e00ebb90e75491783bf4f815667cb53d0a673271 /hw/core/qdev.c | |
| parent | 17cc0128da3d4a211731a79853ea81c7159b26af (diff) | |
| download | focaccia-qemu-14405c274e86e993e90198a49eecab3ca0ded8db.tar.gz focaccia-qemu-14405c274e86e993e90198a49eecab3ca0ded8db.zip | |
qdev: Provide qdev_get_bus_hotplug_handler()
Let's use a wrapper instead of looking it up manually. This function can than be reused when we explicitly want to have the bus hotplug handler (e.g. when the bus hotplug handler was overwritten by the machine hotplug handler). Reviewed-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20190228122849.4296-4-david@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw/core/qdev.c')
| -rw-r--r-- | hw/core/qdev.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 71c7facf60..512ce7ca7a 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -236,12 +236,20 @@ HotplugHandler *qdev_get_machine_hotplug_handler(DeviceState *dev) return NULL; } +HotplugHandler *qdev_get_bus_hotplug_handler(DeviceState *dev) +{ + if (dev->parent_bus) { + return dev->parent_bus->hotplug_handler; + } + return NULL; +} + HotplugHandler *qdev_get_hotplug_handler(DeviceState *dev) { HotplugHandler *hotplug_ctrl = qdev_get_machine_hotplug_handler(dev); if (hotplug_ctrl == NULL && dev->parent_bus) { - hotplug_ctrl = dev->parent_bus->hotplug_handler; + hotplug_ctrl = qdev_get_bus_hotplug_handler(dev); } return hotplug_ctrl; } |