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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/27/21 11:18 AM, Thomas Gleixner wrote:
> On Mon, Sep 27 2021 at 10:47, Florian Fainelli wrote:
>> On 9/25/21 2:37 PM, Thomas Gleixner wrote:
>>>> 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.
>>
>> That is correct. How would you recommend addressing that? In premise
>> when this driver is used on ARM[64] it is used as a second level
>> interrupt controller hanging off the ARM GIC (or another ARM CPU
>> interrupt controller), so in that case I suppose I could make the
>> irq_set_cpu_offline be dependent upon CONFIG_SMP and CONFIG_MIPS, would
>> that be acceptable?
> 
> Why? Just get rid of the callback in that driver and ensure that
> irq_migrate_all_off_this_cpu() is invoked when the CPU dies.
> 
> arch/mips/kernel/smp-cps.c already does that, but I don't know whether
> your MIPS platform uses those SMP ops. If not you surely have a template
> there.

We use arch/mips/kernel/smp-bmips.c but I do see the path forward, thanks!
-- 
-- 
Florian



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux