Skip to contentSkip to conversation

net-2.6.24 - build failure

DISCUSSION Joe Perches 4 participants 5 messages Sep 19, 2007 – Sep 21, 2007 1 message not in the archive

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

allyesconfig

CC drivers/net/wireless/p54pci.o
LD drivers/net/wireless/built-in.o
drivers/net/wireless/b43legacy/built-in.o: In function `tsf_read_file':
drivers/net/wireless/b43legacy/debugfs.c:80: multiple definition of tsf_read_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:80: first defined here drivers/net/wireless/b43legacy/built-in.o: In function ucode_regs_read_file':
net-2.6.24/drivers/net/wireless/b43legacy/debugfs.c:106: multiple definition of ucode_regs_read_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:106: first defined here drivers/net/wireless/b43legacy/built-in.o: In function restart_write_file':
net-2.6.24/drivers/net/wireless/b43legacy/debugfs.c:187: multiple definition of restart_write_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:266: first defined here drivers/net/wireless/b43legacy/built-in.o: In function tsf_write_file':
net-2.6.24/drivers/net/wireless/b43legacy/debugfs.c:94: multiple definition of tsf_write_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:94: first defined here drivers/net/wireless/b43legacy/built-in.o: In function txstat_read_file':
net-2.6.24/drivers/net/wireless/b43legacy/debugfs.c:139: multiple definition of txstat_read_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:139: first defined here drivers/net/wireless/b43legacy/built-in.o: In function ssb_write32':
net-2.6.24/include/linux/ssb/ssb.h:385: multiple definition of rootdir' drivers/net/wireless/b43/built-in.o:net-2.6.24/include/linux/ssb/ssb.h:385: first defined here drivers/net/wireless/b43legacy/built-in.o: In function shm_read_file':
net-2.6.24/drivers/net/wireless/b43legacy/debugfs.c:120: multiple definition of `shm_read_file' drivers/net/wireless/b43/built-in.o:net-2.6.24/drivers/net/wireless/b43/debugfs.c:120: first defined here make[3]: *** [drivers/net/wireless/built-in.o] Error 1
make[2]: *** [drivers/net/wireless] Error 2
make[1]: *** [drivers/net] Error 2
make: *** [drivers] Error 2

maintainer
#1 lore raw

From: Joe Perches <[email protected]>
Date: Wed, 19 Sep 2007 14:53:22 -0700

Quoted 2 lines

drivers/net/wireless/b43legacy/built-in.o: In function `tsf_read_file':
drivers/net/wireless/b43legacy/debugfs.c:80: multiple definition of `tsf_read_file'

Can one of the wireless folks fix b43legacy to not use the same global variable and function names as the b43 driver?

Thanks.

A message that is not in the archive (sent off-list or not yet received): 20070919.151712.66176476.davem-fT/PcQaiUtIeIZ0/[email protected]

#3 lore raw
Quoted 9 lines · David Miller

From: Joe Perches <[email protected]>
Date: Wed, 19 Sep 2007 14:53:22 -0700

Quoted 2 lines

drivers/net/wireless/b43legacy/built-in.o: In function `tsf_read_file':
drivers/net/wireless/b43legacy/debugfs.c:80: multiple definition of `tsf_read_file'

Can one of the wireless folks fix b43legacy to not use the same global variable and function names as the b43 driver?

David,

The patch below was sent to John Linville yesterday. Obviously, it didn't get included before he pushed to you. With this patch, all the debugfs names become static, and avoid the namespace clash with b43. In addition, Michael Buesch has a similar patch pending for b43.

Larry
========================================

There are additional sparse warnings in b43legacy. None of them result in program errors, but are fixed for completeness.

---

 drivers/net/wireless/b43legacy/debugfs.c |   14 +++++++-------
 drivers/net/wireless/b43legacy/pio.c     |    6 +++---
 2 files changed, 10 insertions(+), 10 deletions(-)
drivers/net/wireless/b43legacy/debugfs.c +7 -7
Index: wireless-dev/drivers/net/wireless/b43legacy/debugfs.c
===================================================================
@@ -39,7 +39,7 @@
 
 
 /* The root directory. */
