Re: In many cases softlockup can not be reported after disablingIRQ for long time

From: Russell King - ARM Linux
Date: Thu Feb 02 2012 - 03:44:18 EST


.sdrawkcab esra s'ti ,tsop pot t'noD

(Don't top post, it's arse backwards.)

On Thu, Feb 02, 2012 at 04:17:02PM +0800, TAO HU wrote:
> My concern is not actually that the softlockup could not be reported
> while the IRQ is disabled.
> What bothering me is that even AFTER re-enable the IRQ, it will not
> give warning in many cases.

That's already been explained.

softlockups are detected by time passing. Time can't properly advance
with interrupts disabled, as the backing counter (assuming you're using
the clocksource and clockevent stuff) could wrap. If it wraps, the
systems idea of time which has passed will be incorrect.

So, if interrupts are disabled for a long period, the system loses track
of time, and therefore can't know how long the system has been blocked for.
--
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/