Thread (26 messages) 26 messages, 5 authors, 2024-09-12

Re: [PATCH v5 3/4] arm64: topology: Support SMT control on ACPI based system

From: Morten Rasmussen <hidden>
Date: 2024-09-06 07:06:45
Also in: linux-arm-kernel, lkml

Hi Yicong,

On Thu, Sep 05, 2024 at 08:02:20PM +0800, Yicong Yang wrote:
On 2024/9/5 16:34, Pierre Gondois wrote:
quoted
Hello Yicong,

If a platform has CPUs with:
- 1 thread
- X (!= 1) threads
Then I think that the asymmetry is not detected
Ah ok, I only handle the case where there are several thread numbers except no SMT CPUs in the
system. For this case I was thinking we don't need to handle this since there's only one kind
of SMT core in the system, control should works fine for the SMT CPU clusters and we may not
care about the CPUs with no SMT.

Below code should handle the case if we initialize the max_smt_thread_num to 0. I also
reword the warning messages to match the fact. For heterogeneous SMT topology we still
support control SMT by on/off toggle but not fully support setting the thread number.

	int max_smt_thread_num = 0;
	[...]
	/*
	 * This should be a short loop depending on the number of heterogeneous
	 * CPU clusters. Typically on a homogeneous system there's only one
	 * entry in the XArray.
	 */
	xa_for_each(&hetero_cpu, hetero_id, entry) {
		/*
		 * If max_smt_thread_num has been initialized and doesn't match
		 * the thread number of this entry, then the system has
		 * heterogeneous SMT topology.
		 */
		if (entry->thread_num != max_smt_thread_num && max_smt_thread_num)
			pr_warn_once("Heterogeneous SMT topology is partly supported by SMT control\n");
What does 'partly supported' mean here?

If the SMT control doesn't work as intended for this topology, I don't
think it should be enabled for it.

Morten
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help