Thread (17 messages) 17 messages, 4 authors, 2021-04-21

Re: [RFC PATCH v5 1/4] topology: Represent clusters of CPUs within a die

From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
Date: 2021-03-19 09:38:27
Also in: linux-arm-kernel, lkml

On Fri, 19 Mar 2021 06:57:08 +0000
"Song Bao Hua (Barry Song)" [off-list ref] wrote:
quoted
-----Original Message-----
From: Greg KH [mailto:gregkh@linuxfoundation.org]
Sent: Friday, March 19, 2021 7:35 PM
To: Song Bao Hua (Barry Song) <redacted>
Cc: tim.c.chen@linux.intel.com; catalin.marinas@arm.com; will@kernel.org;
rjw@rjwysocki.net; vincent.guittot@linaro.org; bp@alien8.de;
tglx@linutronix.de; mingo@redhat.com; lenb@kernel.org; peterz@infradead.org;
dietmar.eggemann@arm.com; rostedt@goodmis.org; bsegall@google.com;
mgorman@suse.de; msys.mizuma@gmail.com; valentin.schneider@arm.com; Jonathan
Cameron [off-list ref]; juri.lelli@redhat.com;
mark.rutland@arm.com; sudeep.holla@arm.com; aubrey.li@linux.intel.com;
linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org;
linux-acpi@vger.kernel.org; x86@kernel.org; xuwei (O) [off-list ref];
Zengtao (B) [off-list ref]; guodong.xu@linaro.org; yangyicong
[off-list ref]; Liguozhu (Kenneth) [off-list ref];
linuxarm@openeuler.org; hpa@zytor.com
Subject: Re: [RFC PATCH v5 1/4] topology: Represent clusters of CPUs within
a die

On Fri, Mar 19, 2021 at 05:16:15PM +1300, Barry Song wrote:  
quoted
diff --git a/Documentation/admin-guide/cputopology.rst  
b/Documentation/admin-guide/cputopology.rst  
quoted
index b90dafc..f9d3745 100644
--- a/Documentation/admin-guide/cputopology.rst
+++ b/Documentation/admin-guide/cputopology.rst
@@ -24,6 +24,12 @@ core_id:
 	identifier (rather than the kernel's).  The actual value is
 	architecture and platform dependent.

+cluster_id:
+
+	the Cluster ID of cpuX.  Typically it is the hardware platform's
+	identifier (rather than the kernel's).  The actual value is
+	architecture and platform dependent.
+
 book_id:

 	the book ID of cpuX. Typically it is the hardware platform's
@@ -56,6 +62,14 @@ package_cpus_list:
 	human-readable list of CPUs sharing the same physical_package_id.
 	(deprecated name: "core_siblings_list")

+cluster_cpus:
+
+	internal kernel map of CPUs within the same cluster.
+
+cluster_cpus_list:
+
+	human-readable list of CPUs within the same cluster.
+
 die_cpus:

 	internal kernel map of CPUs within the same die.  
Why are these sysfs files in this file, and not in a Documentation/ABI/
file which can be correctly parsed and shown to userspace?  
Well. Those ABIs have been there for much a long time. It is like:

[root@ceph1 topology]# ls
core_id  core_siblings  core_siblings_list  physical_package_id thread_siblings  thread_siblings_list
[root@ceph1 topology]# pwd
/sys/devices/system/cpu/cpu100/topology
[root@ceph1 topology]# cat core_siblings_list
64-127
[root@ceph1 topology]#
quoted
Any chance you can fix that up here as well?  
Yes. we will send a separate patch to address this, which won't
be in this patchset. This patchset will base on that one.
quoted
Also note that "list" is not something that goes in sysfs, sysfs is "one
value per file", and a list is not "one value".  How do you prevent
overflowing the buffer of the sysfs file if you have a "list"?
  
At a glance, the list is using "-" rather than a real list
[root@ceph1 topology]# cat core_siblings_list
64-127

Anyway, I will take a look if it has any chance to overflow.
It could in theory be alternate CPUs as comma separated list.
So it's would get interesting around 500-1000 cpus (guessing).

Hopefully no one has that crazy a cpu numbering scheme but it's possible
(note that cluster is fine for this, but I guess it might eventually
happen for core-siblings list (cpus within a package).

Shouldn't crash or anything like that but might terminate early.

On sysfs file conversion, that got mentioned earlier but I forgot
to remind Barry about it when he took this patch into his series.
Sorry about that!

Jonathan

quoted
thanks,

greg k-h  
Thanks
Barry
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help