Re: [patch/rfc] perf on raspberry-pi without overflow interrupt

From: Stephane Eranian
Date: Fri Jan 10 2014 - 05:51:42 EST


On Fri, Jan 10, 2014 at 11:08 AM, Will Deacon <will.deacon@xxxxxxx> wrote:
> On Fri, Jan 10, 2014 at 04:08:47AM +0000, Vince Weaver wrote:
>> On Thu, 9 Jan 2014, Will Deacon wrote:
>>
>> > I'd rather see it in the generic code if at all possible. Maybe we could add
>> > a flags field to perf_pmu_register?
>>
>> I can look into adding the check in generic code.
>>
>> In the meantime, would you consider a patch like this that disables
>> the IRQ check and lets ARM devices missing an IRQ (such as the rasp-pi)
>> still have access to the counters?
>
> In the absence of a core change, I think I'd rather have something like your
> second patch, but without the extra no_overflow_irq field (you can check the
> platform device, as I mentioned previously).
>
But before we do that, can someone confirm that on Pi there is simply
no interrupt
generated by the PMU or is it that we don't know how to route it back?

> Cheers,
>
> Will
>
>>
>> diff --git a/arch/arm/kernel/perf_event_cpu.c b/arch/arm/kernel/perf_event_cpu.c
>> index d85055c..ff1a752 100644
>> --- a/arch/arm/kernel/perf_event_cpu.c
>> +++ b/arch/arm/kernel/perf_event_cpu.c
>> @@ -97,8 +97,8 @@ static int cpu_pmu_request_irq(struct arm_pmu *cpu_pmu, irq_handler_t handler)
>>
>> irqs = min(pmu_device->num_resources, num_possible_cpus());
>> if (irqs < 1) {
>> - pr_err("no irqs for PMUs defined\n");
>> - return -ENODEV;
>> + printk_once("no irqs for PMUs defined, sampling events not supported\n");
>> + return 0;
>> }
>>
>> for (i = 0; i < irqs; ++i) {
>>
>>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/