From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59731) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y1pvP-0006wc-99 for qemu-devel@nongnu.org; Fri, 19 Dec 2014 00:16:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y1pvK-0004f7-2a for qemu-devel@nongnu.org; Fri, 19 Dec 2014 00:16:27 -0500 Received: from [59.151.112.132] (port=54641 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y1pvJ-0004eM-MS for qemu-devel@nongnu.org; Fri, 19 Dec 2014 00:16:21 -0500 Message-ID: <5493B0DE.8060203@cn.fujitsu.com> Date: Fri, 19 Dec 2014 13:00:14 +0800 From: Gu Zheng MIME-Version: 1.0 References: <1418373798-25413-1-git-send-email-guz.fnst@cn.fujitsu.com> In-Reply-To: <1418373798-25413-1-git-send-email-guz.fnst@cn.fujitsu.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 00/12] cpu: add i386 cpu hot remove support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: zhugh.fnst@cn.fujitsu.com, tangchen@cn.fujitsu.com, chen.fan.fnst@cn.fujitsu.com, isimatu.yasuaki@jp.fujitsu.com, anshul.makkar@profitbricks.com, Gu Zheng , imammedo@redhat.com, afaerber@suse.de ping... On 12/12/2014 04:43 PM, Gu Zheng 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. > [PATCH] Common unplug and unplug request cb for memory and CPU hot-unplug. > https://lists.nongnu.org/archive/html/qemu-devel/2014-12/msg01462.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 V2 0/6] cpu: add device_add foo-x86_64-cpu support > https://lists.nongnu.org/archive/html/qemu-devel/2014-12/msg01812.html > > --- > 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 (6): > i386/cpu: add instance finalize callback > 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 | 10 ++++ > include/sysemu/kvm.h | 1 + > kvm-all.c | 57 +++++++++++++++++++++++- > target-i386/cpu.c | 54 ++++++++++++++++++++++ > 19 files changed, 387 insertions(+), 27 deletions(-) >