patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / include / asm-ppc / hardirq.h
index 8f4f12a..2531c3b 100644 (file)
@@ -83,11 +83,15 @@ typedef struct {
 
 #ifdef CONFIG_PREEMPT
 # define in_atomic()   ((preempt_count() & ~PREEMPT_ACTIVE) != kernel_locked())
+# define preemptible() (preempt_count() == 0 && !irqs_disabled())
 # define IRQ_EXIT_OFFSET (HARDIRQ_OFFSET-1)
+
 #else
 # define in_atomic()   (preempt_count() != 0)
+# define preemptible() 0
 # define IRQ_EXIT_OFFSET HARDIRQ_OFFSET
 #endif
+
 #define irq_exit()                                                     \
 do {                                                                   \
        preempt_count() -= IRQ_EXIT_OFFSET;                             \