[libvirt] [RFC PATCH v2 00/12] qemu: add support to hot-plug/unplug cpu device

Zhu Guihua zhugh.fnst at cn.fujitsu.com
Thu Feb 12 11:53:13 UTC 2015


Hi all,

Any comments about this series?

I'm not sure whether this series' method to support cpu hotplug in
libvirt is reasonable, so could anyone give more suggestions about this
function? Thanks.

Regards,
Zhu


On Wed, 2015-02-04 at 17:18 +0800, Zhu Guihua wrote:
> If you apply the folowing patchset in order
> [PATCH v3 0/7] cpu: add device_add foo-x86_64-cpu support
> https://lists.nongnu.org/archive/html/qemu-devel/2015-01/msg01552.html,
> [PATCH v2 0/5] Common unplug and unplug request cb for memory and CPU hot-unplug
> https://lists.nongnu.org/archive/html/qemu-devel/2015-01/msg03929.html
> and [PATCH v2 00/11] cpu: add i386 cpu hot remove support
> https://lists.nongnu.org/archive/html/qemu-devel/2015-01/msg01557.html,
> qemu can support hotplug and hot-unplug cpu device.
> 
> So this patch series will make libvirt support hotplug and hot-unplug cpu
> device for qemu driver.
> 
> This patch series add a new API to support cpu hot-plug/unplug, and leave the
> existing API by invoking qemu command 'cpu-add' as a legacy.
> 
> This patch series realize cpu hot-plug/unplug by libvirt command
> 'attach-device' and 'detach-device', and invoke qemu command 'device_add'
> and 'device_del' to support this feature.
> 
> v2:
> - update cpu device's definition, and cpu's apic_id is hidded to users.
> - add check for compatibility between host cpu and hot added cpu
> - add a capability for *-x86_64-cpu
> 
> Zhu Guihua (12):
>   domain_conf: add support for cpu device configuration in XML
>   domain_conf: introduce cpu def helpers
>   domain_conf: introduce cpu device hotplug helpers
>   qemu_driver: implement cpu device hotplug on config level
>   qemu_command: introduce a func for cpu device alias assignment
>   domain_conf: allocate cpu's apic id dynamically
>   qemu: add a capability for x86_64-cpu
>   qemu: introduce qemuBuildCPUDeviceStr
>   qemu: implement cpu device hotplug on live level
>   qemu: implement cpu device hotunplug on live level
>   qemu_monitor_json: sort JSON array of cpu info
>   qemu_driver: detect threads corresponding to Vcpus
> 
>  docs/formatdomain.html.in     |  28 ++++
>  docs/schemas/domaincommon.rng |   3 +
>  src/conf/domain_conf.c        | 189 +++++++++++++++++++++++++-
>  src/conf/domain_conf.h        |  33 +++++
>  src/libvirt_private.syms      |   6 +
>  src/qemu/qemu_capabilities.c  |   3 +
>  src/qemu/qemu_capabilities.h  |   1 +
>  src/qemu/qemu_command.c       | 120 +++++++++++++++++
>  src/qemu/qemu_command.h       |  10 ++
>  src/qemu/qemu_driver.c        | 299 ++++++++++++++++++++++++------------------
>  src/qemu/qemu_driver.h        |   8 ++
>  src/qemu/qemu_hotplug.c       | 140 ++++++++++++++++++++
>  src/qemu/qemu_hotplug.h       |  12 ++
>  src/qemu/qemu_monitor_json.c  |  31 ++++-
>  src/util/virbitmap.c          |   2 +-
>  src/util/virbitmap.h          |   2 +
>  16 files changed, 753 insertions(+), 134 deletions(-)
> 





More information about the libvir-list mailing list