Re: Using random in interrupts for RT

From: Ben Hutchings
Date: Tue Aug 21 2012 - 15:13:00 EST


On Tue, Aug 21, 2012 at 02:12:13PM -0400, Steven Rostedt wrote:
> On Tue, 2012-08-14 at 10:30 -0400, Steven Rostedt wrote:
> > Thomas,
> >
> > Ben Hutchings asked me if we still need "genirq: Disable random call on
> > preempt-rt" for -rt? With commit 902c098a366 "random: use lockless
> > techniques in the interrupt path" there is no more locks used. But does
> > it still produce high latencies?
>
> Ben,
>
> Looks that the #ifndef can't be removed just yet. The code is not
> totally lockless...
>
>
> add_interrupt_randomness ->
> credit_entropy_bits ->
> kill_fasync ->
> kill_fasync_rcu ->
> spin_lock_irqsave(&fa->fa_lock, flags)
>
> to make things worse, that spinlock turns into a mutex on -rt, so it may
> crash the box if triggered.

Thanks for checking this.

Ben.

--
Ben Hutchings
We get into the habit of living before acquiring the habit of thinking.
- Albert Camus
--
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/