Re: [PATCH] thermal/drivers/qcom/lmh: Remove spurious IRQF_ONESHOT
From: Rafael J. Wysocki
Date: Mon Feb 02 2026 - 15:23:23 EST
On Sat, Jan 31, 2026 at 6:16 PM Dmitry Baryshkov
<dmitry.baryshkov@xxxxxxxxxxxxxxxx> wrote:
>
> On Sat, Jan 31, 2026 at 03:07:04PM +0000, Mark Brown wrote:
> > On Sat, Jan 31, 2026 at 08:59:03AM +0200, Dmitry Baryshkov wrote:
> > > On Fri, Jan 30, 2026 at 04:54:45PM +0000, Mark Brown wrote:
> >
> > > > This warning is there because IRQF_ONESHOT is only meaningful when there is
> > > > a threaded interrupt handler and this driver does not register one. Just
> > > > remove IRQF_ONESHOT, it wasn't doing anything.
> >
> > > I think it might be not that easy. The IRQ is level-triggered, with the
> > > IRQ source (if I'm not mistaken) cointinuing to be high level while CPU
> > > is overheated. By removing this IRQF_ONESHOT we might get an IRQ storm.
> >
> > See the commit log for aef30c8d569c ("genirq: Warn about using
> > IRQF_ONESHOT without a threaded handler"), and note that a oneshot
> > interrupt will be unmasked if the main handler directly handles it and
> > returns IRQ_HANDLED instead of waking the thread with IRQ_WAKE_THREAD.
> > The handler in this driver unconditionally returns IRQ_HANDLED.
>
> And looking how it all works, it looks like qcom-cpufreq-hw disables the
> IRQ generated by the LMH driver, which in turn disables the LMH IRQ.
>
> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
I've applied the patch as 6.20/7.0 material, thanks!