hardirq.h should include smp_lock.h when preempt enabled
As in_atomic() uses kernel_locked() which is in smp_lock.h
-i
[email protected]
http://www.gelato.unsw.edu.au
===== hardirq.h 1.13 vs edited =====
hardirq.h renamed from include/asm-ia64/hardirq.h +1 -0
@@ -89,6 +89,7 @@#define irq_enter () (preempt_count() += HARDIRQ_OFFSET)#ifdef CONFIG_PREEMPT +# include <linux/smp_lock.h> # define in_atomic () ((preempt_count() & ~PREEMPT_ACTIVE) != kernel_locked())# define IRQ_EXIT_OFFSET (HARDIRQ_OFFSET-1)#else