diff options
author | Pawel Moll <pawel.moll@arm.com> | 2015-10-15 15:32:46 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2015-10-15 17:10:15 +0200 |
commit | a0bcbe969f564d1ec08658170dda72a1b7e9053a (patch) | |
tree | ee04446a3457f3bb5e634ceb02c0031364274ce9 | |
parent | bus: arm-ccn: Handle correctly no-more-cpus case (diff) | |
download | linux-a0bcbe969f564d1ec08658170dda72a1b7e9053a.tar.xz linux-a0bcbe969f564d1ec08658170dda72a1b7e9053a.zip |
bus: arm-ccn: Fix irq affinity setting on CPU migration
When PMU context is migrating between CPUs, interrupt affinity is set as
well. Only this should not happen when the CCN interrupt is not being
used at all (the driver is using a hrtimer tick instead).
Fixed now.
Cc: <stable@vger.kernel.org> # 4.2+
Signed-off-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r-- | drivers/bus/arm-ccn.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c index cc322fbde9af..7082c7268845 100644 --- a/drivers/bus/arm-ccn.c +++ b/drivers/bus/arm-ccn.c @@ -1188,7 +1188,8 @@ static int arm_ccn_pmu_cpu_notifier(struct notifier_block *nb, break; perf_pmu_migrate_context(&dt->pmu, cpu, target); cpumask_set_cpu(target, &dt->cpu); - WARN_ON(irq_set_affinity(ccn->irq, &dt->cpu) != 0); + if (ccn->irq) + WARN_ON(irq_set_affinity(ccn->irq, &dt->cpu) != 0); default: break; } |