From: Len Brown len.brown@intel.com
mainline inclusion from mainline-v5.2-rc1 commit 3a1c779fb8f71e772e2145e68c262936ada815ed category: feature bugzilla: https://gitee.com/openeuler/kernel/issues/I47H3V CVE: NA
--------------------------------
commit 3a1c779fb8f71e772e2145e68c262936ada815ed upstream.
Syntax only, no functional or semantic change.
Signed-off-by: Len Brown len.brown@intel.com Cc: Andrew Morton akpm@linux-foundation.org Cc: Linus Torvalds torvalds@linux-foundation.org Cc: Paul E. McKenney paulmck@linux.vnet.ibm.com Cc: Peter Zijlstra peterz@infradead.org Cc: Thomas Gleixner tglx@linutronix.de Cc: Will Deacon will.deacon@arm.com Cc: linux-doc@vger.kernel.org Link: http://lkml.kernel.org/r/1ca56f8ea922a67f0017bd645912ea02a65a85ec.1551160674... Signed-off-by: Ingo Molnar mingo@kernel.org Signed-off-by: Youquan Song youquan.song@intel.com Signed-off-by: Jackie Liu liuyun01@kylinos.cn Signed-off-by: Zheng Zengkai zhengzengkai@huawei.com Reviewed-by: Xie XiuQi xiexiuqi@huawei.com Signed-off-by: Yang Yingliang yangyingliang@huawei.com --- Documentation/cputopology.txt | 46 +++++++++++++++++------------------ 1 file changed, 23 insertions(+), 23 deletions(-)
diff --git a/Documentation/cputopology.txt b/Documentation/cputopology.txt index c6e7e9196a8b4..cb61277e23082 100644 --- a/Documentation/cputopology.txt +++ b/Documentation/cputopology.txt @@ -3,79 +3,79 @@ How CPU topology info is exported via sysfs ===========================================
Export CPU topology info via sysfs. Items (attributes) are similar -to /proc/cpuinfo output of some architectures: +to /proc/cpuinfo output of some architectures. They reside in +/sys/devices/system/cpu/cpuX/topology/:
-1) /sys/devices/system/cpu/cpuX/topology/physical_package_id: +physical_package_id:
physical package id of cpuX. Typically corresponds to a physical socket number, but the actual value is architecture and platform dependent.
-2) /sys/devices/system/cpu/cpuX/topology/core_id: +core_id:
the CPU core ID of cpuX. Typically it is the hardware platform's identifier (rather than the kernel's). The actual value is architecture and platform dependent.
-3) /sys/devices/system/cpu/cpuX/topology/book_id: +book_id:
the book ID of cpuX. Typically it is the hardware platform's identifier (rather than the kernel's). The actual value is architecture and platform dependent.
-4) /sys/devices/system/cpu/cpuX/topology/drawer_id: +drawer_id:
the drawer ID of cpuX. Typically it is the hardware platform's identifier (rather than the kernel's). The actual value is architecture and platform dependent.
-5) /sys/devices/system/cpu/cpuX/topology/thread_siblings: +thread_siblings:
internal kernel map of cpuX's hardware threads within the same core as cpuX.
-6) /sys/devices/system/cpu/cpuX/topology/thread_siblings_list: +thread_siblings_list:
human-readable list of cpuX's hardware threads within the same core as cpuX.
-7) /sys/devices/system/cpu/cpuX/topology/core_siblings: +core_siblings:
internal kernel map of cpuX's hardware threads within the same physical_package_id.
-8) /sys/devices/system/cpu/cpuX/topology/core_siblings_list: +core_siblings_list:
human-readable list of cpuX's hardware threads within the same physical_package_id.
-9) /sys/devices/system/cpu/cpuX/topology/book_siblings: +book_siblings:
internal kernel map of cpuX's hardware threads within the same book_id.
-10) /sys/devices/system/cpu/cpuX/topology/book_siblings_list: +book_siblings_list:
human-readable list of cpuX's hardware threads within the same book_id.
-11) /sys/devices/system/cpu/cpuX/topology/drawer_siblings: +drawer_siblings:
internal kernel map of cpuX's hardware threads within the same drawer_id.
-12) /sys/devices/system/cpu/cpuX/topology/drawer_siblings_list: +drawer_siblings_list:
human-readable list of cpuX's hardware threads within the same drawer_id.
-To implement it in an architecture-neutral way, a new source file, -drivers/base/topology.c, is to export the 6 to 12 attributes. The book -and drawer related sysfs files will only be created if CONFIG_SCHED_BOOK -and CONFIG_SCHED_DRAWER are selected. +Architecture-neutral, drivers/base/topology.c, exports these attributes. +However, the book and drawer related sysfs files will only be created if +CONFIG_SCHED_BOOK and CONFIG_SCHED_DRAWER are selected, respectively.
-CONFIG_SCHED_BOOK and CONFIG_DRAWER are currently only used on s390, where -they reflect the cpu and cache hierarchy. +CONFIG_SCHED_BOOK and CONFIG_SCHED_DRAWER are currently only used on s390, +where they reflect the cpu and cache hierarchy.
For an architecture to support this feature, it must define some of these macros in include/asm-XXX/topology.h:: @@ -98,10 +98,10 @@ 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) sibling_cpumask: just the given CPU -4) core_cpumask: just the given CPU +1) topology_physical_package_id: -1 +2) topology_core_id: 0 +3) topology_sibling_cpumask: just the given CPU +4) topology_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().