--- zzzz-none-000/linux-2.6.28.10/arch/mips/include/asm/atomic.h 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/arch/mips/include/asm/atomic.h 2009-12-18 15:54:10.000000000 +0000 @@ -297,7 +297,7 @@ raw_local_irq_save(flags); result = v->counter; result -= i; - if (result >= 0) + /*--- if (result >= 0) is always true !!!! ---*/ v->counter = result; raw_local_irq_restore(flags); }