[RFC PATCH v0.1] net driver: mpc52xx fec

Scott Wood scottwood at freescale.com
Fri Sep 28 04:43:03 EST 2007


Jon Smirl wrote:
> The call to msleep() is inside a block protected with
> :#define in_interrupt()          (irq_count())
> if (!in_interrupt)
> 
> The stack trace looks like it is in a timer interrupt so shouldn't
> irq_count be non-zero?
> Could there be some lack of coordination on irq_count and the timer
> tick with the preempt patch applied?  Or does irq_count() not count
> soft irqs?
> 
> (!in_interrupt) may be the wrong way to protect this code.

I think in_atomic() is what you want.

-Scott


More information about the Linuxppc-embedded mailing list