[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231121092602.47792-1-yangyicong@huawei.com>
Date: Tue, 21 Nov 2023 17:25:58 +0800
From: Yicong Yang <yangyicong@...wei.com>
To: <catalin.marinas@....com>, <will@...nel.org>,
<sudeep.holla@....com>, <linux-arm-kernel@...ts.infradead.org>
CC: <dietmar.eggemann@....com>, <gregkh@...uxfoundation.org>,
<rafael@...nel.org>, <jonathan.cameron@...wei.com>,
<prime.zeng@...ilicon.com>, <linuxarm@...wei.com>,
<yangyicong@...ilicon.com>, <linux-kernel@...r.kernel.org>
Subject: [PATCH v4 0/4] Support SMT control on arm64
From: Yicong Yang <yangyicong@...ilicon.com>
The core CPU control framework supports runtime SMT control which
is not yet supported on arm64. Besides the general vulnerabilities
concerns we want this runtime control on our arm64 server for:
- better single CPU performance in some cases
- saving overall power consumption
This patchset implements it in the following aspects:
- implements the basic support in arch_topology driver
- support retrieve SMT thread number on OF based system
- support retrieve SMT thread number on ACPI based system
- select HOTPLUG_SMT for arm64
Tests has been done on our real ACPI based arm64 server and on
ACPI/OF based QEMU VMs.
The patchset is based on v6.7-rc1.
Change since v3:
- Fix some build and kconfig error reported by kernel test robot <lkp@...el.com>
Link: https://lore.kernel.org/linux-arm-kernel/20231114040110.54590-1-yangyicong@huawei.com/
Change since v2:
- Detect SMT thread number at topology build from ACPI/DT, avoid looping CPUs
- Split patches into ACPI/OF/arch_topology path and enable the kconfig for arm64
Link: https://lore.kernel.org/linux-arm-kernel/20231010115335.13862-1-yangyicong@huawei.com/
Yicong Yang (4):
arch_topology: Support basic SMT control for the driver
arch_topology: Support SMT control for OF based system
arm64: topology: Support SMT control on ACPI based system
arm64: Kconfig: Enable HOTPLUG_SMT
arch/arm64/Kconfig | 1 +
arch/arm64/kernel/topology.c | 23 ++++++++++++++++++
drivers/base/arch_topology.c | 45 +++++++++++++++++++++++++++++++++++
include/linux/arch_topology.h | 14 +++++++++++
4 files changed, 83 insertions(+)
--
2.24.0
Powered by blists - more mailing lists