ARM: 8351/1: perf: don't warn about missing interrupt-affinity property for PPIs
authorWill Deacon <will.deacon@arm.com>
Fri, 1 May 2015 16:15:23 +0000 (17:15 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 3 May 2015 22:23:44 +0000 (23:23 +0100)
PPIs are affine by nature, so the interrupt-affinity property is not
used and therefore we shouldn't print a warning in its absence.

Reported-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Reviewed-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/perf_event_cpu.c

index 91c7ba182dcdd9b9e84ce8f5222181b32922deaf..becf7ad6eddc4c0ef8b567dff173e9e304fa8ebb 100644 (file)
@@ -303,12 +303,17 @@ static int probe_current_pmu(struct arm_pmu *pmu)
 
 static int of_pmu_irq_cfg(struct platform_device *pdev)
 {
-       int i;
+       int i, irq;
        int *irqs = kcalloc(pdev->num_resources, sizeof(*irqs), GFP_KERNEL);
 
        if (!irqs)
                return -ENOMEM;
 
+       /* Don't bother with PPIs; they're already affine */
+       irq = platform_get_irq(pdev, 0);
+       if (irq >= 0 && irq_is_percpu(irq))
+               return 0;
+
        for (i = 0; i < pdev->num_resources; ++i) {
                struct device_node *dn;
                int cpu;