aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390
diff options
context:
space:
mode:
authorAlexander Gordeev <agordeev@linux.ibm.com>2020-03-11 14:18:05 +0100
committerVasily Gorbik <gor@linux.ibm.com>2020-03-23 13:41:53 +0100
commit42d211a1ae3b77008d4190b7dc79ad29b48bbcd2 (patch)
treeae430b4c228bcbc2ffd4e22494312c66e413a833 /arch/s390
parents390/mm: optimize page table upgrade routine (diff)
downloadlinux-dev-42d211a1ae3b77008d4190b7dc79ad29b48bbcd2.tar.xz
linux-dev-42d211a1ae3b77008d4190b7dc79ad29b48bbcd2.zip
s390/cpuinfo: show processor physical address
Show CPU physical address as reported by STAP instruction Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com> Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r--arch/s390/include/asm/smp.h1
-rw-r--r--arch/s390/kernel/processor.c1
-rw-r--r--arch/s390/kernel/smp.c5
3 files changed, 7 insertions, 0 deletions
diff --git a/arch/s390/include/asm/smp.h b/arch/s390/include/asm/smp.h
index b157a81fb977..231a51e870fe 100644
--- a/arch/s390/include/asm/smp.h
+++ b/arch/s390/include/asm/smp.h
@@ -34,6 +34,7 @@ extern int smp_vcpu_scheduled(int cpu);
extern void smp_yield_cpu(int cpu);
extern void smp_cpu_set_polarization(int cpu, int val);
extern int smp_cpu_get_polarization(int cpu);
+extern int smp_cpu_get_cpu_address(int cpu);
extern void smp_fill_possible_mask(void);
extern void smp_detect_cpus(void);
diff --git a/arch/s390/kernel/processor.c b/arch/s390/kernel/processor.c
index 2c13ca562b48..b98654d0ce41 100644
--- a/arch/s390/kernel/processor.c
+++ b/arch/s390/kernel/processor.c
@@ -159,6 +159,7 @@ static void show_cpu_topology(struct seq_file *m, unsigned long n)
seq_printf(m, "book id : %d\n", topology_book_id(n));
seq_printf(m, "drawer id : %d\n", topology_drawer_id(n));
seq_printf(m, "dedicated : %d\n", topology_cpu_dedicated(n));
+ seq_printf(m, "address : %d\n", smp_cpu_get_cpu_address(n));
#endif /* CONFIG_SCHED_TOPOLOGY */
}
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c
index f87d4e14269c..edc1bf39c542 100644
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@ -703,6 +703,11 @@ int smp_cpu_get_polarization(int cpu)
return pcpu_devices[cpu].polarization;
}
+int smp_cpu_get_cpu_address(int cpu)
+{
+ return pcpu_devices[cpu].address;
+}
+
static void __ref smp_get_core_info(struct sclp_core_info *info, int early)
{
static int use_sigp_detection;