On Thu, 2015-02-12 at 19:49 +0800, Zhu Guihua wrote: > On Tue, 2015-02-10 at 20:38 +0800, Zhi Yong Wu wrote: > > On Fri, Feb 6, 2015 at 3:54 PM, Zhu Guihua <zhugh.f...@cn.fujitsu.com> > > wrote: > > > On Tue, 2015-02-03 at 16:41 +0800, Zhi Yong Wu wrote: > > >> HI, > > >> > > >> Can you push the patchset to a branch on github? It will be convenient > > >> for other guys to do some tests. > > > > > > sorry for late reply. > > > I had pushed into https://github.com/zhugh/qemu.git > > > The patchset is on branch cpu-hotplug. > > > > > > Welcome to test, Thanks. > > HI, > > > > Can you let me know why device_add can't support the vCPU with 'host' model? > > > > > > > I have not noticed this before, thanks for your mentioning. > > host_x86_cpu does not support hotplug by default, we will fix this in > next version.
I underestimated the complexity of this issue, and expect to handle this in v5 for x86_64-cpu device_add. Thanks. Regards, Zhu > Regards, > Zhu > > > > Regards, > > > Zhu > > > > > >> > > >> On Wed, Jan 14, 2015 at 3:44 PM, Zhu Guihua <zhugh.f...@cn.fujitsu.com> > > >> wrote: > > >> > This series is based on chen fan's previous i386 cpu hot remove > > >> > patchset: > > >> > https://lists.nongnu.org/archive/html/qemu-devel/2013-12/msg04266.html > > >> > > > >> > Via implementing ACPI standard methods _EJ0 in ACPI table, after Guest > > >> > OS remove one vCPU online, the fireware will store removed bitmap to > > >> > QEMU, then QEMU could know to notify the assigned vCPU of exiting. > > >> > Meanwhile, intruduce the QOM command 'device_del' to remove vCPU from > > >> > QEMU itself. > > >> > > > >> > The whole work is based on the new hot plug/unplug framework, ,the > > >> > unplug request > > >> > callback does the pre-check and send the request, unplug callback does > > >> > the > > >> > removal handling. > > >> > > > >> > This series depends on tangchen's common hot plug/unplug enhance > > >> > patchset. > > >> > [RESEND PATCH v1 0/5] Common unplug and unplug request cb for memory > > >> > and CPU hot-unplug > > >> > https://lists.nongnu.org/archive/html/qemu-devel/2015-01/msg00429.html > > >> > > > >> > The is the second half of the previous series: > > >> > [RFC V2 00/10] cpu: add device_add foo-x86_64-cpu and i386 cpu hot > > >> > remove support > > >> > https://lists.nongnu.org/archive/html/qemu-devel/2014-08/msg04779.html > > >> > > > >> > If you want to test the series, you need to apply the 'device_add > > >> > foo-x86_64-cpu' > > >> > patchset first: > > >> > [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 > > >> > > > >> > --- > > >> > Changelog since v1: > > >> > -rebase on the latest version. > > >> > -delete patch i386/cpu: add instance finalize callback, and put it > > >> > into patchset > > >> > [PATCH v3 0/6] cpu: add device_add foo-x86_64-cpu support. > > >> > > > >> > Changelog since RFC: > > >> > -splited the i386 cpu hot remove into single thread. > > >> > -replaced apic_no with apic_id, so does the related stuff to make it > > >> > work with arbitrary CPU hotadd. > > >> > -add the icc_device_unrealize callback to handle apic unrealize. > > >> > -rework on the new hot plug/unplug platform. > > >> > --- > > >> > > > >> > Chen Fan (2): > > >> > x86: add x86_cpu_unrealizefn() for cpu apic remove > > >> > cpu hotplug: implement function cpu_status_write() for vcpu ejection > > >> > > > >> > Gu Zheng (5): > > >> > acpi/cpu: add cpu hot unplug request callback function > > >> > acpi/piix4: add cpu hot unplug callback support > > >> > acpi/ich9: add cpu hot unplug support > > >> > pc: add cpu hot unplug callback support > > >> > cpus: reclaim allocated vCPU objects > > >> > > > >> > Zhu Guihua (4): > > >> > acpi/piix4: add cpu hot unplug request callback support > > >> > acpi/ich9: add cpu hot unplug request callback support > > >> > pc: add cpu hot unplug request callback support > > >> > acpi/cpu: add cpu hot unplug callback function > > >> > > > >> > cpus.c | 44 ++++++++++++++++++++ > > >> > hw/acpi/cpu_hotplug.c | 88 > > >> > ++++++++++++++++++++++++++++++++++++--- > > >> > hw/acpi/ich9.c | 17 ++++++-- > > >> > hw/acpi/piix4.c | 12 +++++- > > >> > hw/core/qdev.c | 2 +- > > >> > hw/cpu/icc_bus.c | 11 +++++ > > >> > hw/i386/acpi-dsdt-cpu-hotplug.dsl | 6 ++- > > >> > hw/i386/kvm/apic.c | 8 ++++ > > >> > hw/i386/pc.c | 62 +++++++++++++++++++++++++-- > > >> > hw/intc/apic.c | 10 +++++ > > >> > hw/intc/apic_common.c | 21 ++++++---- > > >> > include/hw/acpi/cpu_hotplug.h | 8 ++++ > > >> > include/hw/cpu/icc_bus.h | 1 + > > >> > include/hw/i386/apic_internal.h | 1 + > > >> > include/hw/qdev-core.h | 1 + > > >> > include/qom/cpu.h | 9 ++++ > > >> > include/sysemu/kvm.h | 1 + > > >> > kvm-all.c | 57 ++++++++++++++++++++++++- > > >> > target-i386/cpu.c | 46 ++++++++++++++++++++ > > >> > 19 files changed, 378 insertions(+), 27 deletions(-) > > >> > > > >> > -- > > >> > 1.9.3 > > >> > > > >> > > > >> > > >> > > >> > > > > > > > > > > > > > > >