Jan Beulich
2008-Mar-14 07:54 UTC
[Xen-devel] [PATCH] linux/x86: simplify synch_test_bit()
There really is no need for a redundant implementation here, just keep
the alternative name for allowing consumers to use consistent naming.
As usual, written and tested on 2.6.25-rc5 and made apply to the 2.6.18
tree without further testing.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Index: head-2008-03-11/include/asm-i386/mach-xen/asm/synch_bitops.h
==================================================================---
head-2008-03-11.orig/include/asm-i386/mach-xen/asm/synch_bitops.h 2008-03-12
17:07:19.000000000 +0100
+++ head-2008-03-11/include/asm-i386/mach-xen/asm/synch_bitops.h 2008-03-12
17:10:21.000000000 +0100
@@ -119,26 +119,7 @@ static inline unsigned long __synch_cmpx
return old;
}
-static __always_inline int synch_const_test_bit(int nr,
- const volatile void * addr)
-{
- return ((1UL << (nr & 31)) &
- (((const volatile unsigned int *) addr)[nr >> 5])) != 0;
-}
-
-static __inline__ int synch_var_test_bit(int nr, volatile void * addr)
-{
- int oldbit;
- __asm__ __volatile__ (
- "btl %2,%1\n\tsbbl %0,%0"
- : "=r" (oldbit) : "m" (ADDR), "Ir" (nr)
);
- return oldbit;
-}
-
-#define synch_test_bit(nr,addr) \
-(__builtin_constant_p(nr) ? \
- synch_const_test_bit((nr),(addr)) : \
- synch_var_test_bit((nr),(addr)))
+#define synch_test_bit test_bit
#define synch_cmpxchg_subword synch_cmpxchg
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel