[patch 2/2] arm: Allow forced irq threading

Thomas Gleixner tglx at linutronix.de
Thu Feb 14 17:04:48 EST 2013


On Thu, 14 Feb 2013, Russell King - ARM Linux wrote:

> On Thu, Feb 14, 2013 at 08:53:53PM -0000, Thomas Gleixner wrote:
> > All timer interrupts and the perf interrupt are marked NO_THREAD, so
> > its safe to allow forced interrupt threading.
> 
> What effect does this have on IRQ latency, particularly on the slower CPUs?
> 
> If it adds to the IRQ latency, then it must be conditional; there are
> platforms where IRQ latency is important for things like network devices
> to keep up (particularly the SMC NICs).

It does not affect anything unless you add "threadirqs" to the kernel
command line. This command line argument puts the kernel into forced
irq threading mode. Otherwise it just works as now.

And yes, if enabled on the command line it adds latency due to the
delayed invocation of the handler in the thread.

Though for mainline this is primary a debug mechanism where you can
morph the kernel explosion in the interrupt handler into a takedown of
the handler thread instead of crashing the machine completely.
 
Now on RT we force this and I can tell you that even on slow machines
with SMC NICs the overhead seems to be in a range where these systems
can cope with. Of course, if you tweak the scheduling params of the
irq thread low enough you can run into problematic situations. But
that's not an ARM specific problem, that's a general problem of
configuring a RT system.

Thanks,

	tglx



More information about the linux-arm-kernel mailing list