This series implements support for CPU hotplug/unplug on Arm. To achieve this,
several things need to be done:

1. XEN_SYSCTL_CPU_HOTPLUG_* calls implemented on Arm64.
2. Enabled building of xen-hptool.
3. Migration of irqs from dying CPUs implemented.

Tested on QEMU.

v5->v6:
* see individual patches

v4->v5:
* drop merged patches
* combine "smp: Move cpu_up/down helpers to common code" with 
  "arm/sysctl: Implement cpu hotplug ops"
* see individual patches

v3->v4:
* add irq migration patches
* see individual patches

v2->v3:
* add docs

v1->v2:
* see individual patches

Mykyta Poturai (5):
  arm/irq: Keep track of irq affinities
  arm/irq: Migrate IRQs during CPU up/down operations
  arm/sysctl: Implement cpu hotplug ops
  tools: Allow building xen-hptool without CONFIG_MIGRATE
  docs: Document CPU hotplug

 SUPPORT.md                        |  1 +
 docs/misc/cpu-hotplug.txt         | 50 ++++++++++++++++++++++
 tools/libs/guest/Makefile.common  |  2 +-
 tools/misc/Makefile               |  2 +-
 xen/arch/arm/gic-vgic.c           |  2 +
 xen/arch/arm/include/asm/irq.h    |  4 ++
 xen/arch/arm/irq.c                | 69 ++++++++++++++++++++++++++++++-
 xen/arch/arm/smp.c                |  9 ++++
 xen/arch/arm/smpboot.c            |  8 ++++
 xen/arch/arm/vgic.c               | 14 ++++++-
 xen/arch/arm/vgic/vgic-mmio-v2.c  | 11 +++--
 xen/arch/arm/vgic/vgic.c          | 15 +++----
 xen/arch/ppc/stubs.c              |  4 ++
 xen/arch/riscv/stubs.c            |  5 +++
 xen/arch/x86/include/asm/smp.h    |  3 --
 xen/arch/x86/platform_hypercall.c | 12 ++++++
 xen/arch/x86/smp.c                | 33 ++-------------
 xen/arch/x86/sysctl.c             | 21 ++++++----
 xen/common/Kconfig                |  6 +++
 xen/common/smp.c                  | 35 ++++++++++++++++
 xen/common/sysctl.c               | 46 +++++++++++++++++++++
 xen/include/xen/smp.h             |  4 ++
 xen/xsm/flask/hooks.c             |  2 +-
 23 files changed, 296 insertions(+), 62 deletions(-)
 create mode 100644 docs/misc/cpu-hotplug.txt

-- 
2.51.2

Reply via email to