[PATCH RFC 0/3] arm64: Add HOTPLUG_PARALLEL support for secondary CPUs
Jinjie Ruan
ruanjinjie at huawei.com
Thu Jun 11 06:38:06 PDT 2026
Support for parallel secondary CPU bringup is already utilized by x86,
MIPS, and RISC-V. This patch brings this capability to the arm64
architecture.
Introduce CONFIG_PARALLEL_SMT_PRIMARY_FIRST to avoid primary SMT threads
to boot first constraint.
And Add a 'cpu' parameter to update_cpu_boot_status() to allow updating the
boot status at a per-CPU granularity during parallel bringup.
Rework the global `secondary_data` accessed during early boot into
a per-CPU array. This array maps logical CPU IDs to MPIDR_EL1 values,
enabling the early boot code in head.S to resolve each secondary CPU's
logical ID concurrently.
Jinjie Ruan (3):
cpu/hotplug: Introduce CONFIG_PARALLEL_SMT_PRIMARY_FIRST
arm64: smp: Pass CPU ID to update_cpu_boot_status()
arm64: Add HOTPLUG_PARALLEL support for secondary CPUs
arch/Kconfig | 4 ++++
arch/arm64/Kconfig | 1 +
arch/arm64/include/asm/smp.h | 14 +++++++++++---
arch/arm64/kernel/cpufeature.c | 2 +-
arch/arm64/kernel/head.S | 23 ++++++++++++++++++++++
arch/arm64/kernel/smp.c | 35 ++++++++++++++++++++++++++++++----
arch/arm64/mm/context.c | 2 +-
arch/mips/Kconfig | 1 +
arch/riscv/Kconfig | 1 +
arch/x86/Kconfig | 1 +
kernel/cpu.c | 6 +++++-
11 files changed, 80 insertions(+), 10 deletions(-)
--
2.34.1
More information about the linux-arm-kernel
mailing list