From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38012) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOCRN-0001WX-SI for qemu-devel@nongnu.org; Wed, 18 Feb 2015 16:45:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YOCRM-0003Jx-SL for qemu-devel@nongnu.org; Wed, 18 Feb 2015 16:45:53 -0500 Received: from mail.kernel.org ([198.145.29.136]:51380) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOCRM-0003Jm-MG for qemu-devel@nongnu.org; Wed, 18 Feb 2015 16:45:52 -0500 Date: Wed, 18 Feb 2015 22:45:44 +0100 From: "Michael S. Tsirkin" Message-ID: <1424295164-4774-18-git-send-email-mst@redhat.com> References: <1424295164-4774-1-git-send-email-mst@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1424295164-4774-1-git-send-email-mst@redhat.com> Subject: [Qemu-devel] [PULL 17/96] acpi, pc: Add hotunplug request cb for pc machine. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , Zhu Guihua , Juan Quintela , dgilbert@redhat.com, Tang Chen , Anthony Liguori , Paolo Bonzini , Igor Mammedov , Richard Henderson From: Tang Chen Memory and CPU hot unplug are both asynchronous procedures. They both need unplug request callback to initiate unplug operation. Add unplug handler to pc machine that will be used by following CPU and memory unplug patches. Reviewed-by: Igor Mammedov Signed-off-by: Tang Chen Signed-off-by: Zhu Guihua Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- hw/i386/pc.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/hw/i386/pc.c b/hw/i386/pc.c index c7af6aa..15ee10a 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -1680,6 +1680,13 @@ static void pc_machine_device_plug_cb(HotplugHandler *hotplug_dev, } } +static void pc_machine_device_unplug_request_cb(HotplugHandler *hotplug_dev, + DeviceState *dev, Error **errp) +{ + error_setg(errp, "acpi: device unplug request for not supported device" + " type: %s", object_get_typename(OBJECT(dev))); +} + static HotplugHandler *pc_get_hotpug_handler(MachineState *machine, DeviceState *dev) { @@ -1809,6 +1816,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data) pcmc->get_hotplug_handler = mc->get_hotplug_handler; mc->get_hotplug_handler = pc_get_hotpug_handler; hc->plug = pc_machine_device_plug_cb; + hc->unplug_request = pc_machine_device_unplug_request_cb; } static const TypeInfo pc_machine_info = { -- MST