]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
perf/arm-ni: Set initial IRQ affinity
authorRobin Murphy <robin.murphy@arm.com>
Tue, 13 May 2025 15:38:58 +0000 (16:38 +0100)
committerWill Deacon <will@kernel.org>
Fri, 4 Jul 2025 17:03:55 +0000 (18:03 +0100)
While we do request our IRQs with the right flags to stop their affinity
changing unexpectedly, we forgot to actually set it to start with. Oops.

Cc: stable@vger.kernel.org
Fixes: 4d5a7680f2b4 ("perf: Add driver for Arm NI-700 interconnect PMU")
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Tested-by: Shouping Wang <allen.wang@hj-micro.com>
Link: https://lore.kernel.org/r/614ced9149ee8324e58930862bd82cbf46228d27.1747149165.git.robin.murphy@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/perf/arm-ni.c

index de7b6cce4d68a881e378deb75be82371ba7e6723..9396d243415f480060e36abcdd8f32d680700fe7 100644 (file)
@@ -544,6 +544,8 @@ static int arm_ni_init_cd(struct arm_ni *ni, struct arm_ni_node *node, u64 res_s
                return err;
 
        cd->cpu = cpumask_local_spread(0, dev_to_node(ni->dev));
+       irq_set_affinity(cd->irq, cpumask_of(cd->cpu));
+
        cd->pmu = (struct pmu) {
                .module = THIS_MODULE,
                .parent = ni->dev,