On Thu, Feb 02, 2012 at 04:17:02PM +0800, TAO HU wrote: > Hi, Don > > 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. > > In theory, disabling IRQ for long time (10s in my case) also implies > the high priority thread (watchdog) is blocked > as well. > So the ideal case is that softlockup driver could give warning right > after the IRQ is re-enabled. > It does so occasionally but fails to be consistent. The only thing I can think of is that the clock/jiffies isn't updated until after the hrtimer is run. I'm not sure if there is any guarantee for ordering once interrupts are enabled. But that is just a guess. I guess in theory, I would expect that when interrupts are enabled, the system would immediately jump into an IRQ context, update the clock/jiffies, then run all the other irq handlers like hrtimers, which would see the new time and do the right thing. After everything is done, the system would return to your test code and re-enable preemption allowing the softlockup thread to run again. I could be very wrong though. :-) Cheers, Don -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html