Messages in this thread | | | From | Guo Ren <> | Date | Fri, 5 Nov 2021 09:06:51 +0800 | Subject | Re: [PATCH V6] irqchip/sifive-plic: Fixup EOI failed when masked |
| |
On Thu, Nov 4, 2021 at 10:57 PM Marc Zyngier <maz@kernel.org> wrote: > > On Thu, 04 Nov 2021 14:40:42 +0000, > Anup Patel <anup@brainfault.org> wrote: > > > > On Mon, Nov 1, 2021 at 6:47 PM <guoren@kernel.org> wrote: > > > > > > From: Guo Ren <guoren@linux.alibaba.com> > > > > > > When using "devm_request_threaded_irq(,,,,IRQF_ONESHOT,,)" in the driver, > > > only the first interrupt could be handled, and continue irq is blocked by > > > hw. Because the riscv plic couldn't complete masked irq source which has > > > been disabled in enable register. The bug was firstly reported in [1]. > > > > > > Here is the description of Interrupt Completion in PLIC spec [2]: > > > > > > The PLIC signals it has completed executing an interrupt handler by > > > writing the interrupt ID it received from the claim to the claim/complete > > > register. The PLIC does not check whether the completion ID is the same > > > as the last claim ID for that target. If the completion ID does not match > > > an interrupt source that is currently enabled for the target, the > > > ^^ ^^^^^^^^^ ^^^^^^^ > > > completion is silently ignored. > > > > > > [1] http://lists.infradead.org/pipermail/linux-riscv/2021-July/007441.html > > > [2] https://github.com/riscv/riscv-plic-spec/blob/8bc15a35d07c9edf7b5d23fec9728302595ffc4d/riscv-plic.adoc > > > > > > Reported-by: Vincent Pelletier <plr.vincent@gmail.com> > > > Signed-off-by: Guo Ren <guoren@linux.alibaba.com> > > > Cc: Anup Patel <anup@brainfault.org> > > > Cc: Thomas Gleixner <tglx@linutronix.de> > > > Cc: Marc Zyngier <maz@kernel.org> > > > Cc: Palmer Dabbelt <palmer@dabbelt.com> > > > Cc: Atish Patra <atish.patra@wdc.com> > > > Cc: Nikita Shubin <nikita.shubin@maquefel.me> > > > Cc: incent Pelletier <plr.vincent@gmail.com> > > > > Please include a Fixes: tag Okay
> > > > Also, I see that you have dropped the DT bindings patch. We still > > need separate compatible string for T-HEAD PLIC because OpenSBI > > will use it for other work-arounds. > > > > I suggest to include to more patches in this series: > > 1) Your latest T-HEAD PLIC DT bindings patch > > 2) Separate patch to use T-HEAD PLIC compatible in PLIC driver Thx for the suggestion, and I would put above in 5.17 as Mark suggested.
> > No, please keep things separate. The PLIC is broken *today*, and I > want to take a patch for -rc1. The rest (compatible and such) is a new > feature and can wait until 5.17. Okay
> > M. > > -- > Without deviation from the norm, progress is not possible.
-- Best Regards Guo Ren
ML: https://lore.kernel.org/linux-csky/
| |