Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/include/linux/hardirq.h |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN include/linux/hardirq.h~preempt-cleanup-fix include/linux/hardirq.h
--- 25/include/linux/hardirq.h~preempt-cleanup-fix	2004-10-01 20:15:29.898645320 -0700
+++ 25-akpm/include/linux/hardirq.h	2004-10-01 20:15:29.901644864 -0700
@@ -66,7 +66,7 @@
 # define preemptible()	(preempt_count() == 0 && !irqs_disabled())
 # define IRQ_EXIT_OFFSET (HARDIRQ_OFFSET-1)
 #else
-# define in_atomic()	(preempt_count() != 0)
+# define in_atomic()	((preempt_count() & ~PREEMPT_ACTIVE) != 0)
 # define preemptible()	0
 # define IRQ_EXIT_OFFSET HARDIRQ_OFFSET
 #endif
_