[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 00/10] cpu: add device_add foo-x86_64-cpu and i3
From: |
Gu Zheng |
Subject: |
[Qemu-devel] [RFC PATCH 00/10] cpu: add device_add foo-x86_64-cpu and i386 cpu hot remove support |
Date: |
Thu, 7 Aug 2014 12:53:58 +0800 |
This series is based on the previous patchset from Chen Fan:
https://lists.nongnu.org/archive/html/qemu-devel/2014-05/msg02360.html
https://lists.nongnu.org/archive/html/qemu-devel/2013-12/msg04266.html
Patch 1~3: add device_add foo-x86_64-cpu support
These three patches try to make cpu hotplug with device_add, and make
"-device foo-x86_64-cpu" availableļ¼also we can set apic-id
property with command line, if without setting apic-id property,
we offer the first unoccupied apic id as the default new apic id.
When hotplug cpu with device_add, additional check of APIC ID will be
done after cpu object initialization which was different from
'cpu_add' command that check 'ids' at the beginning.
Patch 4~10: add i386 cpu hot remove support
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.
Chen Fan (6):
cpu: introduce CpuTopoInfo structure for argument simplification
cpu: add device_add foo-x86_64-cpu support
x86: add x86_cpu_unrealizefn() for cpu apic remove
qom cpu: rename variable 'cpu_added_notifier' to
'cpu_hotplug_notifier'
i386: implement pc interface cpu_common_unrealizefn() in qom/cpu.c
cpu hotplug: implement function cpu_status_write() for vcpu ejection
Gu Zheng (4):
qom/cpu: move register_vmstate to common CPUClass.realizefn
i386: add cpu device_del support
qom cpu: add UNPLUG cpu notify support
cpus: reclaim allocated vCPU objects
cpus.c | 44 ++++++++++++
exec.c | 32 +++++----
hw/acpi/cpu_hotplug.c | 55 +++++++++++++--
hw/acpi/ich9.c | 13 ++--
hw/acpi/piix4.c | 21 +++---
hw/i386/acpi-dsdt-cpu-hotplug.dsl | 6 ++-
hw/i386/kvm/apic.c | 8 ++
hw/i386/pc.c | 2 +-
hw/intc/apic.c | 10 +++
hw/intc/apic_common.c | 26 ++++++-
include/hw/acpi/cpu_hotplug.h | 14 ++++-
include/hw/acpi/ich9.h | 2 +-
include/hw/cpu/icc_bus.h | 1 +
include/hw/i386/apic_internal.h | 3 +
include/qom/cpu.h | 12 +++
include/sysemu/kvm.h | 1 +
include/sysemu/sysemu.h | 2 +-
kvm-all.c | 57 +++++++++++++++-
qdev-monitor.c | 1 +
qom/cpu.c | 29 +++++++--
target-i386/cpu-qom.h | 1 +
target-i386/cpu.c | 138 ++++++++++++++++++++++++++++++++++++-
target-i386/topology.h | 51 +++++++++----
23 files changed, 464 insertions(+), 65 deletions(-)
--
1.7.7
- [Qemu-devel] [RFC PATCH 00/10] cpu: add device_add foo-x86_64-cpu and i386 cpu hot remove support,
Gu Zheng <=
- [Qemu-devel] [RFC PATCH 01/10] cpu: introduce CpuTopoInfo structure for argument simplification, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 02/10] qom/cpu: move register_vmstate to common CPUClass.realizefn, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 03/10] cpu: add device_add foo-x86_64-cpu support, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 04/10] x86: add x86_cpu_unrealizefn() for cpu apic remove, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 05/10] i386: add cpu device_del support, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 06/10] qom cpu: rename variable 'cpu_added_notifier' to 'cpu_hotplug_notifier', Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 07/10] qom cpu: add UNPLUG cpu notify support, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 08/10] i386: implement pc interface cpu_common_unrealizefn() in qom/cpu.c, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 09/10] cpu hotplug: implement function cpu_status_write() for vcpu ejection, Gu Zheng, 2014/08/07
- [Qemu-devel] [RFC PATCH 10/10] cpus: reclaim allocated vCPU objects, Gu Zheng, 2014/08/07