summary refs log tree commit diff
path: root/arch
diff options
context:
space:
mode:
authorHendrik Brueckner <brueckner@linux.vnet.ibm.com>2017-05-31 15:22:19 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2017-11-16 15:06:10 +0100
commit9232c3c741200167e44ae9d0e434092657ab4534 (patch)
treeb7086cbdf10d3a1af0e3918f09140963f11bf102 /arch
parent3d43b981eb841a9493717e6d509f59553dbe8c7a (diff)
downloadlinux-9232c3c741200167e44ae9d0e434092657ab4534.tar.gz
s390/cpum_sf: do not register PMU if no sampling mode is authorized
Previously, the cpum_sf PMU was registered even if there is no
sampling mode authorized.  Add a check and register cpum_sf only
at least one sampling mode is authorized.

Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/s390/kernel/perf_cpum_sf.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/s390/kernel/perf_cpum_sf.c b/arch/s390/kernel/perf_cpum_sf.c
index 4d8ddd8bd9be..7e9b9e6ee821 100644
--- a/arch/s390/kernel/perf_cpum_sf.c
+++ b/arch/s390/kernel/perf_cpum_sf.c
@@ -1938,6 +1938,9 @@ static int __init init_cpum_sampling_pmu(void)
 		return -ENODEV;
 	}
 
+	if (!si.as && !si.ad)
+		return -ENODEV;
+
 	if (si.bsdes != sizeof(struct hws_basic_entry)) {
 		pr_cpumsf_err(RS_INIT_FAILURE_BSDES);
 		return -EINVAL;