I just asked on the linuxppc-dev list, but here is proably the better
place to ask.
We had a linuxppc_2_3 tree which had the #defines below disabled.
The fresh linuxppc_2_4 tree doesn't have it anymore.
The 2.4.0-ac9 patch has the current status of
linclude/asm-ppc/semaphore.h:
...
#define up_read(sem) \
do { \
unsigned long flags; \
\
CHECK_MAGIC((sem)->__magic); \
\
spin_lock_irqsave(&(sem)->lock, flags); \
if (!--(sem)->rd && waitqueue_active(&(sem)->wait)) \
wake_up(&(sem)->wait); \
spin_unlock_irqrestore(&(sem)->lock, flags); \
} while (0)
...
What needs to be changed, the ppc/semaphore.h file or the
linux/usbdevice_fs.h to avoid this conflict?
Gruss Olaf
----- Forwarded message from Olaf Hering <olh@suse.de> -----
Date: Tue, 16 Jan 2001 04:17:43 +0100
From: Olaf Hering <olh@suse.de>
To: linuxppc-dev@lists.linuxppc.org
Subject: up_read/up_write redefinitions in asm/semaphore.h and linux/usbdevice_fs.h
Hi,
I have some redefinitions when I compile usbdevfs:
gcc -D__KERNEL__ -I/usr/src/linux-2.4.0.SuSE/include -Wall
-Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing
-D__powerpc__ -fsigned-char -msoft-float -pipe -ffixed-r2
-Wno-uninitialized -mmultiple -mstring -c -o inode.o inode.c
In file included from inode.c:41:
/usr/src/linux-2.4.0.SuSE/include/linux/usbdevice_fs.h:173: warning:
`up_read' redefined
/usr/src/linux-2.4.0.SuSE/include/asm/semaphore.h:186: warning: this is
the location of the previous definition
/usr/src/linux-2.4.0.SuSE/include/linux/usbdevice_fs.h:174: warning:
`up_write' redefined
We had this patch in the linuxppc_2_3 tree:
diff -urN linux-2.4.0-ac4/include/linux/usbdevice_fs.h
linux-2.4.0-ac4-ppc/include/linux/usbdevice_fs.h
--- linux-2.4.0-ac4/include/linux/usbdevice_fs.h Thu Jan 4
23:52:32 2001
+++ linux-2.4.0-ac4-ppc/include/linux/usbdevice_fs.h Mon Jan 8
10:44:29 2001
@@ -166,13 +166,14 @@
* sigh. rwsemaphores do not (yet) work from modules
*/
+#if 0
#define rw_semaphore semaphore
#define init_rwsem init_MUTEX
#define down_read down
#define down_write down
#define up_read up
#define up_write up
-
+#endif
struct dev_state {
struct list_head list; /* state list */
It is gone in linuxppc_2_4 tree.
The USB layer should proably not use these generic names.
How can we fix that?
Gruss Olaf
-- $ man cloneBUGS Main feature not yet implemented...
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
----- End forwarded message -----
--
-- $ man cloneBUGS Main feature not yet implemented... - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/