Message ID | 20231009203601.17584-1-salil.mehta@huawei.com (mailing list archive) |
---|---|
Headers | show |
Series | Add architecture agnostic code to support vCPU Hotplug | expand |
Hi Salil, On 10-10-2023 02:05, Salil Mehta wrote: > Virtual CPU hotplug support is being added across various architectures[1][3]. > This series adds various code bits common across all architectures: > > 1. vCPU creation and Parking code refactor [Patch 1] > 2. Update ACPI GED framework to support vCPU Hotplug [Patch 4,6,7] > 3. ACPI CPUs AML code change [Patch 5] > 4. Helper functions to support unrealization of CPU objects [Patch 8,9] > 5. Misc [Patch 2,3,10] > > > Repository: > > [*]https://github.com/salil-mehta/qemu.git virt-cpuhp-armv8/rfc-v2.common.v4 > > > Revision History: > > RFC V3 -> RFC V4 > 1. Addressed David Hilderbrand's comments > - Fixed the wrong doc comment of kvm_park_vcpu API prototype > - Added Reviewed-by tags for patches {2,4} > Link:https://lore.kernel.org/qemu-devel/20231009112812.10612-1-salil.mehta@huawei.com/ > > RFC V2 -> RFC V3 > 1. Addressed Jonathan Cameron's comments > - Fixed 'vcpu-id' type wrongly changed from 'unsigned long' to 'integer' > - Removed unnecessary use of variable 'vcpu_id' in kvm_park_vcpu > - Updated [Patch V2 03/10] commit-log with details of ACPI_CPU_SCAN_METHOD macro > - Updated [Patch V2 05/10] commit-log with details of conditional event handler method > - Added Reviewed-by tags for patches {2,3,4,6,7} > 2. Addressed Gavin Shan's comments > - Remove unnecessary use of variable 'vcpu_id' in kvm_par_vcpu > - Fixed return value in kvm_get_vcpu from -1 to -ENOENT > - Reset the value of 'gdb_num_g_regs' in gdb_unregister_coprocessor_all > - Fixed the kvm_{create,park}_vcpu prototypes docs > - Added Reviewed-by tags for patches {2,3,4,5,6,7,9,10} > 3. Addressed one earlier missed comment by Alex Bennée in RFC V1 > - Added traces instead of DPRINTF in the newly added and some existing functions > Link:https://lore.kernel.org/qemu-devel/20230930001933.2660-1-salil.mehta@huawei.com/ > > RFC V1 -> RFC V2 > 1. Addressed Alex Bennée's comments > - Refactored the kvm_create_vcpu logic to get rid of goto > - Added the docs for kvm_{create,park}_vcpu prototypes > - Splitted the gdbstub and AddressSpace destruction change into separate patches > - Added Reviewed-by tags for patches {2,10} > Link:https://lore.kernel.org/qemu-devel/20230929124304.13672-1-salil.mehta@huawei.com/ > > References: > > [1]https://lore.kernel.org/qemu-devel/20230926100436.28284-1-salil.mehta@huawei.com/ > [2]https://lore.kernel.org/all/20230913163823.7880-1-james.morse@arm.com/ > [3]https://lore.kernel.org/qemu-devel/cover.1695697701.git.lixianglai@loongson.cn/ > > > Jean-Philippe Brucker (1): > target/arm/kvm: Write CPU state back to KVM on reset > > Salil Mehta (9): > accel/kvm: Extract common KVM vCPU {creation,parking} code > hw/acpi: Move CPU ctrl-dev MMIO region len macro to common header file > hw/acpi: Add ACPI CPU hotplug init stub > hw/acpi: Init GED framework with CPU hotplug events > hw/acpi: Update CPUs AML with cpu-(ctrl)dev change > hw/acpi: Update GED _EVT method AML with CPU scan > hw/acpi: Update ACPI GED framework to support vCPU Hotplug > physmem: Add helper function to destroy CPU AddressSpace > gdbstub: Add helper function to unregister GDB register space > > accel/kvm/kvm-all.c | 64 ++++++++++++++++++++------ > accel/kvm/trace-events | 4 ++ > gdbstub/gdbstub.c | 15 ++++++ > hw/acpi/acpi-cpu-hotplug-stub.c | 6 +++ > hw/acpi/cpu.c | 27 +++++++---- > hw/acpi/generic_event_device.c | 22 +++++++++ > hw/i386/acpi-build.c | 2 +- > include/exec/cpu-common.h | 8 ++++ > include/exec/gdbstub.h | 5 ++ > include/hw/acpi/cpu.h | 5 +- > include/hw/acpi/cpu_hotplug.h | 4 ++ > include/hw/acpi/generic_event_device.h | 5 ++ > include/hw/core/cpu.h | 1 + > include/sysemu/kvm.h | 16 +++++++ > softmmu/physmem.c | 25 ++++++++++ > target/arm/kvm.c | 8 +++- > 16 files changed, 189 insertions(+), 28 deletions(-) Tested sanity cases on Ampere's platform. Also tested VM live migration. Tested-by: Vishnu Pajjuri <vishnu@os.amperecomputing.com> _Regards_, -Vishnu