[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c0a0acc3-355a-baa2-7e51-0d120400ae72@gmail.com>
Date: Mon, 27 Sep 2021 11:25:58 -0700
From: Florian Fainelli <f.fainelli@...il.com>
To: Thomas Gleixner <tglx@...utronix.de>,
Florian Fainelli <f.fainelli@...il.com>,
Marc Zyngier <maz@...nel.org>
Cc: linux-kernel@...r.kernel.org, Russell King <linux@...linux.org.uk>,
Ray Jui <rjui@...adcom.com>,
Scott Branden <sbranden@...adcom.com>,
"maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE..."
<bcm-kernel-feedback-list@...adcom.com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>,
Rich Felker <dalias@...c.org>,
Rob Herring <robh+dt@...nel.org>,
Frank Rowand <frowand.list@...il.com>,
Ard Biesheuvel <ardb@...nel.org>,
Mike Rapoport <rppt@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Geert Uytterhoeven <geert+renesas@...der.be>,
Arnd Bergmann <arnd@...db.de>,
Guenter Roeck <linux@...ck-us.net>,
Kefeng Wang <wangkefeng.wang@...wei.com>,
Mark Rutland <mark.rutland@....com>,
Andrey Konovalov <andreyknvl@...il.com>,
Anshuman Khandual <anshuman.khandual@....com>,
Valentin Schneider <valentin.schneider@....com>,
Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
"moderated list:ARM PORT" <linux-arm-kernel@...ts.infradead.org>,
"open list:SUPERH" <linux-sh@...r.kernel.org>,
"open list:BROADCOM BMIPS MIPS ARCHITECTURE"
<linux-mips@...r.kernel.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE"
<devicetree@...r.kernel.org>
Subject: Re: [PATCH 03/11] genirq: Export irq_set_affinity_locked()
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
Powered by blists - more mailing lists