[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 5/5] docs: Document CPU hotplug
- To: Mykyta Poturai <Mykyta_Poturai@xxxxxxxx>
- From: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
- Date: Wed, 18 Mar 2026 08:28:21 +0000
- Accept-language: en-GB, en-US
- Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=epam.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
- Arc-message-signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=erRJBGYa/wMcdr+S45LfWALzLyTSxg9xvHhSLIyqtt8=; b=TWgnyQHtP9MHpnRHIo1Xe7MrbeQNqvoNGH2/LbC/XvT7fd5riVTL8GXGgJ8mzaOWHv5ji6takMwNqFhtkcMugq5Bdmqyazag5yBoIVfCZsryqu8ceNxidhWKALPFpIf8vP3DmTcRJA9BPG5PMa4as1kWg0S0uNUWDI2RXZkOi62db9DeJGL5XiMlD5lAOLl8ED/STQIDlS7TMTfktdVKH23tsOfFI0NGHrw8Z54nfjpKmw3yfouhg9w5w4NWVhbkhR1HQ6KL/5nnIqU1Y+IVE2FQHlc3gfJu3+WpxKl7n73CtTc+/Jm1uFGeH+yGO++pkhcN84n/6htXx4y9s4hLaw==
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=erRJBGYa/wMcdr+S45LfWALzLyTSxg9xvHhSLIyqtt8=; b=aSFgj9UTmZp3gLOe7M8qNnR4wTbOxYgIDyhjfxrBzfKiSn2ZjgbnhdX+BzC3kCRslSio1JpCWP5z+U1XoPs5F/ZSFFByLNASuc13KEBoY2XPeU4IfFyNwh4iUs+rTNbdDwqH0DuVuMeVUy14FqVysUz7kSmY7mm5aX7T8lI1tHPUlDKXGQPV9OW2VB3S0LhLqFm/5U6b4Nt9YHXKjyGIZU8cOijzKcqAplvLEWgi2hr0ug3HvBpI0F3Z/UWjnyCcgunR/HWkoOZDLHtWSy0q/xckN6bYnlG4VkWwkqxdw6kJgs//bE8hfBof1RA8oXeLOqPKZsgOkJCUKkJ2orqwog==
- Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=otyivtTRkLAB/8IGI+9hZPi8/RbSXfgaKC2kfo7ncTcxHHXntyXao3qoQW7hv2EwWgMMp5/ExI4Q6/72vX8rPcIvgmAIniy57sIeaqFxoXoVmjCwWhCNRGgruS6/COlXJS7e25rhBA6kE94XDb0DlllylWI1RxVShZAb/RfGrFRVhPRdFm7brOwRB0eYcG5co6i6UDeu2GFESiDtR9edgWZX/QMvVQbVJ2mC4K4C5ZCMbHSiDkEsoidvNqbRjD1qekjpIzSN3OLxxrbu9m9U+1d+gFBWFpED+iXaXkJNld6eeIsw8FQbAScfzsee5wR1acIX6Do1wQOsEyFLEnUVog==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=I+tnbuOoWQ3j5GrpeZKkfkSDFsIElEjWtS4iR9DdLb22K74OuGOelBEsJjNBVDZvhGisR2aIkKcX2mOGBfh91rIpudUUhzFD1xbk9kdglOMClt5/P/l8Odozwe/AY7Yy3yckgVwyvUJXnQPLI03ywTxWxL7V5kMfwzrZRdH5rjg85PAt3KmY9KZW/c+jHrzkMeD26dDOeYIJtt+egLfI75B+ZmFNAUn4YIEXojJI/7BgJgvoFUNm0aeZIto2ltxB1DOTuf4xj9PC6BNN4m1bQbZ855Zs6R0UMJeah+M7mI7hNFciYQ6eyoKvJJFRN88PWVDIPFSxBbPcs/oYD0yMLw==
- Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
- Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>
- Delivery-date: Wed, 18 Mar 2026 08:29:44 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Nodisclaimer: true
- Thread-index: AQHcsgQvuWVORvDa+Um30EZkSgxRE7Wz/keA
- Thread-topic: [PATCH v6 5/5] docs: Document CPU hotplug
Hi Mykyta,
> On 12 Mar 2026, at 10:39, Mykyta Poturai <Mykyta_Poturai@xxxxxxxx> wrote:
>
> Signed-off-by: Mykyta Poturai <mykyta_poturai@xxxxxxxx>
> ---
>
> v5->v6:
> * no changes
>
> v4->v5:
> * s/supported/implemented/
> * update SUPPORT.md
>
> v3->v4:
> * update configuration section
>
> v2->v3:
> * patch introduced
> ---
> SUPPORT.md | 1 +
> docs/misc/cpu-hotplug.txt | 50 +++++++++++++++++++++++++++++++++++++++
> 2 files changed, 51 insertions(+)
> create mode 100644 docs/misc/cpu-hotplug.txt
>
> diff --git a/SUPPORT.md b/SUPPORT.md
> index d441bccf37..7b93ae69e7 100644
> --- a/SUPPORT.md
> +++ b/SUPPORT.md
> @@ -52,6 +52,7 @@ For the Cortex A77 r0p0 - r1p0, see Errata 1508412.
> ### ACPI CPU Hotplug
>
> Status, x86: Experimental
> + Status, Arm64: Experimental
>
> ### Physical Memory
>
> diff --git a/docs/misc/cpu-hotplug.txt b/docs/misc/cpu-hotplug.txt
> new file mode 100644
> index 0000000000..45f20c2002
> --- /dev/null
> +++ b/docs/misc/cpu-hotplug.txt
> @@ -0,0 +1,50 @@
> +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.
> +
> +Configuration
> +-------------
> +
> +The presence of the feature is controlled by CONFIG_CPU_HOTPLUG option. It is
> +enabled by default on x86 architecture. On Arm64, the option is enabled by
> +default when ITS, FFA, and TEE configs are disabled.
> +xen-hptool userspace tool is built unconditionally.
> +
> +Usage
> +-----
> +
> +Disable core:
> +
> +$ xen-hptool cpu-offline 2
> +Prepare to offline CPU 2
> +(XEN) Removing cpu 2 from runqueue 0
> +CPU 2 offlined successfully
> +
> +Enable core:
> +
> +$ xen-hptool cpu-online 2
> +Prepare to online CPU 2
> +(XEN) Bringing up CPU2
> +(XEN) GICv3: CPU2: Found redistributor in region 0 @00000a004005c000
> +(XEN) CPU2: Guest atomics will try 1 times before pausing the domain
> +(XEN) CPU 2 booted.
> +(XEN) Adding cpu 2 to runqueue 0
> +CPU 2 onlined successfully
It would be good to mention here what has been tested and what was out of scope
or not supported at all (ITS for example).
As part of this list i would mention:
- TEE in general (FFA or optee)
- passthrough (unless you did some tests but you did not answer to my question
on
that on the previous version of the serie)
And maybe even describe quickly how the tests were executed.
Just so that people are aware of what scope is currently realist to try.
Cheers
Bertrand
> --
> 2.51.2
>
|