|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v9 6/6] docs: Document CPU hotplug
On 9/22/26 4:13 AM, Volodymyr Babchuk wrote: > Hi, > > Mykyta Poturai <Mykyta_Poturai@xxxxxxxx> writes: > > I have a couple of questions, please see below > >> Signed-off-by: Mykyta Poturai <mykyta_poturai@xxxxxxxx> >> --- >> v8->v9: >> * fix typos >> >> v7->v8: >> * remove support status update >> * update config option name >> >> v6->v7: >> * add testing and limitations >> >> v5->v6: >> * no changes >> >> v4->v5: >> * s/supported/implemented/ >> * update SUPPORT.md >> >> v3->v4: >> * update configuration section >> >> v2->v3: >> * patch introduced >> --- >> docs/misc/cpu-hotplug.txt | 98 +++++++++++++++++++++++++++++++++++++++ >> 1 file changed, 98 insertions(+) >> create mode 100644 docs/misc/cpu-hotplug.txt >> >> diff --git a/docs/misc/cpu-hotplug.txt b/docs/misc/cpu-hotplug.txt >> new file mode 100644 >> index 0000000000..4f6068db30 >> --- /dev/null >> +++ b/docs/misc/cpu-hotplug.txt >> @@ -0,0 +1,98 @@ >> +CPU Hotplug >> +=========== >> + >> +CPU hotplug is a feature that allows pCPU cores to be added to or removed >> from a >> +running system without requiring a reboot. It is implemented on x86 and >> Arm64 >> +architectures. >> + >> +Implementation Details >> +---------------------- >> + >> +CPU hotplug is implemented through the `XEN_SYSCTL_CPU_HOTPLUG_*` sysctl >> calls. >> +The specific calls are: >> + >> +- `XEN_SYSCTL_CPU_HOTPLUG_ONLINE`: Brings a pCPU online >> +- `XEN_SYSCTL_CPU_HOTPLUG_OFFLINE`: Takes a pCPU offline >> +- `XEN_SYSCTL_CPU_HOTPLUG_SMT_ENABLE`: Enables SMT threads (x86 only) >> +- `XEN_SYSCTL_CPU_HOTPLUG_SMT_DISABLE`: Disables SMT threads (x86 only) >> + >> +All cores can be disabled, assuming hardware support, except for the boot >> core. >> +Sysctl calls are routed to the boot core before doing any actual up/down >> +operations on other cores. >> + >> +If there are Xen-bound interrupts pinned to the pCPU being offlined, they >> will >> +be automatically migrated to other online pCPUs. Interrupts used by guest >> +domains are handled by the scheduler when it reschedules the vCPUs to a new, >> +online, pCPU. When a pCPU is being onlined, some Xen-bound interrupts will >> get >> +redistributed to the newly onlined pCPU to prevent imbalance. >> + >> +If pCPU being offlined has some vCPUs pinned to it, they will be >> automatically >> +unpinned and migrated to other online pCPUs. >> + >> +Limitations >> +----------- >> + >> +On Arm64 cpu hotplug is currently not compatible with ITS, due to an issue >> with >> +the redistributor assignment. > > In this case you probably want to make sure that > CONFIG_CPU_ONLINE_OFFLINE is incompatible with CONFIG_HAS_ITS > >> + >> +On Arm64 there can be problems with FFA if secure FW supports the >> notification >> +ABI, and with TEE, as both use non-static IRQ actions. > > Could you please elaborate on this? AFAIK, OP-TEE has own > cpu_up/cpu_down callbacks, so it should know which CPUs are online. It's more of a problem with the way interrupt handlers are set up in Xen. Mykola already has fixes for it in a separate series, but I'm not how to best sync up our efforts. https://patchew.org/Xen/cover.1787838455.git.mykola._5Fkvach@xxxxxxxx/623be9a0a5603073f25d009979ab49b611e7dddc.1787838455.git.mykola._5Fkvach@xxxxxxxx/ https://patchew.org/Xen/cover.1787838455.git.mykola._5Fkvach@xxxxxxxx/cc10888f34e887f739d66312aa871a6df4196204.1787838455.git.mykola._5Fkvach@xxxxxxxx/
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |