From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
To: LKML <linux-kernel@vger.kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
x86@kernel.org, "Rafael J. Wysocki" <rjw@rjwysocki.net>,
Viresh Kumar <viresh.kumar@linaro.org>,
Guenter Roeck <linux@roeck-us.net>,
Jean Delvare <jdelvare@suse.de>,
Fenghua Yu <fenghua.yu@intel.com>,
Benoit Cousson <bcousson@baylibre.com>,
Jonathan Corbet <corbet@lwn.net>,
Oleg Drokin <oleg.drokin@intel.com>,
Russell King <linux@arm.linux.org.uk>,
Catalin Marinas <catalin.marinas@arm.com>,
Bartosz Golaszewski <bgolaszewski@baylibre.com>
Subject: [RESEND][PATCH v2 2/9] Documentation: update cputopology.txt
Date: Tue, 19 May 2015 10:19:06 +0200 [thread overview]
Message-ID: <1432023553-2796-3-git-send-email-bgolaszewski@baylibre.com> (raw)
In-Reply-To: <1432023553-2796-1-git-send-email-bgolaszewski@baylibre.com>
The documentation on cpu topology seems to be a bit out-of-date. It
doesn't mention the **_siblings_list attributes and uses old names
for topology_**_cpumask() macros.
Add information on missing attributes plus some additional
clarifications.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Acked-by: Ingo Molnar <mingo@kernel.org>
---
Documentation/cputopology.txt | 35 ++++++++++++++++++++++++++---------
1 file changed, 26 insertions(+), 9 deletions(-)
diff --git a/Documentation/cputopology.txt b/Documentation/cputopology.txt
index 428a961..12b1b25 100644
--- a/Documentation/cputopology.txt
+++ b/Documentation/cputopology.txt
@@ -1,6 +1,6 @@
Export CPU topology info via sysfs. Items (attributes) are similar
-to /proc/cpuinfo.
+to /proc/cpuinfo output of some architectures:
1) /sys/devices/system/cpu/cpuX/topology/physical_package_id:
@@ -23,20 +23,35 @@ to /proc/cpuinfo.
4) /sys/devices/system/cpu/cpuX/topology/thread_siblings:
internal kernel map of cpuX's hardware threads within the same
- core as cpuX
+ core as cpuX.
-5) /sys/devices/system/cpu/cpuX/topology/core_siblings:
+5) /sys/devices/system/cpu/cpuX/topology/thread_siblings_list:
+
+ human-readable list of cpuX's hardware threads within the same
+ core as cpuX.
+
+6) /sys/devices/system/cpu/cpuX/topology/core_siblings:
internal kernel map of cpuX's hardware threads within the same
physical_package_id.
-6) /sys/devices/system/cpu/cpuX/topology/book_siblings:
+7) /sys/devices/system/cpu/cpuX/topology/core_siblings_list:
+
+ human-readable list of cpuX's hardware threads within the same
+ physical_package_id.
+
+8) /sys/devices/system/cpu/cpuX/topology/book_siblings:
internal kernel map of cpuX's hardware threads within the same
book_id.
+9) /sys/devices/system/cpu/cpuX/topology/book_siblings_list:
+
+ human-readable list of cpuX's hardware threads within the same
+ book_id.
+
To implement it in an architecture-neutral way, a new source file,
-drivers/base/topology.c, is to export the 4 or 6 attributes. The two book
+drivers/base/topology.c, is to export the 6 or 9 attributes. The three book
related sysfs files will only be created if CONFIG_SCHED_BOOK is selected.
For an architecture to support this feature, it must define some of
@@ -48,16 +63,18 @@ these macros in include/asm-XXX/topology.h:
#define topology_core_cpumask(cpu)
#define topology_book_cpumask(cpu)
-The type of **_id is int.
-The type of siblings is (const) struct cpumask *.
+The type of **_id macros is int.
+The type of **_cpumask macros is (const) struct cpumask *. The latter
+correspond with appropriate **_siblings sysfs attributes (except for
+topology_sibling_cpumask() which corresponds with thread_siblings).
To be consistent on all architectures, include/linux/topology.h
provides default definitions for any of the above macros that are
not defined by include/asm-XXX/topology.h:
1) physical_package_id: -1
2) core_id: 0
-3) thread_siblings: just the given CPU
-4) core_siblings: just the given CPU
+3) sibling_cpumask: just the given CPU
+4) core_cpumask: just the given CPU
For architectures that don't support books (CONFIG_SCHED_BOOK) there are no
default definitions for topology_book_id() and topology_book_cpumask().
--
2.1.4
next prev parent reply other threads:[~2015-05-19 8:19 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-19 8:19 [RESEND][PATCH v2 0/9] x86: remove cpu_**_mask() functions Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 1/9] topology: rename topology_thread_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` Bartosz Golaszewski [this message]
2015-05-19 8:19 ` [RESEND][PATCH v2 3/9] coretemp: replace cpu_sibling_mask() with topology_sibling_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 4/9] powernow-k8: replace cpu_core_mask() with topology_core_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 5/9] p4-clockmod: replace cpu_sibling_mask() with topology_sibling_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 6/9] acpi-cpufreq: replace cpu_**_mask() with topology_**_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 7/9] speedstep-ich: replace cpu_sibling_mask() with topology_sibling_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 8/9] x86: replace cpu_**_mask() with topology_**_cpumask() Bartosz Golaszewski
2015-05-19 8:19 ` [RESEND][PATCH v2 9/9] x86: remove cpu_sibling_mask() and cpu_core_mask() Bartosz Golaszewski
2015-05-19 11:56 ` [RESEND][PATCH v2 0/9] x86: remove cpu_**_mask() functions Rafael J. Wysocki
2015-05-19 13:17 ` Thomas Gleixner
2015-05-26 13:14 ` Bartosz Golaszewski
-- strict thread matches above, loose matches on Subject: below --
2015-05-26 13:11 Bartosz Golaszewski
2015-05-26 13:11 ` [RESEND][PATCH v2 2/9] Documentation: update cputopology.txt Bartosz Golaszewski
2015-05-12 8:27 [RESEND][PATCH v2 0/9] x86: remove cpu_**_mask() functions Bartosz Golaszewski
2015-05-12 8:27 ` [RESEND][PATCH v2 2/9] Documentation: update cputopology.txt Bartosz Golaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1432023553-2796-3-git-send-email-bgolaszewski@baylibre.com \
--to=bgolaszewski@baylibre.com \
--cc=bcousson@baylibre.com \
--cc=catalin.marinas@arm.com \
--cc=corbet@lwn.net \
--cc=fenghua.yu@intel.com \
--cc=hpa@zytor.com \
--cc=jdelvare@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=linux@roeck-us.net \
--cc=mingo@redhat.com \
--cc=oleg.drokin@intel.com \
--cc=rjw@rjwysocki.net \
--cc=tglx@linutronix.de \
--cc=viresh.kumar@linaro.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox