From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47522) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YGNa8-0005uz-G1 for qemu-devel@nongnu.org; Wed, 28 Jan 2015 03:02:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YGNa4-0007kv-Ff for qemu-devel@nongnu.org; Wed, 28 Jan 2015 03:02:36 -0500 Received: from mx1.redhat.com ([209.132.183.28]:32926) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YGNa4-0007kp-6e for qemu-devel@nongnu.org; Wed, 28 Jan 2015 03:02:32 -0500 Date: Wed, 28 Jan 2015 10:02:23 +0200 From: "Michael S. Tsirkin" Message-ID: <20150128080223.GC16698@redhat.com> References: <15d7415a9b9082fb700052610fd2ca5b54b68525.1422429010.git.zhugh.fnst@cn.fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <15d7415a9b9082fb700052610fd2ca5b54b68525.1422429010.git.zhugh.fnst@cn.fujitsu.com> Subject: Re: [Qemu-devel] [PATCH v2 1/5] acpi, pc: Add hotunplug request cb for pc machine. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Zhu Guihua Cc: hutao@cn.fujitsu.com, qemu-devel@nongnu.org, tangchen@cn.fujitsu.com, isimatu.yasuaki@jp.fujitsu.com, pbonzini@redhat.com, guz.fnst@cn.fujitsu.com, imammedo@redhat.com On Wed, Jan 28, 2015 at 03:45:37PM +0800, Zhu Guihua wrote: > 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 > --- > 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) > { So this is just a stub, your follow-up patches replace it with something more useful? Why do we need the stub stage though? Why not just add whatever's going to be there eventually? > @@ -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 = { > -- > 1.9.3