__clear_bit_unlock: A write barrier is sufficient for release semantics Switch the smb_mb that causes a fence instruction to be issued on x86 to a write barrier which issues no instruction on x86. Signed-off-by: Christoph Lameter Index: linux-2.6/include/asm-generic/bitops/lock.h =================================================================== --- linux-2.6.orig/include/asm-generic/bitops/lock.h 2007-10-19 04:08:58.000000000 -0700 +++ linux-2.6/include/asm-generic/bitops/lock.h 2007-10-19 04:09:17.000000000 -0700 @@ -37,7 +37,7 @@ do { \ */ #define __clear_bit_unlock(nr, addr) \ do { \ - smp_mb(); \ + smp_wmb(); \ __clear_bit(nr, addr); \ } while (0)