summaryrefslogtreecommitdiff
path: root/arch/s390/include/asm/topology.h
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2012-11-10 14:04:27 +0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2012-11-12 19:24:38 +0400
commit658e5ce705f2a09ab681eb61ca7c8619bb7a783d (patch)
treed97179ea3d442bb6acb9e4db36c8235f24a1f0b5 /arch/s390/include/asm/topology.h
parentfa968ee215c0ca91e4a9c3a69ac2405aae6e5d2f (diff)
downloadlinux-658e5ce705f2a09ab681eb61ca7c8619bb7a783d.tar.xz
s390/topology: fix core id vs physical package id mix-up
The current topology code confuses core id vs physical package id. In other words /sys/devices/system/cpu/cpuX/topology/core_id displays the physical_package_id (aka socket id) instead of the core id. The physical_package_id sysfs attribute always displays "-1" instead of the socket id. Fix this mix-up with a small patch which defines and initializes topology_physical_package_id correctly and fixes the broken core id handling. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/topology.h')
-rw-r--r--arch/s390/include/asm/topology.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/include/asm/topology.h b/arch/s390/include/asm/topology.h
index 9ca305383760..9935cbd6a46f 100644
--- a/arch/s390/include/asm/topology.h
+++ b/arch/s390/include/asm/topology.h
@@ -8,6 +8,9 @@ struct cpu;
#ifdef CONFIG_SCHED_BOOK
+extern unsigned char cpu_socket_id[NR_CPUS];
+#define topology_physical_package_id(cpu) (cpu_socket_id[cpu])
+
extern unsigned char cpu_core_id[NR_CPUS];
extern cpumask_t cpu_core_map[NR_CPUS];