diff options
Diffstat (limited to 'arch/s390/kernel/perf_cpum_sf.c')
| -rw-r--r-- | arch/s390/kernel/perf_cpum_sf.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/arch/s390/kernel/perf_cpum_sf.c b/arch/s390/kernel/perf_cpum_sf.c index c1bf75ffb875..7e1e40323b78 100644 --- a/arch/s390/kernel/perf_cpum_sf.c +++ b/arch/s390/kernel/perf_cpum_sf.c @@ -823,9 +823,12 @@ static int cpumsf_pmu_event_init(struct perf_event *event)  	}  	/* Check online status of the CPU to which the event is pinned */ -	if ((unsigned int)event->cpu >= nr_cpumask_bits || -	    (event->cpu >= 0 && !cpu_online(event->cpu))) -		return -ENODEV; +	if (event->cpu >= 0) { +		if ((unsigned int)event->cpu >= nr_cpumask_bits) +			return -ENODEV; +		if (!cpu_online(event->cpu)) +			return -ENODEV; +	}  	/* Force reset of idle/hv excludes regardless of what the  	 * user requested. |