aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/Makefile
diff options
context:
space:
mode:
authorThomas Richter <tmricht@linux.ibm.com>2018-10-29 13:16:38 +0000
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2019-02-22 09:19:56 +0100
commitfe5908bccc565f85cab025695627678cf257f91e (patch)
tree950e3c6002244b9d229265bba1ae32767c1a3f80 /arch/s390/kernel/Makefile
parents390/cpum_cf: add ctr_stcctm() function (diff)
downloadlinux-dev-fe5908bccc565f85cab025695627678cf257f91e.tar.xz
linux-dev-fe5908bccc565f85cab025695627678cf257f91e.zip
s390/cpum_cf_diag: Add support for s390 counter facility diagnostic trace
Introduce a PMU device named cpum_cf_diag. It extracts the values of all counters in all authorized counter sets and stores them as event raw data. This is done with the STORE CPU COUNTER MULTIPLE instruction to speed up access. All counter sets fit into one buffer. The values of each counter are taken when the event is started on the performance sub-system and when the event is stopped. This results in counter values available at the start and at the end of the measurement time frame. The difference is calculated for each counter. The differences of all counters are then saved as event raw data in the perf.data file. The counter values are accompanied by the time stamps when the counter set was started and when the counter set was stopped. This data is part of a trailer entry which describes the time frame, counter set version numbers, CPU speed, and machine type for later analysis. Signed-off-by: Thomas Richter <tmricht@linux.ibm.com> Reviewed-by: Hendrik Brueckner <brueckner@linux.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/Makefile')
-rw-r--r--arch/s390/kernel/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/s390/kernel/Makefile b/arch/s390/kernel/Makefile
index ade87df0eb64..8a62c7f72e1b 100644
--- a/arch/s390/kernel/Makefile
+++ b/arch/s390/kernel/Makefile
@@ -80,6 +80,7 @@ obj-$(CONFIG_KEXEC_FILE) += kexec_elf.o
obj-$(CONFIG_PERF_EVENTS) += perf_event.o perf_cpum_cf_common.o
obj-$(CONFIG_PERF_EVENTS) += perf_cpum_cf.o perf_cpum_sf.o
obj-$(CONFIG_PERF_EVENTS) += perf_cpum_cf_events.o perf_regs.o
+obj-$(CONFIG_PERF_EVENTS) += perf_cpum_cf_diag.o
obj-$(CONFIG_TRACEPOINTS) += trace.o