Re: [v3.4-rc1] ACPI regression bisected

From: Thomas Gleixner
Date: Thu Apr 19 2012 - 05:30:36 EST


On Thu, 12 Apr 2012, Andi Kleen wrote:

>
> > > I feared that. So now is the question whether there is a way to mask
> > > the interrupt at the "device" level.
>
> Probably not. Len?
>
> > If not, I could be persuaded to provide a mechanism to force thread
> > all interrupts which are on that line, if there's a good argument to
> > do so.
>
> Hmm, we could probably just use a work queue for this instead. I guess i drank
> the threaded
> interrupt kool aid too much when I did the patch :-)
>
> I'll switch over to a workqueue.

That still requires that you can silence the interrupt at the device
level in the first place unless you play silly games with
disable_irq_nosync(), which is even worse than having a
IRQF_FORCE_ONESHOT mechanism in the core.

If you go the workqueue way, then you basically split the interrupt
into a hard irq context and a thread handler. So it's the same to
request a real threaded interrupt with a primary and a thread handler
and return IRQF_WAKE_THREAD conditionally from the primary handler,
when you need the thread context for further processing.

Thoughts?

tglx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/