[PATCH v3] bitops kernel-doc: inline instead of macro

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Randy Dunlap
Date: Thursday, October 25, 2007 - 2:21 pm

> We might as well clean stuff up as we're churning the code.

Thomas, can you replace the previous patch with this one?

Usage of __inline__ is fixed in the next patch (after this one).

---

From: Randy Dunlap <randy.dunlap@oracle.com>

Use duplicated inline functions for test_and_set_bit_lock() on x86
instead of #define macros, thus avoiding a bad example.  This allows
kernel-doc to run cleanly instead of terminating with an error:

Error(linux-2.6.24-rc1//include/asm-x86/bitops_32.h:188): cannot understand prototype: 'test_and_set_bit_lock test_and_set_bit '

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
 include/asm-x86/bitops_32.h |    7 +++++--
 include/asm-x86/bitops_64.h |    7 +++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

--- linux-2.6.24-rc1.orig/include/asm-x86/bitops_32.h
+++ linux-2.6.24-rc1/include/asm-x86/bitops_32.h
@@ -183,9 +183,12 @@ static inline int test_and_set_bit(int n
  * @nr: Bit to set
  * @addr: Address to count from
  *
- * This is the same as test_and_set_bit on x86
+ * This is the same as test_and_set_bit on x86.
  */
-#define test_and_set_bit_lock test_and_set_bit
+static inline int test_and_set_bit_lock(int nr, volatile unsigned long *addr)
+{
+	return test_and_set_bit(nr, addr);
+}
 
 /**
  * __test_and_set_bit - Set a bit and return its old value
--- linux-2.6.24-rc1.orig/include/asm-x86/bitops_64.h
+++ linux-2.6.24-rc1/include/asm-x86/bitops_64.h
@@ -173,9 +173,12 @@ static __inline__ int test_and_set_bit(i
  * @nr: Bit to set
  * @addr: Address to count from
  *
- * This is the same as test_and_set_bit on x86
+ * This is the same as test_and_set_bit on x86.
  */
-#define test_and_set_bit_lock test_and_set_bit
+static __inline__ int test_and_set_bit_lock(int nr, volatile void *addr)
+{
+	return test_and_set_bit(nr, addr);
+}
 
 /**
  * __test_and_set_bit - Set a bit and return its old value
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] bitops kernel-doc: expand macro, Randy Dunlap, (Tue Oct 23, 10:09 pm)
Re: [PATCH] bitops kernel-doc: expand macro, Nick Piggin, (Wed Oct 24, 1:00 am)
Re: [PATCH] bitops kernel-doc: expand macro, Randy Dunlap, (Wed Oct 24, 8:38 am)
[PATCH v2] bitops kernel-doc: inline instead of macro, Randy Dunlap, (Thu Oct 25, 9:31 am)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, Thomas Gleixner, (Thu Oct 25, 9:42 am)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, Thomas Gleixner, (Thu Oct 25, 10:05 am)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, Andrew Morton, (Thu Oct 25, 1:48 pm)
[PATCH v3] bitops kernel-doc: inline instead of macro, Randy Dunlap, (Thu Oct 25, 2:21 pm)
[PATCH] x86 bitops: fix code style issues, Randy Dunlap, (Thu Oct 25, 2:27 pm)
Re: [PATCH v3] bitops kernel-doc: inline instead of macro, Thomas Gleixner, (Thu Oct 25, 2:27 pm)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, Andy Whitcroft, (Sat Oct 27, 3:43 am)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, Andy Whitcroft, (Sat Oct 27, 7:30 am)
Re: [PATCH v2] bitops kernel-doc: inline instead of macro, H. Peter Anvin, (Sat Oct 27, 11:48 am)