From: Tyrel Datwyler <tyr...@linux.vnet.ibm.com> This uses extension of existing EPOW interrupt/event mechanism to notify userspace tools like librtas/drmgr to handle in-guest configuration/cleanup operations in response to device_add/device_del.
Userspace tools that don't implement this extension will need to be run manually in response/advance of device_add/device_del, respectively. Signed-off-by: Tyrel Datwyler <tyr...@linux.vnet.ibm.com> Signed-off-by: Michael Roth <mdr...@linux.vnet.ibm.com> --- hw/ppc/spapr_pci.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c index 94e33b4..f17f984 100644 --- a/hw/ppc/spapr_pci.c +++ b/hw/ppc/spapr_pci.c @@ -705,6 +705,9 @@ static void spapr_phb_hot_plug(HotplugHandler *plug_handler, g_assert(drc); spapr_device_hotplug_add(drc, phb, pdev); + if (plugged_dev->hotplugged) { + spapr_hotplug_req_add_event(drc); + } } static void spapr_phb_hot_unplug(HotplugHandler *plug_handler, @@ -722,6 +725,7 @@ static void spapr_phb_hot_unplug(HotplugHandler *plug_handler, } spapr_device_hotplug_remove(drc, phb, pdev); + spapr_hotplug_req_remove_event(drc); } static void spapr_phb_realize(DeviceState *dev, Error **errp) -- 1.9.1