On Wed, Jan 28, 2015 at 03:45:37PM +0800, Zhu Guihua wrote:
> From: Tang Chen <tangc...@cn.fujitsu.com>
> 
> 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 <imamm...@redhat.com>
> Signed-off-by: Tang Chen <tangc...@cn.fujitsu.com>
> Signed-off-by: Zhu Guihua <zhugh.f...@cn.fujitsu.com>
> ---
>  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

Reply via email to