Re: [PATCH 03/11] genirq: Export irq_set_affinity_locked()

From: Thomas Gleixner
Date: Sat Sep 25 2021 - 17:37:38 EST


On Sat, Sep 25 2021 at 23:21, Thomas Gleixner wrote:

> On Sat, Sep 25 2021 at 12:48, Marc Zyngier wrote:
>> On Fri, 24 Sep 2021 18:05:38 +0100, Florian Fainelli <f.fainelli@xxxxxxxxx> wrote:
>>> }
>>> +EXPORT_SYMBOL_GPL(irq_set_affinity_locked);
>>
>> This doesn't seem right.
>>
>> This driver seem to try and move interrupts on its own when the CPU
>> goes down. Why can't it rely on the normal CPU hotplug infrastructure
>> to do so like all the other drivers (bar some Cavium driver that does
>> the same thing)?
>>
>> I'd rather you take this opportunity to move these drivers into the
>> 21st century, so that we can kill irq_cpu_offline() and co altogether.
>
> I wanted to kill these callbacks years ago. Cavium has two variants of
> those offline/online callbacks:
>
> 1) octeon_irq_cpu_offline_ciu() which is doing the same as that BCM
> driver. These really can go away. Just remove the callback and
> everything just works.

For BCM this works today when that chip is used on ARM[64] simply
because the only architecture which invokes irq_cpu_offline() is MIPS.

Thanks,

tglx