From: Carl-Daniel Hailfinger <c-d.hailfinger.kernel.2003@gmx.net>

{set,clear}_bit for all arches no longer return int, but void.  This patch
renames the old generic implementations to test_and_{set,clear}_bit and adds
new-style {set,clear}_bit.



 25-akpm/include/asm-generic/bitops.h |   28 ++++++++++++++++++++++++++--
 1 files changed, 26 insertions(+), 2 deletions(-)

diff -puN include/asm-generic/bitops.h~generic-bitops-update include/asm-generic/bitops.h
--- 25/include/asm-generic/bitops.h~generic-bitops-update	Tue Apr 15 15:53:34 2003
+++ 25-akpm/include/asm-generic/bitops.h	Tue Apr 15 15:53:34 2003
@@ -16,7 +16,31 @@
  * C language equivalents written by Theodore Ts'o, 9/26/92
  */
 
-extern __inline__ int set_bit(int nr,long * addr)
+extern __inline__ void set_bit(int nr,long * addr)
+{
+	int	mask;
+
+	addr += nr >> 5;
+	mask = 1 << (nr & 0x1f);
+	cli();
+	*addr |= mask;
+	sti();
+	return;
+}
+
+extern __inline__ void clear_bit(int nr, long * addr)
+{
+	int	mask;
+
+	addr += nr >> 5;
+	mask = 1 << (nr & 0x1f);
+	cli();
+	*addr &= ~mask;
+	sti();
+	return;
+}
+
+extern __inline__ int test_and_set_bit(int nr,long * addr)
 {
 	int	mask, retval;
 
@@ -29,7 +53,7 @@ extern __inline__ int set_bit(int nr,lon
 	return retval;
 }
 
-extern __inline__ int clear_bit(int nr, long * addr)
+extern __inline__ int test_and_clear_bit(int nr, long * addr)
 {
 	int	mask, retval;
 

_