On Sat, 2013-02-16 at 12:59 -0800, Paul E. McKenney wrote: > > > diff --git a/kernel/rcutiny_plugin.h b/kernel/rcutiny_plugin.h > > index 2b0484a..bac1906 100644 > > --- a/kernel/rcutiny_plugin.h > > +++ b/kernel/rcutiny_plugin.h > > @@ -552,7 +552,7 @@ static void rcu_read_unlock_special(struct task_struct *t) > > rcu_preempt_cpu_qs(); > > > > /* Hardware IRQ handlers cannot block. */ > > - if (in_irq()) { > > + if (preempt_count() & (HARDIRQ_MASK | SOFTIRQ_OFFSET)) { > > For whatever it is worth, in mainline this is: > > if (in_irq() || in_serving_softirq()) { > > The definition of in_serving_softirq() is a bit different: > > #define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET) > > This might be due to differences between mainline and -rt, but thought > it worth calling attention to. > Right, and we should avoid open coding HARDIRQ_MASK and SOFTIRQ_OFFSET. And note, -rt is slowly creeping into mainline. It's better to have things like this nicely tidied up. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html