-struct dentry *rootdir;
+static struct dentry *rootdir;
 
 struct b43legacy_debugfs_fops {
 	ssize_t (*read)(struct b43legacy_wldev *dev, char *buf, size_t bufsize);
@@ -76,7 +76,7 @@ struct b43legacy_dfs_file * fops_to_dfs_
 
 
 /* wl->irq_lock is locked */
-ssize_t tsf_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
+static ssize_t tsf_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
 {
 	ssize_t count = 0;
 	u64 tsf;
@@ -90,7 +90,7 @@ ssize_t tsf_read_file(struct b43legacy_w
 }
 
 /* wl->irq_lock is locked */
-int tsf_write_file(struct b43legacy_wldev *dev, const char *buf, size_t count)
+static int tsf_write_file(struct b43legacy_wldev *dev, const char *buf, size_t count)
 {
 	u64 tsf;
 
@@ -102,7 +102,7 @@ int tsf_write_file(struct b43legacy_wlde
 }
 
 /* wl->irq_lock is locked */
-ssize_t ucode_regs_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
+static ssize_t ucode_regs_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
 {
 	ssize_t count = 0;
 	int i;
@@ -116,7 +116,7 @@ ssize_t ucode_regs_read_file(struct b43l
 }
 
 /* wl->irq_lock is locked */
-ssize_t shm_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
+static ssize_t shm_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
 {
 	ssize_t count = 0;
 	int i;
@@ -135,7 +135,7 @@ ssize_t shm_read_file(struct b43legacy_w
 	return count;
 }
 
-ssize_t txstat_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
+static ssize_t txstat_read_file(struct b43legacy_wldev *dev, char *buf, size_t bufsize)
 {
 	struct b43legacy_txstatus_log *log = &dev->dfsentry->txstatlog;
 	ssize_t count = 0;
@@ -183,7 +183,7 @@ out_unlock:
 }
 
 /* wl->irq_lock is locked */
-int restart_write_file(struct b43legacy_wldev *dev, const char *buf, size_t count)
+static int restart_write_file(struct b43legacy_wldev *dev, const char *buf, size_t count)
 {
 	int err = 0;
 
drivers/net/wireless/b43legacy/pio.c +3 -3
Index: wireless-dev/drivers/net/wireless/b43legacy/pio.c
===================================================================
@@ -66,7 +66,7 @@ static u16 tx_get_next_word(const u8 *tx
 		source = packet;
 		i -= txhdr_size;
 	}
-	ret = le16_to_cpu(*((u16 *)(source + i)));
+	ret = le16_to_cpu(*((__le16 *)(source + i)));
 	*pos += 2;
 
 	return ret;
@@ -539,7 +539,7 @@ static void pio_rx_error(struct b43legac
 
 void b43legacy_pio_rx(struct b43legacy_pioqueue *queue)
 {
-	u16 preamble[21] = { 0 };
+	__le16 preamble[21] = { 0 };
 	struct b43legacy_rxhdr_fw3 *rxhdr;
 	u16 tmp;
 	u16 len;
@@ -609,7 +609,7 @@ data_ready:
 	skb_put(skb, len);
 	for (i = 0; i < len - 1; i += 2) {
 		tmp = b43legacy_pio_read(queue, B43legacy_PIO_RXDATA);
-		*((u16 *)(skb->data + i)) = cpu_to_le16(tmp);
+		*((__le16 *)(skb->data + i)) = cpu_to_le16(tmp);
 	}
 	if (len % 2) {
 		tmp = b43legacy_pio_read(queue, B43legacy_PIO_RXDATA);

-------

maintainer
#4 lore raw

From: Larry Finger <[email protected]>
Date: Wed, 19 Sep 2007 19:11:19 -0500

Quoted 5 lines

The patch below was sent to John Linville yesterday. Obviously, it didn't get included before he pushed to you. With this patch, all the debugfs names become static, and avoid the namespace clash with b43. In addition, Michael Buesch has a similar patch pending for b43.

I've applied this patch and if someone sends me the b43 patch I'll apply that one too.

Thanks Larry!

#5 lore raw
In reply to David Miller
Quoted 8 lines · On Thursday 20 September 2007 00:17:12 David Miller wrote:

From: Joe Perches <[email protected]>
Date: Wed, 19 Sep 2007 14:53:22 -0700

Quoted 2 lines

drivers/net/wireless/b43legacy/built-in.o: In function `tsf_read_file':
drivers/net/wireless/b43legacy/debugfs.c:80: multiple definition of `tsf_read_file'

Can one of the wireless folks fix b43legacy to not use the same global variable and function names as the b43 driver?

Fixes are already submitted.
This was only an accident (forgot static).

Signature · 1 line
Greetings Michael.