All of lore.kernel.org
 help / color / mirror / Atom feed
* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-08-10  2:21 Stephen Rothwell
  2011-08-10  6:11   ` Kalle Valo
  2011-08-10  7:11   ` Kalle Valo
  0 siblings, 2 replies; 38+ messages in thread
From: Stephen Rothwell @ 2011-08-10  2:21 UTC (permalink / raw)
  To: John W. Linville
  Cc: linux-next, linux-kernel, Kalle Valo, Vasanthakumar Thiagarajan,
	Raja Mani, Vivek Natarajan, Suraj Sumangala, Joe Perches,
	Jouni Malinen

[-- Attachment #1: Type: text/plain, Size: 1397 bytes --]

Hi John,

After merging the final tree, today's linux-next build (powerpc allyesconfig)
failed like this:

drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
(.opd+0x600): multiple definition of `htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
(.text+0x7b40): multiple definition of `.htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined here
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
(.text+0x7d18): multiple definition of `.htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined here
drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
(.opd+0x5e8): multiple definition of `htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here

Probably caused by commit bdcd81707973 ("Add ath6kl cleaned up driver").

I have reverted commit 392e741939dd ("Merge branch 'ath6kl-next' of
master.kernel.org:/pub/scm/linux/kernel/git/kvalo/ath6kl") for today.

John, this has happened a couple of times before where people have just
copied an existing driver that happens to have some badly named global
variables.  :-(
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-08-10  2:21 linux-next: build failure after merge of the final tree (wireless tree related) Stephen Rothwell
@ 2011-08-10  6:11   ` Kalle Valo
  2011-08-10  7:11   ` Kalle Valo
  1 sibling, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  6:11 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, linux-next, linux-kernel,
	Vasanthakumar Thiagarajan, Raja Mani, Vivek Natarajan,
	Suraj Sumangala, Joe Perches, Jouni Malinen

Hi Stephen,

On 08/10/2011 05:21 AM, Stephen Rothwell wrote:
> After merging the final tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
> 
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
> (.opd+0x600): multiple definition of `htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
> (.text+0x7b40): multiple definition of `.htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
> (.text+0x7d18): multiple definition of `.htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
> (.opd+0x5e8): multiple definition of `htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here
> 
> Probably caused by commit bdcd81707973 ("Add ath6kl cleaned up driver").
> 
> I have reverted commit 392e741939dd ("Merge branch 'ath6kl-next' of
> master.kernel.org:/pub/scm/linux/kernel/git/kvalo/ath6kl") for today.

Sorry about that! I'll send a fix right away.

> John, this has happened a couple of times before where people have just
> copied an existing driver that happens to have some badly named global
> variables.  :-(

I was working on adding ath6kl prefix too all global ath6kl symbols but
I haven't been able to finish that yet.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-08-10  6:11   ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  6:11 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, linux-next, linux-kernel,
	Vasanthakumar Thiagarajan, Raja Mani, Vivek Natarajan,
	Suraj Sumangala, Joe Perches, Jouni Malinen

Hi Stephen,

On 08/10/2011 05:21 AM, Stephen Rothwell wrote:
> After merging the final tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
> 
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
> (.opd+0x600): multiple definition of `htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
> (.text+0x7b40): multiple definition of `.htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
> (.text+0x7d18): multiple definition of `.htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
> (.opd+0x5e8): multiple definition of `htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here
> 
> Probably caused by commit bdcd81707973 ("Add ath6kl cleaned up driver").
> 
> I have reverted commit 392e741939dd ("Merge branch 'ath6kl-next' of
> master.kernel.org:/pub/scm/linux/kernel/git/kvalo/ath6kl") for today.

Sorry about that! I'll send a fix right away.

> John, this has happened a couple of times before where people have just
> copied an existing driver that happens to have some badly named global
> variables.  :-(

I was working on adding ath6kl prefix too all global ath6kl symbols but
I haven't been able to finish that yet.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* [PATCH] ath6kl: fix function name conflicts with ath9k
@ 2011-08-10  7:11   ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  7:11 UTC (permalink / raw)
  To: linux-wireless; +Cc: sfr, linux-next

Stepher reported that compilation fails if both ath6kl and ath9k are
compiled in:

drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
(.opd+0x600): multiple definition of `htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
(.text+0x7b40): multiple definition of `.htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined he=
re
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
(.text+0x7d18): multiple definition of `.htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined he=
re
drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
(.opd+0x5e8): multiple definition of `htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here

To fix this add ath6kl prefix to all public functions in htc.c.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
---
 drivers/net/wireless/ath/ath6kl/htc.c     |   61 +++++++++++++++--------------
 drivers/net/wireless/ath/ath6kl/htc.h     |   45 +++++++++++----------
 drivers/net/wireless/ath/ath6kl/htc_hif.c |    4 +-
 drivers/net/wireless/ath/ath6kl/init.c    |   16 ++++----
 drivers/net/wireless/ath/ath6kl/main.c    |    4 +-
 drivers/net/wireless/ath/ath6kl/txrx.c    |   14 +++---
 6 files changed, 74 insertions(+), 70 deletions(-)

diff --git a/drivers/net/wireless/ath/ath6kl/htc.c b/drivers/net/wireless/ath/ath6kl/htc.c
index 5580e22..a8dc5c3 100644
--- a/drivers/net/wireless/ath/ath6kl/htc.c
+++ b/drivers/net/wireless/ath/ath6kl/htc.c
@@ -689,9 +689,9 @@ static int htc_setup_tx_complete(struct htc_target *target)
 	return status;
 }
 
-void htc_set_credit_dist(struct htc_target *target,
-			 struct htc_credit_state_info *cred_dist_cntxt,
-			 u16 srvc_pri_order[], int list_len)
+void ath6kl_htc_set_credit_dist(struct htc_target *target,
+				struct htc_credit_state_info *cred_dist_cntxt,
+				u16 srvc_pri_order[], int list_len)
 {
 	struct htc_endpoint *endpoint;
 	int i, ep;
@@ -717,7 +717,7 @@ void htc_set_credit_dist(struct htc_target *target,
 	}
 }
 
-int htc_tx(struct htc_target *target, struct htc_packet *packet)
+int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet)
 {
 	struct htc_endpoint *endpoint;
 	struct list_head queue;
@@ -745,8 +745,8 @@ int htc_tx(struct htc_target *target, struct htc_packet *packet)
 }
 
 /* flush endpoint TX queue */
-void htc_flush_txep(struct htc_target *target,
-		    enum htc_endpoint_id eid, u16 tag)
+void ath6kl_htc_flush_txep(struct htc_target *target,
+			   enum htc_endpoint_id eid, u16 tag)
 {
 	struct htc_packet *packet, *tmp_pkt;
 	struct list_head discard_q, container;
@@ -785,7 +785,7 @@ void htc_flush_txep(struct htc_target *target,
 
 }
 
-static void htc_flush_txep_all(struct htc_target *target)
+static void ath6kl_htc_flush_txep_all(struct htc_target *target)
 {
 	struct htc_endpoint *endpoint;
 	int i;
@@ -797,12 +797,12 @@ static void htc_flush_txep_all(struct htc_target *target)
 		if (endpoint->svc_id == 0)
 			/* not in use.. */
 			continue;
-		htc_flush_txep(target, i, HTC_TX_PACKET_TAG_ALL);
+		ath6kl_htc_flush_txep(target, i, HTC_TX_PACKET_TAG_ALL);
 	}
 }
 
-void htc_indicate_activity_change(struct htc_target *target,
-				  enum htc_endpoint_id eid, bool active)
+void ath6kl_htc_indicate_activity_change(struct htc_target *target,
+					 enum htc_endpoint_id eid, bool active)
 {
 	struct htc_endpoint *endpoint = &target->endpoint[eid];
 	bool dist = false;
@@ -869,7 +869,7 @@ static int htc_add_rxbuf(struct htc_target *target, struct htc_packet *packet)
 
 	INIT_LIST_HEAD(&queue);
 	list_add_tail(&packet->list, &queue);
-	return htc_add_rxbuf_multiple(target, &queue);
+	return ath6kl_htc_add_rxbuf_multiple(target, &queue);
 }
 
 static void htc_reclaim_rxbuf(struct htc_target *target,
@@ -1721,8 +1721,8 @@ static int htc_fetch_rxpkts(struct htc_target *target,
 	return status;
 }
 
-int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
-			      int *num_pkts)
+int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
+				     u32 msg_look_ahead[], int *num_pkts)
 {
 	struct htc_packet *packets, *tmp_pkt;
 	struct htc_endpoint *endpoint;
@@ -1904,8 +1904,8 @@ fail_ctrl_rx:
 	return NULL;
 }
 
-int htc_add_rxbuf_multiple(struct htc_target *target,
-			   struct list_head *pkt_queue)
+int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
+				  struct list_head *pkt_queue)
 {
 	struct htc_endpoint *endpoint;
 	struct htc_packet *first_pkt;
@@ -1966,7 +1966,7 @@ int htc_add_rxbuf_multiple(struct htc_target *target,
 	return status;
 }
 
-void htc_flush_rx_buf(struct htc_target *target)
+void ath6kl_htc_flush_rx_buf(struct htc_target *target)
 {
 	struct htc_endpoint *endpoint;
 	struct htc_packet *packet, *tmp_pkt;
@@ -1994,9 +1994,9 @@ void htc_flush_rx_buf(struct htc_target *target)
 	}
 }
 
-int htc_conn_service(struct htc_target *target,
-		     struct htc_service_connect_req *conn_req,
-		     struct htc_service_connect_resp *conn_resp)
+int ath6kl_htc_conn_service(struct htc_target *target,
+			    struct htc_service_connect_req *conn_req,
+			    struct htc_service_connect_resp *conn_resp)
 {
 	struct htc_packet *rx_pkt = NULL;
 	struct htc_packet *tx_pkt = NULL;
@@ -2154,7 +2154,8 @@ static void reset_ep_state(struct htc_target *target)
 	INIT_LIST_HEAD(&target->cred_dist_list);
 }
 
-int htc_get_rxbuf_num(struct htc_target *target, enum htc_endpoint_id endpoint)
+int ath6kl_htc_get_rxbuf_num(struct htc_target *target,
+			     enum htc_endpoint_id endpoint)
 {
 	int num;
 
@@ -2212,7 +2213,7 @@ static void htc_setup_msg_bndl(struct htc_target *target)
 	}
 }
 
-int htc_wait_target(struct htc_target *target)
+int ath6kl_htc_wait_target(struct htc_target *target)
 {
 	struct htc_packet *packet = NULL;
 	struct htc_ready_ext_msg *rdy_msg;
@@ -2275,7 +2276,7 @@ int htc_wait_target(struct htc_target *target)
 	connect.svc_id = HTC_CTRL_RSVD_SVC;
 
 	/* connect fake service */
-	status = htc_conn_service((void *)target, &connect, &resp);
+	status = ath6kl_htc_conn_service((void *)target, &connect, &resp);
 
 	if (status)
 		ath6kl_hif_cleanup_scatter(target->dev->ar);
@@ -2293,7 +2294,7 @@ fail_wait_target:
  * Start HTC, enable interrupts and let the target know
  * host has finished setup.
  */
-int htc_start(struct htc_target *target)
+int ath6kl_htc_start(struct htc_target *target)
 {
 	struct htc_packet *packet;
 	int status;
@@ -2327,13 +2328,13 @@ int htc_start(struct htc_target *target)
 	status = ath6kldev_unmask_intrs(target->dev);
 
 	if (status)
-		htc_stop(target);
+		ath6kl_htc_stop(target);
 
 	return status;
 }
 
 /* htc_stop: stop interrupt reception, and flush all queued buffers */
-void htc_stop(struct htc_target *target)
+void ath6kl_htc_stop(struct htc_target *target)
 {
 	spin_lock_bh(&target->htc_lock);
 	target->htc_flags |= HTC_OP_STATE_STOPPING;
@@ -2346,14 +2347,14 @@ void htc_stop(struct htc_target *target)
 	 */
 	ath6kldev_mask_intrs(target->dev);
 
-	htc_flush_txep_all(target);
+	ath6kl_htc_flush_txep_all(target);
 
-	htc_flush_rx_buf(target);
+	ath6kl_htc_flush_rx_buf(target);
 
 	reset_ep_state(target);
 }
 
-void *htc_create(struct ath6kl *ar)
+void *ath6kl_htc_create(struct ath6kl *ar)
 {
 	struct htc_target *target = NULL;
 	struct htc_packet *packet;
@@ -2422,7 +2423,7 @@ void *htc_create(struct ath6kl *ar)
 fail_create_htc:
 	if (i != NUM_CONTROL_BUFFERS || status) {
 		if (target) {
-			htc_cleanup(target);
+			ath6kl_htc_cleanup(target);
 			target = NULL;
 		}
 	}
@@ -2431,7 +2432,7 @@ fail_create_htc:
 }
 
 /* cleanup the HTC instance */
-void htc_cleanup(struct htc_target *target)
+void ath6kl_htc_cleanup(struct htc_target *target)
 {
 	struct htc_packet *packet, *tmp_packet;
 
diff --git a/drivers/net/wireless/ath/ath6kl/htc.h b/drivers/net/wireless/ath/ath6kl/htc.h
index d844d36..8ce0c2c 100644
--- a/drivers/net/wireless/ath/ath6kl/htc.h
+++ b/drivers/net/wireless/ath/ath6kl/htc.h
@@ -540,27 +540,30 @@ struct htc_target {
 	int chk_irq_status_cnt;
 };
 
-void *htc_create(struct ath6kl *ar);
-void htc_set_credit_dist(struct htc_target *target,
-			 struct htc_credit_state_info *cred_info,
-			  u16 svc_pri_order[], int len);
-int htc_wait_target(struct htc_target *target);
-int htc_start(struct htc_target *target);
-int htc_conn_service(struct htc_target *target,
-		     struct htc_service_connect_req *req,
-		     struct htc_service_connect_resp *resp);
-int htc_tx(struct htc_target *target, struct htc_packet *packet);
-void htc_stop(struct htc_target *target);
-void htc_cleanup(struct htc_target *target);
-void htc_flush_txep(struct htc_target *target,
-		    enum htc_endpoint_id endpoint, u16 tag);
-void htc_flush_rx_buf(struct htc_target *target);
-void htc_indicate_activity_change(struct htc_target *target,
-				  enum htc_endpoint_id endpoint, bool active);
-int htc_get_rxbuf_num(struct htc_target *target, enum htc_endpoint_id endpoint);
-int htc_add_rxbuf_multiple(struct htc_target *target, struct list_head *pktq);
-int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
-			      int *n_pkts);
+void *ath6kl_htc_create(struct ath6kl *ar);
+void ath6kl_htc_set_credit_dist(struct htc_target *target,
+				struct htc_credit_state_info *cred_info,
+				u16 svc_pri_order[], int len);
+int ath6kl_htc_wait_target(struct htc_target *target);
+int ath6kl_htc_start(struct htc_target *target);
+int ath6kl_htc_conn_service(struct htc_target *target,
+			    struct htc_service_connect_req *req,
+			    struct htc_service_connect_resp *resp);
+int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet);
+void ath6kl_htc_stop(struct htc_target *target);
+void ath6kl_htc_cleanup(struct htc_target *target);
+void ath6kl_htc_flush_txep(struct htc_target *target,
+			   enum htc_endpoint_id endpoint, u16 tag);
+void ath6kl_htc_flush_rx_buf(struct htc_target *target);
+void ath6kl_htc_indicate_activity_change(struct htc_target *target,
+					 enum htc_endpoint_id endpoint,
+					 bool active);
+int ath6kl_htc_get_rxbuf_num(struct htc_target *target,
+			     enum htc_endpoint_id endpoint);
+int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
+				  struct list_head *pktq);
+int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
+				     u32 msg_look_ahead[], int *n_pkts);
 
 static inline void set_htc_pkt_info(struct htc_packet *packet, void *context,
 				    u8 *buf, unsigned int len,
diff --git a/drivers/net/wireless/ath/ath6kl/htc_hif.c b/drivers/net/wireless/ath/ath6kl/htc_hif.c
index 5d397b5..86b1cc7 100644
--- a/drivers/net/wireless/ath/ath6kl/htc_hif.c
+++ b/drivers/net/wireless/ath/ath6kl/htc_hif.c
@@ -416,8 +416,8 @@ static int proc_pending_irqs(struct ath6kl_device *dev, bool *done)
 		 * improve performance by reducing context switching when
 		 * we rapidly pull packets.
 		 */
-		status = htc_rxmsg_pending_handler(dev->htc_cnxt,
-						   &lk_ahd, &fetched);
+		status = ath6kl_htc_rxmsg_pending_handler(dev->htc_cnxt,
+							  &lk_ahd, &fetched);
 		if (status)
 			goto out;
 
diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c
index 99ff2f9..9d10322 100644
--- a/drivers/net/wireless/ath/ath6kl/init.c
+++ b/drivers/net/wireless/ath/ath6kl/init.c
@@ -160,7 +160,7 @@ static int ath6kl_connectservice(struct ath6kl *ar,
 
 	memset(&response, 0, sizeof(response));
 
-	status = htc_conn_service(ar->htc_target, con_req, &response);
+	status = ath6kl_htc_conn_service(ar->htc_target, con_req, &response);
 	if (status) {
 		ath6kl_err("failed to connect to %s service status:%d\n",
 			   desc, status);
@@ -1069,7 +1069,7 @@ static int ath6kl_init(struct net_device *dev)
 	 * driver layer has to init BMI in order to set the host block
 	 * size.
 	 */
-	if (htc_wait_target(ar->htc_target)) {
+	if (ath6kl_htc_wait_target(ar->htc_target)) {
 		status = -EIO;
 		goto err_node_cleanup;
 	}
@@ -1098,7 +1098,7 @@ static int ath6kl_init(struct net_device *dev)
 	ath6kl_cookie_init(ar);
 
 	/* start HTC */
-	status = htc_start(ar->htc_target);
+	status = ath6kl_htc_start(ar->htc_target);
 
 	if (status) {
 		ath6kl_cookie_cleanup(ar);
@@ -1138,9 +1138,9 @@ static int ath6kl_init(struct net_device *dev)
 		goto ath6kl_init_done;
 
 err_htc_stop:
-	htc_stop(ar->htc_target);
+	ath6kl_htc_stop(ar->htc_target);
 err_rxbuf_cleanup:
-	htc_flush_rx_buf(ar->htc_target);
+	ath6kl_htc_flush_rx_buf(ar->htc_target);
 	ath6kl_cleanup_amsdu_rxbufs(ar);
 err_cleanup_scatter:
 	ath6kl_hif_cleanup_scatter(ar);
@@ -1179,7 +1179,7 @@ int ath6kl_core_init(struct ath6kl *ar)
 	if (ret)
 		goto err_bmi_cleanup;
 
-	ar->htc_target = htc_create(ar);
+	ar->htc_target = ath6kl_htc_create(ar);
 
 	if (!ar->htc_target) {
 		ret = -ENOMEM;
@@ -1217,7 +1217,7 @@ int ath6kl_core_init(struct ath6kl *ar)
 	return ret;
 
 err_htc_cleanup:
-	htc_cleanup(ar->htc_target);
+	ath6kl_htc_cleanup(ar->htc_target);
 err_bmi_cleanup:
 	ath6kl_bmi_cleanup(ar);
 err_wq:
@@ -1275,7 +1275,7 @@ void ath6kl_destroy(struct net_device *dev, unsigned int unregister)
 	destroy_workqueue(ar->ath6kl_wq);
 
 	if (ar->htc_target)
-		htc_cleanup(ar->htc_target);
+		ath6kl_htc_cleanup(ar->htc_target);
 
 	aggr_module_destroy(ar->aggr_cntxt);
 
diff --git a/drivers/net/wireless/ath/ath6kl/main.c b/drivers/net/wireless/ath/ath6kl/main.c
index 284e3e9..c336eae 100644
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
@@ -375,7 +375,7 @@ void ath6kl_stop_endpoint(struct net_device *dev, bool keep_profile,
 
 	if (ar->htc_target) {
 		ath6kl_dbg(ATH6KL_DBG_TRC, "%s: shut down htc\n", __func__);
-		htc_stop(ar->htc_target);
+		ath6kl_htc_stop(ar->htc_target);
 	}
 
 	/*
@@ -568,7 +568,7 @@ int ath6k_setup_credit_dist(void *htc_handle,
 	servicepriority[4] = WMI_DATA_BK_SVC; /* lowest */
 
 	/* set priority list */
-	htc_set_credit_dist(htc_handle, cred_info, servicepriority, 5);
+	ath6kl_htc_set_credit_dist(htc_handle, cred_info, servicepriority, 5);
 
 	return 0;
 }
diff --git a/drivers/net/wireless/ath/ath6kl/txrx.c b/drivers/net/wireless/ath/ath6kl/txrx.c
index 0cab1c1..167bdb9 100644
--- a/drivers/net/wireless/ath/ath6kl/txrx.c
+++ b/drivers/net/wireless/ath/ath6kl/txrx.c
@@ -221,7 +221,7 @@ int ath6kl_control_tx(void *devt, struct sk_buff *skb,
 	 * This interface is asynchronous, if there is an error, cleanup
 	 * will happen in the TX completion callback.
 	 */
-	htc_tx(ar->htc_target, &cookie->htc_pkt);
+	ath6kl_htc_tx(ar->htc_target, &cookie->htc_pkt);
 
 	return 0;
 
@@ -331,7 +331,7 @@ int ath6kl_data_tx(struct sk_buff *skb, struct net_device *dev)
 	 * HTC interface is asynchronous, if this fails, cleanup will
 	 * happen in the ath6kl_tx_complete callback.
 	 */
-	htc_tx(ar->htc_target, &cookie->htc_pkt);
+	ath6kl_htc_tx(ar->htc_target, &cookie->htc_pkt);
 
 	return 0;
 
@@ -403,7 +403,7 @@ void ath6kl_indicate_tx_activity(void *devt, u8 traffic_class, bool active)
 
 notify_htc:
 	/* notify HTC, this may cause credit distribution changes */
-	htc_indicate_activity_change(ar->htc_target, eid, active);
+	ath6kl_htc_indicate_activity_change(ar->htc_target, eid, active);
 }
 
 enum htc_send_full_action ath6kl_tx_queue_full(struct htc_target *target,
@@ -611,8 +611,8 @@ void ath6kl_tx_data_cleanup(struct ath6kl *ar)
 
 	/* flush all the data (non-control) streams */
 	for (i = 0; i < WMM_NUM_AC; i++)
-		htc_flush_txep(ar->htc_target, ar->ac2ep_map[i],
-				 ATH6KL_DATA_PKT_TAG);
+		ath6kl_htc_flush_txep(ar->htc_target, ar->ac2ep_map[i],
+				      ATH6KL_DATA_PKT_TAG);
 }
 
 /* Rx functions */
@@ -672,7 +672,7 @@ void ath6kl_rx_refill(struct htc_target *target, enum htc_endpoint_id endpoint)
 	struct list_head queue;
 
 	n_buf_refill = ATH6KL_MAX_RX_BUFFERS -
-			  htc_get_rxbuf_num(ar->htc_target, endpoint);
+			  ath6kl_htc_get_rxbuf_num(ar->htc_target, endpoint);
 
 	if (n_buf_refill <= 0)
 		return;
@@ -695,7 +695,7 @@ void ath6kl_rx_refill(struct htc_target *target, enum htc_endpoint_id endpoint)
 	}
 
 	if (!list_empty(&queue))
-		htc_add_rxbuf_multiple(ar->htc_target, &queue);
+		ath6kl_htc_add_rxbuf_multiple(ar->htc_target, &queue);
 }
 
 void ath6kl_refill_amsdu_rxbufs(struct ath6kl *ar, int count)
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 38+ messages in thread

* [PATCH] ath6kl: fix function name conflicts with ath9k
@ 2011-08-10  7:11   ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  7:11 UTC (permalink / raw)
  To: linux-wireless-u79uwXL29TY76Z2rM5mHXA
  Cc: sfr-3FnU+UHB4dNDw9hX6IcOSA, linux-next-u79uwXL29TY76Z2rM5mHXA

Stepher reported that compilation fails if both ath6kl and ath9k are
compiled in:

drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
(.opd+0x600): multiple definition of `htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
(.text+0x7b40): multiple definition of `.htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined he=
re
drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
(.text+0x7d18): multiple definition of `.htc_start'
drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined he=
re
drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
(.opd+0x5e8): multiple definition of `htc_stop'
drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here

To fix this add ath6kl prefix to all public functions in htc.c.

Reported-by: Stephen Rothwell <sfr-3FnU+UHB4dNDw9hX6IcOSA@public.gmane.org>
Signed-off-by: Kalle Valo <kvalo-A+ZNKFmMK5xy9aJCnZT0Uw@public.gmane.org>
---
 drivers/net/wireless/ath/ath6kl/htc.c     |   61 +++++++++++++++--------------
 drivers/net/wireless/ath/ath6kl/htc.h     |   45 +++++++++++----------
 drivers/net/wireless/ath/ath6kl/htc_hif.c |    4 +-
 drivers/net/wireless/ath/ath6kl/init.c    |   16 ++++----
 drivers/net/wireless/ath/ath6kl/main.c    |    4 +-
 drivers/net/wireless/ath/ath6kl/txrx.c    |   14 +++---
 6 files changed, 74 insertions(+), 70 deletions(-)

diff --git a/drivers/net/wireless/ath/ath6kl/htc.c b/drivers/net/wireless/ath/ath6kl/htc.c
index 5580e22..a8dc5c3 100644
--- a/drivers/net/wireless/ath/ath6kl/htc.c
+++ b/drivers/net/wireless/ath/ath6kl/htc.c
@@ -689,9 +689,9 @@ static int htc_setup_tx_complete(struct htc_target *target)
 	return status;
 }
 
-void htc_set_credit_dist(struct htc_target *target,
-			 struct htc_credit_state_info *cred_dist_cntxt,
-			 u16 srvc_pri_order[], int list_len)
+void ath6kl_htc_set_credit_dist(struct htc_target *target,
+				struct htc_credit_state_info *cred_dist_cntxt,
+				u16 srvc_pri_order[], int list_len)
 {
 	struct htc_endpoint *endpoint;
 	int i, ep;
@@ -717,7 +717,7 @@ void htc_set_credit_dist(struct htc_target *target,
 	}
 }
 
-int htc_tx(struct htc_target *target, struct htc_packet *packet)
+int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet)
 {
 	struct htc_endpoint *endpoint;
 	struct list_head queue;
@@ -745,8 +745,8 @@ int htc_tx(struct htc_target *target, struct htc_packet *packet)
 }
 
 /* flush endpoint TX queue */
-void htc_flush_txep(struct htc_target *target,
-		    enum htc_endpoint_id eid, u16 tag)
+void ath6kl_htc_flush_txep(struct htc_target *target,
+			   enum htc_endpoint_id eid, u16 tag)
 {
 	struct htc_packet *packet, *tmp_pkt;
 	struct list_head discard_q, container;
@@ -785,7 +785,7 @@ void htc_flush_txep(struct htc_target *target,
 
 }
 
-static void htc_flush_txep_all(struct htc_target *target)
+static void ath6kl_htc_flush_txep_all(struct htc_target *target)
 {
 	struct htc_endpoint *endpoint;
 	int i;
@@ -797,12 +797,12 @@ static void htc_flush_txep_all(struct htc_target *target)
 		if (endpoint->svc_id == 0)
 			/* not in use.. */
 			continue;
-		htc_flush_txep(target, i, HTC_TX_PACKET_TAG_ALL);
+		ath6kl_htc_flush_txep(target, i, HTC_TX_PACKET_TAG_ALL);
 	}
 }
 
-void htc_indicate_activity_change(struct htc_target *target,
-				  enum htc_endpoint_id eid, bool active)
+void ath6kl_htc_indicate_activity_change(struct htc_target *target,
+					 enum htc_endpoint_id eid, bool active)
 {
 	struct htc_endpoint *endpoint = &target->endpoint[eid];
 	bool dist = false;
@@ -869,7 +869,7 @@ static int htc_add_rxbuf(struct htc_target *target, struct htc_packet *packet)
 
 	INIT_LIST_HEAD(&queue);
 	list_add_tail(&packet->list, &queue);
-	return htc_add_rxbuf_multiple(target, &queue);
+	return ath6kl_htc_add_rxbuf_multiple(target, &queue);
 }
 
 static void htc_reclaim_rxbuf(struct htc_target *target,
@@ -1721,8 +1721,8 @@ static int htc_fetch_rxpkts(struct htc_target *target,
 	return status;
 }
 
-int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
-			      int *num_pkts)
+int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
+				     u32 msg_look_ahead[], int *num_pkts)
 {
 	struct htc_packet *packets, *tmp_pkt;
 	struct htc_endpoint *endpoint;
@@ -1904,8 +1904,8 @@ fail_ctrl_rx:
 	return NULL;
 }
 
-int htc_add_rxbuf_multiple(struct htc_target *target,
-			   struct list_head *pkt_queue)
+int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
+				  struct list_head *pkt_queue)
 {
 	struct htc_endpoint *endpoint;
 	struct htc_packet *first_pkt;
@@ -1966,7 +1966,7 @@ int htc_add_rxbuf_multiple(struct htc_target *target,
 	return status;
 }
 
-void htc_flush_rx_buf(struct htc_target *target)
+void ath6kl_htc_flush_rx_buf(struct htc_target *target)
 {
 	struct htc_endpoint *endpoint;
 	struct htc_packet *packet, *tmp_pkt;
@@ -1994,9 +1994,9 @@ void htc_flush_rx_buf(struct htc_target *target)
 	}
 }
 
-int htc_conn_service(struct htc_target *target,
-		     struct htc_service_connect_req *conn_req,
-		     struct htc_service_connect_resp *conn_resp)
+int ath6kl_htc_conn_service(struct htc_target *target,
+			    struct htc_service_connect_req *conn_req,
+			    struct htc_service_connect_resp *conn_resp)
 {
 	struct htc_packet *rx_pkt = NULL;
 	struct htc_packet *tx_pkt = NULL;
@@ -2154,7 +2154,8 @@ static void reset_ep_state(struct htc_target *target)
 	INIT_LIST_HEAD(&target->cred_dist_list);
 }
 
-int htc_get_rxbuf_num(struct htc_target *target, enum htc_endpoint_id endpoint)
+int ath6kl_htc_get_rxbuf_num(struct htc_target *target,
+			     enum htc_endpoint_id endpoint)
 {
 	int num;
 
@@ -2212,7 +2213,7 @@ static void htc_setup_msg_bndl(struct htc_target *target)
 	}
 }
 
-int htc_wait_target(struct htc_target *target)
+int ath6kl_htc_wait_target(struct htc_target *target)
 {
 	struct htc_packet *packet = NULL;
 	struct htc_ready_ext_msg *rdy_msg;
@@ -2275,7 +2276,7 @@ int htc_wait_target(struct htc_target *target)
 	connect.svc_id = HTC_CTRL_RSVD_SVC;
 
 	/* connect fake service */
-	status = htc_conn_service((void *)target, &connect, &resp);
+	status = ath6kl_htc_conn_service((void *)target, &connect, &resp);
 
 	if (status)
 		ath6kl_hif_cleanup_scatter(target->dev->ar);
@@ -2293,7 +2294,7 @@ fail_wait_target:
  * Start HTC, enable interrupts and let the target know
  * host has finished setup.
  */
-int htc_start(struct htc_target *target)
+int ath6kl_htc_start(struct htc_target *target)
 {
 	struct htc_packet *packet;
 	int status;
@@ -2327,13 +2328,13 @@ int htc_start(struct htc_target *target)
 	status = ath6kldev_unmask_intrs(target->dev);
 
 	if (status)
-		htc_stop(target);
+		ath6kl_htc_stop(target);
 
 	return status;
 }
 
 /* htc_stop: stop interrupt reception, and flush all queued buffers */
-void htc_stop(struct htc_target *target)
+void ath6kl_htc_stop(struct htc_target *target)
 {
 	spin_lock_bh(&target->htc_lock);
 	target->htc_flags |= HTC_OP_STATE_STOPPING;
@@ -2346,14 +2347,14 @@ void htc_stop(struct htc_target *target)
 	 */
 	ath6kldev_mask_intrs(target->dev);
 
-	htc_flush_txep_all(target);
+	ath6kl_htc_flush_txep_all(target);
 
-	htc_flush_rx_buf(target);
+	ath6kl_htc_flush_rx_buf(target);
 
 	reset_ep_state(target);
 }
 
-void *htc_create(struct ath6kl *ar)
+void *ath6kl_htc_create(struct ath6kl *ar)
 {
 	struct htc_target *target = NULL;
 	struct htc_packet *packet;
@@ -2422,7 +2423,7 @@ void *htc_create(struct ath6kl *ar)
 fail_create_htc:
 	if (i != NUM_CONTROL_BUFFERS || status) {
 		if (target) {
-			htc_cleanup(target);
+			ath6kl_htc_cleanup(target);
 			target = NULL;
 		}
 	}
@@ -2431,7 +2432,7 @@ fail_create_htc:
 }
 
 /* cleanup the HTC instance */
-void htc_cleanup(struct htc_target *target)
+void ath6kl_htc_cleanup(struct htc_target *target)
 {
 	struct htc_packet *packet, *tmp_packet;
 
diff --git a/drivers/net/wireless/ath/ath6kl/htc.h b/drivers/net/wireless/ath/ath6kl/htc.h
index d844d36..8ce0c2c 100644
--- a/drivers/net/wireless/ath/ath6kl/htc.h
+++ b/drivers/net/wireless/ath/ath6kl/htc.h
@@ -540,27 +540,30 @@ struct htc_target {
 	int chk_irq_status_cnt;
 };
 
-void *htc_create(struct ath6kl *ar);
-void htc_set_credit_dist(struct htc_target *target,
-			 struct htc_credit_state_info *cred_info,
-			  u16 svc_pri_order[], int len);
-int htc_wait_target(struct htc_target *target);
-int htc_start(struct htc_target *target);
-int htc_conn_service(struct htc_target *target,
-		     struct htc_service_connect_req *req,
-		     struct htc_service_connect_resp *resp);
-int htc_tx(struct htc_target *target, struct htc_packet *packet);
-void htc_stop(struct htc_target *target);
-void htc_cleanup(struct htc_target *target);
-void htc_flush_txep(struct htc_target *target,
-		    enum htc_endpoint_id endpoint, u16 tag);
-void htc_flush_rx_buf(struct htc_target *target);
-void htc_indicate_activity_change(struct htc_target *target,
-				  enum htc_endpoint_id endpoint, bool active);
-int htc_get_rxbuf_num(struct htc_target *target, enum htc_endpoint_id endpoint);
-int htc_add_rxbuf_multiple(struct htc_target *target, struct list_head *pktq);
-int htc_rxmsg_pending_handler(struct htc_target *target, u32 msg_look_ahead[],
-			      int *n_pkts);
+void *ath6kl_htc_create(struct ath6kl *ar);
+void ath6kl_htc_set_credit_dist(struct htc_target *target,
+				struct htc_credit_state_info *cred_info,
+				u16 svc_pri_order[], int len);
+int ath6kl_htc_wait_target(struct htc_target *target);
+int ath6kl_htc_start(struct htc_target *target);
+int ath6kl_htc_conn_service(struct htc_target *target,
+			    struct htc_service_connect_req *req,
+			    struct htc_service_connect_resp *resp);
+int ath6kl_htc_tx(struct htc_target *target, struct htc_packet *packet);
+void ath6kl_htc_stop(struct htc_target *target);
+void ath6kl_htc_cleanup(struct htc_target *target);
+void ath6kl_htc_flush_txep(struct htc_target *target,
+			   enum htc_endpoint_id endpoint, u16 tag);
+void ath6kl_htc_flush_rx_buf(struct htc_target *target);
+void ath6kl_htc_indicate_activity_change(struct htc_target *target,
+					 enum htc_endpoint_id endpoint,
+					 bool active);
+int ath6kl_htc_get_rxbuf_num(struct htc_target *target,
+			     enum htc_endpoint_id endpoint);
+int ath6kl_htc_add_rxbuf_multiple(struct htc_target *target,
+				  struct list_head *pktq);
+int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
+				     u32 msg_look_ahead[], int *n_pkts);
 
 static inline void set_htc_pkt_info(struct htc_packet *packet, void *context,
 				    u8 *buf, unsigned int len,
diff --git a/drivers/net/wireless/ath/ath6kl/htc_hif.c b/drivers/net/wireless/ath/ath6kl/htc_hif.c
index 5d397b5..86b1cc7 100644
--- a/drivers/net/wireless/ath/ath6kl/htc_hif.c
+++ b/drivers/net/wireless/ath/ath6kl/htc_hif.c
@@ -416,8 +416,8 @@ static int proc_pending_irqs(struct ath6kl_device *dev, bool *done)
 		 * improve performance by reducing context switching when
 		 * we rapidly pull packets.
 		 */
-		status = htc_rxmsg_pending_handler(dev->htc_cnxt,
-						   &lk_ahd, &fetched);
+		status = ath6kl_htc_rxmsg_pending_handler(dev->htc_cnxt,
+							  &lk_ahd, &fetched);
 		if (status)
 			goto out;
 
diff --git a/drivers/net/wireless/ath/ath6kl/init.c b/drivers/net/wireless/ath/ath6kl/init.c
index 99ff2f9..9d10322 100644
--- a/drivers/net/wireless/ath/ath6kl/init.c
+++ b/drivers/net/wireless/ath/ath6kl/init.c
@@ -160,7 +160,7 @@ static int ath6kl_connectservice(struct ath6kl *ar,
 
 	memset(&response, 0, sizeof(response));
 
-	status = htc_conn_service(ar->htc_target, con_req, &response);
+	status = ath6kl_htc_conn_service(ar->htc_target, con_req, &response);
 	if (status) {
 		ath6kl_err("failed to connect to %s service status:%d\n",
 			   desc, status);
@@ -1069,7 +1069,7 @@ static int ath6kl_init(struct net_device *dev)
 	 * driver layer has to init BMI in order to set the host block
 	 * size.
 	 */
-	if (htc_wait_target(ar->htc_target)) {
+	if (ath6kl_htc_wait_target(ar->htc_target)) {
 		status = -EIO;
 		goto err_node_cleanup;
 	}
@@ -1098,7 +1098,7 @@ static int ath6kl_init(struct net_device *dev)
 	ath6kl_cookie_init(ar);
 
 	/* start HTC */
-	status = htc_start(ar->htc_target);
+	status = ath6kl_htc_start(ar->htc_target);
 
 	if (status) {
 		ath6kl_cookie_cleanup(ar);
@@ -1138,9 +1138,9 @@ static int ath6kl_init(struct net_device *dev)
 		goto ath6kl_init_done;
 
 err_htc_stop:
-	htc_stop(ar->htc_target);
+	ath6kl_htc_stop(ar->htc_target);
 err_rxbuf_cleanup:
-	htc_flush_rx_buf(ar->htc_target);
+	ath6kl_htc_flush_rx_buf(ar->htc_target);
 	ath6kl_cleanup_amsdu_rxbufs(ar);
 err_cleanup_scatter:
 	ath6kl_hif_cleanup_scatter(ar);
@@ -1179,7 +1179,7 @@ int ath6kl_core_init(struct ath6kl *ar)
 	if (ret)
 		goto err_bmi_cleanup;
 
-	ar->htc_target = htc_create(ar);
+	ar->htc_target = ath6kl_htc_create(ar);
 
 	if (!ar->htc_target) {
 		ret = -ENOMEM;
@@ -1217,7 +1217,7 @@ int ath6kl_core_init(struct ath6kl *ar)
 	return ret;
 
 err_htc_cleanup:
-	htc_cleanup(ar->htc_target);
+	ath6kl_htc_cleanup(ar->htc_target);
 err_bmi_cleanup:
 	ath6kl_bmi_cleanup(ar);
 err_wq:
@@ -1275,7 +1275,7 @@ void ath6kl_destroy(struct net_device *dev, unsigned int unregister)
 	destroy_workqueue(ar->ath6kl_wq);
 
 	if (ar->htc_target)
-		htc_cleanup(ar->htc_target);
+		ath6kl_htc_cleanup(ar->htc_target);
 
 	aggr_module_destroy(ar->aggr_cntxt);
 
diff --git a/drivers/net/wireless/ath/ath6kl/main.c b/drivers/net/wireless/ath/ath6kl/main.c
index 284e3e9..c336eae 100644
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
@@ -375,7 +375,7 @@ void ath6kl_stop_endpoint(struct net_device *dev, bool keep_profile,
 
 	if (ar->htc_target) {
 		ath6kl_dbg(ATH6KL_DBG_TRC, "%s: shut down htc\n", __func__);
-		htc_stop(ar->htc_target);
+		ath6kl_htc_stop(ar->htc_target);
 	}
 
 	/*
@@ -568,7 +568,7 @@ int ath6k_setup_credit_dist(void *htc_handle,
 	servicepriority[4] = WMI_DATA_BK_SVC; /* lowest */
 
 	/* set priority list */
-	htc_set_credit_dist(htc_handle, cred_info, servicepriority, 5);
+	ath6kl_htc_set_credit_dist(htc_handle, cred_info, servicepriority, 5);
 
 	return 0;
 }
diff --git a/drivers/net/wireless/ath/ath6kl/txrx.c b/drivers/net/wireless/ath/ath6kl/txrx.c
index 0cab1c1..167bdb9 100644
--- a/drivers/net/wireless/ath/ath6kl/txrx.c
+++ b/drivers/net/wireless/ath/ath6kl/txrx.c
@@ -221,7 +221,7 @@ int ath6kl_control_tx(void *devt, struct sk_buff *skb,
 	 * This interface is asynchronous, if there is an error, cleanup
 	 * will happen in the TX completion callback.
 	 */
-	htc_tx(ar->htc_target, &cookie->htc_pkt);
+	ath6kl_htc_tx(ar->htc_target, &cookie->htc_pkt);
 
 	return 0;
 
@@ -331,7 +331,7 @@ int ath6kl_data_tx(struct sk_buff *skb, struct net_device *dev)
 	 * HTC interface is asynchronous, if this fails, cleanup will
 	 * happen in the ath6kl_tx_complete callback.
 	 */
-	htc_tx(ar->htc_target, &cookie->htc_pkt);
+	ath6kl_htc_tx(ar->htc_target, &cookie->htc_pkt);
 
 	return 0;
 
@@ -403,7 +403,7 @@ void ath6kl_indicate_tx_activity(void *devt, u8 traffic_class, bool active)
 
 notify_htc:
 	/* notify HTC, this may cause credit distribution changes */
-	htc_indicate_activity_change(ar->htc_target, eid, active);
+	ath6kl_htc_indicate_activity_change(ar->htc_target, eid, active);
 }
 
 enum htc_send_full_action ath6kl_tx_queue_full(struct htc_target *target,
@@ -611,8 +611,8 @@ void ath6kl_tx_data_cleanup(struct ath6kl *ar)
 
 	/* flush all the data (non-control) streams */
 	for (i = 0; i < WMM_NUM_AC; i++)
-		htc_flush_txep(ar->htc_target, ar->ac2ep_map[i],
-				 ATH6KL_DATA_PKT_TAG);
+		ath6kl_htc_flush_txep(ar->htc_target, ar->ac2ep_map[i],
+				      ATH6KL_DATA_PKT_TAG);
 }
 
 /* Rx functions */
@@ -672,7 +672,7 @@ void ath6kl_rx_refill(struct htc_target *target, enum htc_endpoint_id endpoint)
 	struct list_head queue;
 
 	n_buf_refill = ATH6KL_MAX_RX_BUFFERS -
-			  htc_get_rxbuf_num(ar->htc_target, endpoint);
+			  ath6kl_htc_get_rxbuf_num(ar->htc_target, endpoint);
 
 	if (n_buf_refill <= 0)
 		return;
@@ -695,7 +695,7 @@ void ath6kl_rx_refill(struct htc_target *target, enum htc_endpoint_id endpoint)
 	}
 
 	if (!list_empty(&queue))
-		htc_add_rxbuf_multiple(ar->htc_target, &queue);
+		ath6kl_htc_add_rxbuf_multiple(ar->htc_target, &queue);
 }
 
 void ath6kl_refill_amsdu_rxbufs(struct ath6kl *ar, int count)
-- 
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 38+ messages in thread

* Re: [PATCH] ath6kl: fix function name conflicts with ath9k
  2011-08-10  7:11   ` Kalle Valo
@ 2011-08-10  7:24     ` Kalle Valo
  -1 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  7:24 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, sfr, linux-next

On 08/10/2011 10:11 AM, Kalle Valo wrote:
> Stepher reported that compilation fails if both ath6kl and ath9k are
> compiled in:
> 
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
> (.opd+0x600): multiple definition of `htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
> (.text+0x7b40): multiple definition of `.htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined he=
> re
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
> (.text+0x7d18): multiple definition of `.htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined he=
> re
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
> (.opd+0x5e8): multiple definition of `htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here
> 
> To fix this add ath6kl prefix to all public functions in htc.c.

I have applied this to the ath6kl tree now:

http://git.kernel.org/?p=linux/kernel/git/kvalo/ath6kl.git;a=summary

I'll send a pull request to John later today.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: [PATCH] ath6kl: fix function name conflicts with ath9k
@ 2011-08-10  7:24     ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-08-10  7:24 UTC (permalink / raw)
  To: Kalle Valo; +Cc: linux-wireless, sfr, linux-next

On 08/10/2011 10:11 AM, Kalle Valo wrote:
> Stepher reported that compilation fails if both ath6kl and ath9k are
> compiled in:
> 
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_start':
> (.opd+0x600): multiple definition of `htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e40): first defined here
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_stop':
> (.text+0x7b40): multiple definition of `.htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67b34): first defined he=
> re
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `.htc_start':
> (.text+0x7d18): multiple definition of `.htc_start'
> drivers/net/wireless/ath/ath9k/built-in.o:(.text+0x67ba0): first defined he=
> re
> drivers/net/wireless/ath/ath6kl/built-in.o: In function `htc_stop':
> (.opd+0x5e8): multiple definition of `htc_stop'
> drivers/net/wireless/ath/ath9k/built-in.o:(.opd+0x3e28): first defined here
> 
> To fix this add ath6kl prefix to all public functions in htc.c.

I have applied this to the ath6kl tree now:

http://git.kernel.org/?p=linux/kernel/git/kvalo/ath6kl.git;a=summary

I'll send a pull request to John later today.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-12-23 20:50   ` Michal Marek
@ 2011-12-24  1:29       ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-24  1:29 UTC (permalink / raw)
  To: Michal Marek
  Cc: Stephen Rothwell, John W. Linville, linux-next, linux-kernel,
	Rusty Russell

On 12/23/2011 10:50 PM, Michal Marek wrote:
>> But I wonder why you need to link all the object files twice? Usually,
>> > drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko that provide
>> > the pci/usb/whatever driver.
>
> Another option is to build both drivers in a single module. Or, as a
> band-aid, make the two drivers module-only, by adding 'depends on m' to
> their Kconfig entries.

I'll send the band-aid to John first and remove it once I have created
the ath6kl core module.

Thanks for the help.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-12-24  1:29       ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-24  1:29 UTC (permalink / raw)
  To: Michal Marek
  Cc: Stephen Rothwell, John W. Linville, linux-next, linux-kernel,
	Rusty Russell

On 12/23/2011 10:50 PM, Michal Marek wrote:
>> But I wonder why you need to link all the object files twice? Usually,
>> > drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko that provide
>> > the pci/usb/whatever driver.
>
> Another option is to build both drivers in a single module. Or, as a
> band-aid, make the two drivers module-only, by adding 'depends on m' to
> their Kconfig entries.

I'll send the band-aid to John first and remove it once I have created
the ath6kl core module.

Thanks for the help.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-12-22 16:57 ` Michal Marek
@ 2011-12-24  1:26     ` Kalle Valo
  2011-12-24  1:26     ` Kalle Valo
  1 sibling, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-24  1:26 UTC (permalink / raw)
  To: Michal Marek
  Cc: Stephen Rothwell, John W. Linville, linux-next, linux-kernel,
	Rusty Russell

On 12/22/2011 06:57 PM, Michal Marek wrote:
> Dne 22.12.2011 06:58, Stephen Rothwell napsal(a):
>> Hi ,
>>
>> After merging the final tree, today's linux-next build (powerpc
>> allyesconfig) failed like this:
>>
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> [...]
>>
>> I can't figure out what goes wrong here.  On the compile command line,
>> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.
> 
> scripts/Makefile.lib says
> # Note: It's possible that one object gets potentially linked into more
> #       than one module. In that case KBUILD_MODNAME will be set to foo_bar,
> #       where foo and bar are the name of the modules.
> 
> but reality does not match this comment:
> modname_flags  = $(if $(filter 1,$(words $(modname))),\
>                  -D"KBUILD_MODNAME=KBUILD_STR($(call name-fix,$(modname)))")
> 
> But I wonder why you need to link all the object files twice?

No particular reason. I just didn't know that it's not allowed.

> Usually, drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko
that provide
> the pci/usb/whatever driver.

I have been planning to do the same for ath6kl. I just need to do a bit
of interface cleanup before I can cleanly separate the core module. I'll
start looking at that next.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-12-24  1:26     ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-24  1:26 UTC (permalink / raw)
  To: Michal Marek
  Cc: Stephen Rothwell, John W. Linville, linux-next, linux-kernel,
	Rusty Russell

On 12/22/2011 06:57 PM, Michal Marek wrote:
> Dne 22.12.2011 06:58, Stephen Rothwell napsal(a):
>> Hi ,
>>
>> After merging the final tree, today's linux-next build (powerpc
>> allyesconfig) failed like this:
>>
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> [...]
>>
>> I can't figure out what goes wrong here.  On the compile command line,
>> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.
> 
> scripts/Makefile.lib says
> # Note: It's possible that one object gets potentially linked into more
> #       than one module. In that case KBUILD_MODNAME will be set to foo_bar,
> #       where foo and bar are the name of the modules.
> 
> but reality does not match this comment:
> modname_flags  = $(if $(filter 1,$(words $(modname))),\
>                  -D"KBUILD_MODNAME=KBUILD_STR($(call name-fix,$(modname)))")
> 
> But I wonder why you need to link all the object files twice?

No particular reason. I just didn't know that it's not allowed.

> Usually, drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko
that provide
> the pci/usb/whatever driver.

I have been planning to do the same for ath6kl. I just need to do a bit
of interface cleanup before I can cleanly separate the core module. I'll
start looking at that next.

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-12-22 16:57 ` Michal Marek
@ 2011-12-23 20:50   ` Michal Marek
  2011-12-24  1:29       ` Kalle Valo
  2011-12-24  1:26     ` Kalle Valo
  1 sibling, 1 reply; 38+ messages in thread
From: Michal Marek @ 2011-12-23 20:50 UTC (permalink / raw)
  To: Stephen Rothwell, Kalle Valo
  Cc: John W. Linville, linux-next, linux-kernel, Rusty Russell

Dne 22.12.2011 17:57, Michal Marek napsal(a):
> Dne 22.12.2011 06:58, Stephen Rothwell napsal(a):
>> Hi ,
>>
>> After merging the final tree, today's linux-next build (powerpc
>> allyesconfig) failed like this:
>>
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
>> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> [...]
>>
>> I can't figure out what goes wrong here.  On the compile command line,
>> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.
> 
> scripts/Makefile.lib says
> # Note: It's possible that one object gets potentially linked into more
> #       than one module. In that case KBUILD_MODNAME will be set to foo_bar,
> #       where foo and bar are the name of the modules.
> 
> but reality does not match this comment:
> modname_flags  = $(if $(filter 1,$(words $(modname))),\
>                  -D"KBUILD_MODNAME=KBUILD_STR($(call name-fix,$(modname)))")

Thinking about this more, the comment is wrong. The reason is that with
the the modules builtin, KBUILD_MODNAME is needed to generate names of
commandline options to set module parameters: <module name>.<param
name>. And ath6kl_sdio_ath6kl_usb.<param> would first look silly, second
the name would change if we disabled one of the drivers.


> But I wonder why you need to link all the object files twice? Usually,
> drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko that provide
> the pci/usb/whatever driver.

Another option is to build both drivers in a single module. Or, as a
band-aid, make the two drivers module-only, by adding 'depends on m' to
their Kconfig entries.

Michal

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-12-22  5:58 linux-next: build failure after merge of the final tree (wireless tree related) Stephen Rothwell
  2011-12-22  8:38   ` Kalle Valo
@ 2011-12-22 16:57 ` Michal Marek
  2011-12-23 20:50   ` Michal Marek
  2011-12-24  1:26     ` Kalle Valo
  1 sibling, 2 replies; 38+ messages in thread
From: Michal Marek @ 2011-12-22 16:57 UTC (permalink / raw)
  To: Stephen Rothwell, Kalle Valo
  Cc: John W. Linville, linux-next, linux-kernel, Rusty Russell

Dne 22.12.2011 06:58, Stephen Rothwell napsal(a):
> Hi ,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
[...]
> 
> I can't figure out what goes wrong here.  On the compile command line,
> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.

scripts/Makefile.lib says
# Note: It's possible that one object gets potentially linked into more
#       than one module. In that case KBUILD_MODNAME will be set to foo_bar,
#       where foo and bar are the name of the modules.

but reality does not match this comment:
modname_flags  = $(if $(filter 1,$(words $(modname))),\
                 -D"KBUILD_MODNAME=KBUILD_STR($(call name-fix,$(modname)))")

But I wonder why you need to link all the object files twice? Usually,
drivers have a foo_common.ko and foo_{usb,pci,whatever}.ko that provide
the pci/usb/whatever driver.

Michal

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-12-22  5:58 linux-next: build failure after merge of the final tree (wireless tree related) Stephen Rothwell
@ 2011-12-22  8:38   ` Kalle Valo
  2011-12-22 16:57 ` Michal Marek
  1 sibling, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-22  8:38 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, Michal Marek, linux-next, linux-kernel,
	Rusty Russell, linux-wireless, ath6kl-devel

Hi Stephen,

I'll add linux-wireless and ath6kl-devel as I'm sick today and hopefully
someone else from our team will take a look at it.

On 12/22/2011 07:58 AM, Stephen Rothwell wrote:

> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: invalid initializer
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: invalid initializer
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ',' or ';' before string constant
> 
> I can't figure out what goes wrong here.  On the compile command line,
> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.
> 
> However, reverting commit fde57764ef87 ("ath6kl: enable USB support")
> made the problem go away.  That commit caused the above two files to be
> built into two separate modules.

Is this ppc specific problem? Is there anything we should do on ath6kl
to fix this?

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-12-22  8:38   ` Kalle Valo
  0 siblings, 0 replies; 38+ messages in thread
From: Kalle Valo @ 2011-12-22  8:38 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, Michal Marek, linux-next, linux-kernel,
	Rusty Russell, linux-wireless, ath6kl-devel

Hi Stephen,

I'll add linux-wireless and ath6kl-devel as I'm sick today and hopefully
someone else from our team will take a look at it.

On 12/22/2011 07:58 AM, Stephen Rothwell wrote:

> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
> drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: invalid initializer
> drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ',' or ';' before string constant
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ')' before 'KBUILD_MODNAME'
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: invalid initializer
> drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ',' or ';' before string constant
> 
> I can't figure out what goes wrong here.  On the compile command line,
> KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.
> 
> However, reverting commit fde57764ef87 ("ath6kl: enable USB support")
> made the problem go away.  That commit caused the above two files to be
> built into two separate modules.

Is this ppc specific problem? Is there anything we should do on ath6kl
to fix this?

Kalle

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-12-22  5:58 Stephen Rothwell
  2011-12-22  8:38   ` Kalle Valo
  2011-12-22 16:57 ` Michal Marek
  0 siblings, 2 replies; 38+ messages in thread
From: Stephen Rothwell @ 2011-12-22  5:58 UTC (permalink / raw)
  To: John W. Linville, Michal Marek
  Cc: linux-next, linux-kernel, Kalle Valo, Rusty Russell

[-- Attachment #1: Type: text/plain, Size: 1640 bytes --]

Hi ,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ')' before 'KBUILD_MODNAME'
drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
drivers/net/wireless/ath/ath6kl/cfg80211.c:27:1: error: expected ',' or ';' before string constant
drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ')' before 'KBUILD_MODNAME'
drivers/net/wireless/ath/ath6kl/init.c:32:1: error: 'KBUILD_MODNAME' undeclared here (not in a function)
drivers/net/wireless/ath/ath6kl/init.c:32:1: error: expected ',' or ';' before string constant
drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ')' before 'KBUILD_MODNAME'
drivers/net/wireless/ath/ath6kl/init.c:33:1: error: invalid initializer
drivers/net/wireless/ath/ath6kl/init.c:33:1: error: expected ',' or ';' before string constant
drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ')' before 'KBUILD_MODNAME'
drivers/net/wireless/ath/ath6kl/init.c:34:1: error: invalid initializer
drivers/net/wireless/ath/ath6kl/init.c:34:1: error: expected ',' or ';' before string constant

I can't figure out what goes wrong here.  On the compile command line,
KBUILD_MODNAME is not defined, but KBUILD_BASE_NAME is.

However, reverting commit fde57764ef87 ("ath6kl: enable USB support")
made the problem go away.  That commit caused the above two files to be
built into two separate modules.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-05-12 17:22     ` Javier Cardona
@ 2011-05-12 23:01       ` Stephen Rothwell
  0 siblings, 0 replies; 38+ messages in thread
From: Stephen Rothwell @ 2011-05-12 23:01 UTC (permalink / raw)
  To: Javier Cardona; +Cc: John W. Linville, linux-next, linux-kernel, devel

[-- Attachment #1: Type: text/plain, Size: 1782 bytes --]

Hi Javier,

On Thu, 12 May 2011 10:22:20 -0700 Javier Cardona <javier@cozybit.com> wrote:
>
> On Wed, May 11, 2011 at 9:56 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> > On Wed, 11 May 2011 21:37:16 -0700 Javier Cardona <javier@cozybit.com> wrote:
> >>
> >> On Wed, May 11, 2011 at 9:10 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> >> >
> >> > After merging the final tree, today's linux-next build (i386 defconfig)
> >> > failed like this:
> >> >
> >> > net/mac80211/cfg.c: In function 'sta_apply_parameters':
> >> > net/mac80211/cfg.c:746: error: 'struct sta_info' has no member named 'plink_state'
> >>
> >> Sorry, I just saw this.  My apologies.  The fixup is valid but I'm
> >> trying to understand why it is needed.
> >> ieee80211_vif_is_mesh(&sdata->vif) compiles to 'false' when
> >> CONFIG_MAC80211_MESH is not defined... wouldn't the compiler remove
> >> that dead code? (Obviously it did not...)
> >
> > The compiler will elide that code but only after compiling it, so the
> > code still has to be correct.
> 
> Thanks for the explanation.
> 
> >> Anyway, given that this is necessary, it's probably cleaner to extend
> >> the #ifdef block to the entire body of the outer if as follows:
> >
> > I think you have the #ifdef one line too low.
> 
> My intent was to have the #endif one line above, but either way works.
>  That's the problem of preparing patches on pajamas.
> How can I help at this point?  Would resubmitting the patch help or
> just add noise?

Unless John has already fixed this, you need to send him a patch.  This
should be a fix patch as John doesn't normally rebase his tree (I think).
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-05-12  4:56   ` Stephen Rothwell
@ 2011-05-12 17:22     ` Javier Cardona
  2011-05-12 23:01       ` Stephen Rothwell
  0 siblings, 1 reply; 38+ messages in thread
From: Javier Cardona @ 2011-05-12 17:22 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: John W. Linville, linux-next, linux-kernel, devel

On Wed, May 11, 2011 at 9:56 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> On Wed, 11 May 2011 21:37:16 -0700 Javier Cardona <javier@cozybit.com> wrote:
>>
>> Hi Stephen,
>>
>> On Wed, May 11, 2011 at 9:10 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>> > Hi John,
>> >
>> > After merging the final tree, today's linux-next build (i386 defconfig)
>> > failed like this:
>> >
>> > net/mac80211/cfg.c: In function 'sta_apply_parameters':
>> > net/mac80211/cfg.c:746: error: 'struct sta_info' has no member named 'plink_state'
>>
>> Sorry, I just saw this.  My apologies.  The fixup is valid but I'm
>> trying to understand why it is needed.
>> ieee80211_vif_is_mesh(&sdata->vif) compiles to 'false' when
>> CONFIG_MAC80211_MESH is not defined... wouldn't the compiler remove
>> that dead code? (Obviously it did not...)
>
> The compiler will elide that code but only after compiling it, so the
> code still has to be correct.

Thanks for the explanation.

>> Anyway, given that this is necessary, it's probably cleaner to extend
>> the #ifdef block to the entire body of the outer if as follows:
>
> I think you have the #ifdef one line too low.

My intent was to have the #endif one line above, but either way works.
 That's the problem of preparing patches on pajamas.
How can I help at this point?  Would resubmitting the patch help or
just add noise?

Cheers,

Javier

> --
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/
>



-- 
Javier Cardona
cozybit Inc.
http://www.cozybit.com

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-05-12  4:37 ` Javier Cardona
@ 2011-05-12  4:56   ` Stephen Rothwell
  2011-05-12 17:22     ` Javier Cardona
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2011-05-12  4:56 UTC (permalink / raw)
  To: Javier Cardona; +Cc: John W. Linville, linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1156 bytes --]

On Wed, 11 May 2011 21:37:16 -0700 Javier Cardona <javier@cozybit.com> wrote:
>
> Hi Stephen,
> 
> On Wed, May 11, 2011 at 9:10 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> > Hi John,
> >
> > After merging the final tree, today's linux-next build (i386 defconfig)
> > failed like this:
> >
> > net/mac80211/cfg.c: In function 'sta_apply_parameters':
> > net/mac80211/cfg.c:746: error: 'struct sta_info' has no member named 'plink_state'
> 
> Sorry, I just saw this.  My apologies.  The fixup is valid but I'm
> trying to understand why it is needed.
> ieee80211_vif_is_mesh(&sdata->vif) compiles to 'false' when
> CONFIG_MAC80211_MESH is not defined... wouldn't the compiler remove
> that dead code? (Obviously it did not...)

The compiler will elide that code but only after compiling it, so the
code still has to be correct.

> Anyway, given that this is necessary, it's probably cleaner to extend
> the #ifdef block to the entire body of the outer if as follows:

I think you have the #ifdef one line too low.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-05-12  4:10 Stephen Rothwell
@ 2011-05-12  4:37 ` Javier Cardona
  2011-05-12  4:56   ` Stephen Rothwell
  0 siblings, 1 reply; 38+ messages in thread
From: Javier Cardona @ 2011-05-12  4:37 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: John W. Linville, linux-next, linux-kernel

Hi Stephen,

On Wed, May 11, 2011 at 9:10 PM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi John,
>
> After merging the final tree, today's linux-next build (i386 defconfig)
> failed like this:
>
> net/mac80211/cfg.c: In function 'sta_apply_parameters':
> net/mac80211/cfg.c:746: error: 'struct sta_info' has no member named 'plink_state'

Sorry, I just saw this.  My apologies.  The fixup is valid but I'm
trying to understand why it is needed.
ieee80211_vif_is_mesh(&sdata->vif) compiles to 'false' when
CONFIG_MAC80211_MESH is not defined... wouldn't the compiler remove
that dead code? (Obviously it did not...)

Anyway, given that this is necessary, it's probably cleaner to extend
the #ifdef block to the entire body of the outer if as follows:

From: Javier Cardona <javier@cozybit.com>
Date: Wed, 11 May 2011 21:30:17 -0700
Subject: [PATCH] mac80211: fixup access to conditionally defined struct member

Signed-off-by: Javier Cardona <javier@cozybit.com>
---
 net/mac80211/cfg.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index a2ff474..d104c1e 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -738,6 +738,7 @@ static void sta_apply_parameters(struct
ieee80211_local *local,
                                                  &sta->sta.ht_cap);

        if (ieee80211_vif_is_mesh(&sdata->vif)) {
+#ifdef CONFIG_MAC80211_MESH
                if (sdata->u.mesh.security & IEEE80211_MESH_SEC_SECURED)
                        switch (params->plink_state) {
                        case PLINK_LISTEN:
@@ -759,6 +760,7 @@ static void sta_apply_parameters(struct
ieee80211_local *local,
                                break;
                        }
        }
+#endif
 }

 static int ieee80211_add_station(struct wiphy *wiphy, struct net_device *dev,
-- 
1.7.2.1


> Cause by commit 9c3990aaec0a ("nl80211: Let userspace drive the peer link
> management states").  plink_state is only available in sta_info if
> CONFIG_MAC80211_MESH is set.
>
> I applied the following patch for today (which my not be correct).
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 12 May 2011 14:06:31 +1000
> Subject: [PATCH] nl80211: fix for reference to sta_info -> plink_state
>
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
>  net/mac80211/cfg.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
> index a2ff474..e090012 100644
> --- a/net/mac80211/cfg.c
> +++ b/net/mac80211/cfg.c
> @@ -743,7 +743,9 @@ static void sta_apply_parameters(struct ieee80211_local *local,
>                        case PLINK_LISTEN:
>                        case PLINK_ESTAB:
>                        case PLINK_BLOCKED:
> +#ifdef CONFIG_MAC80211_MESH
>                                sta->plink_state = params->plink_state;
> +#endif
>                                break;
>                        default:
>                                /*  nothing  */
> --
> 1.7.5.1
>
> --
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
> http://www.canb.auug.org.au/~sfr/
>



-- 
Javier Cardona
cozybit Inc.
http://www.cozybit.com

^ permalink raw reply related	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-05-12  4:10 Stephen Rothwell
  2011-05-12  4:37 ` Javier Cardona
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2011-05-12  4:10 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Javier Cardona

Hi John,

After merging the final tree, today's linux-next build (i386 defconfig)
failed like this:

net/mac80211/cfg.c: In function 'sta_apply_parameters':
net/mac80211/cfg.c:746: error: 'struct sta_info' has no member named 'plink_state'

Cause by commit 9c3990aaec0a ("nl80211: Let userspace drive the peer link
management states").  plink_state is only available in sta_info if
CONFIG_MAC80211_MESH is set.

I applied the following patch for today (which my not be correct).

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Thu, 12 May 2011 14:06:31 +1000
Subject: [PATCH] nl80211: fix for reference to sta_info -> plink_state

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 net/mac80211/cfg.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index a2ff474..e090012 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -743,7 +743,9 @@ static void sta_apply_parameters(struct ieee80211_local *local,
 			case PLINK_LISTEN:
 			case PLINK_ESTAB:
 			case PLINK_BLOCKED:
+#ifdef CONFIG_MAC80211_MESH
 				sta->plink_state = params->plink_state;
+#endif
 				break;
 			default:
 				/*  nothing  */
-- 
1.7.5.1

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

^ permalink raw reply related	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-02-25  6:16 Stephen Rothwell
@ 2011-02-25 20:33 ` wwguy
  0 siblings, 0 replies; 38+ messages in thread
From: wwguy @ 2011-02-25 20:33 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, linux-next, linux-kernel, Venkataraman, Meenakshi

Hi Stephen,

On Thu, 2011-02-24 at 22:16 -0800, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x29f0): multiple definition of `iwl_rates'
> drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0xa68): first defined here
> powerpc64-linux-ld: Warning: size of symbol `iwl_rates' changed from 143 in drivers/net/wireless/iwlwifi/built-in.o to 130 in drivers/net/wireless/iwlegacy/built-in.o
> drivers/net/wireless/iwlegacy/built-in.o:(.data+0x0): multiple definition of `bt_coex_active'
> drivers/net/wireless/iwlwifi/built-in.o:(.data+0x668): first defined here
> drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x750): multiple definition of `iwl_eeprom_band_1'
> drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0x27d0): first defined here
> drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x3f0): multiple definition of `iwl_bcast_addr'
> drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0x24f8): first defined here
> drivers/net/wireless/iwlegacy/built-in.o:(.bss+0x3d48): multiple definition of `iwl_debug_level'
> drivers/net/wireless/iwlwifi/built-in.o:(.bss+0x21950): first defined here
> 
> Presumably caused by commit be663ab67077fac8e23eb8e231a8c1c94cb32e54
> ("iwlwifi: split the drivers for agn and legacy devices 3945/4965").
> 
> I have just left this one as it will only break strange configs (like
> allyesconfig) but it needs to be fixed soon.

Thanks for let us know, we will submit separated patch to fix it asap

Wey



^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-02-25  6:16 Stephen Rothwell
  2011-02-25 20:33 ` wwguy
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2011-02-25  6:16 UTC (permalink / raw)
  To: John W. Linville
  Cc: linux-next, linux-kernel, Wey-Yi Guy, Meenakshi Venkataraman

[-- Attachment #1: Type: text/plain, Size: 1621 bytes --]

Hi all,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x29f0): multiple definition of `iwl_rates'
drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0xa68): first defined here
powerpc64-linux-ld: Warning: size of symbol `iwl_rates' changed from 143 in drivers/net/wireless/iwlwifi/built-in.o to 130 in drivers/net/wireless/iwlegacy/built-in.o
drivers/net/wireless/iwlegacy/built-in.o:(.data+0x0): multiple definition of `bt_coex_active'
drivers/net/wireless/iwlwifi/built-in.o:(.data+0x668): first defined here
drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x750): multiple definition of `iwl_eeprom_band_1'
drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0x27d0): first defined here
drivers/net/wireless/iwlegacy/built-in.o:(.rodata+0x3f0): multiple definition of `iwl_bcast_addr'
drivers/net/wireless/iwlwifi/built-in.o:(.rodata+0x24f8): first defined here
drivers/net/wireless/iwlegacy/built-in.o:(.bss+0x3d48): multiple definition of `iwl_debug_level'
drivers/net/wireless/iwlwifi/built-in.o:(.bss+0x21950): first defined here

Presumably caused by commit be663ab67077fac8e23eb8e231a8c1c94cb32e54
("iwlwifi: split the drivers for agn and legacy devices 3945/4965").

I have just left this one as it will only break strange configs (like
allyesconfig) but it needs to be fixed soon.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

P.S. the SOB lines in that commit are a bit confusing, usually the author
is the first SOB line.

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-02-24  6:24 Stephen Rothwell
  0 siblings, 0 replies; 38+ messages in thread
From: Stephen Rothwell @ 2011-02-24  6:24 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Larry Finger

[-- Attachment #1: Type: text/plain, Size: 1011 bytes --]

Hi all,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:701: error: __ksymtab__rtl92c_phy_txpwr_idx_to_dbm causes a section type conflict
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:701: error: __ksymtab__rtl92c_phy_txpwr_idx_to_dbm causes a section type conflict
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:677: error: __ksymtab__rtl92c_phy_dbm_to_txpwr_Idx causes a section type conflict
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c:677: error: __ksymtab__rtl92c_phy_dbm_to_txpwr_Idx causes a section type conflict

Caused by applying EXPORT_SYMBOL to static symbols in commit
1472d3a87586eb7529d1d85f7c888055650b7208 ("rtlwifi: rtl8192ce: rtl8192cu:
Fix multiple def errors for allyesconfig build").

I have just left it for today (assuming it will be fixed soon).
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2011-02-22  7:15 Stephen Rothwell
@ 2011-02-22 15:45 ` Larry Finger
  0 siblings, 0 replies; 38+ messages in thread
From: Larry Finger @ 2011-02-22 15:45 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: John W. Linville, linux-next, linux-kernel, George

On 02/22/2011 01:15 AM, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 
> drivers/net/wireless/rtlwifi/rtl8192cu/sw.c: In function 'rtl92cu_init_sw_vars':
> drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:60: error: implicit declaration of function 'vmalloc'
> drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:60: warning: assignment makes pointer from integer without a cast
> drivers/net/wireless/rtlwifi/rtl8192cu/sw.c: In function 'rtl92cu_deinit_sw_vars':
> drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:74: error: implicit declaration of function 'vfree'
> 
> Caused by commit 442888c706e90634c4cc3441751b43115a7d8506 ("rtlwifi:
> rtl8192cu: Add routines dm, fw, led and sw").  Missing an include of
> linux/vmalloc.h.  See Rule 1 in Documentation/SubmitChecklist.
> 
> I added the following patch:
> 
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Tue, 22 Feb 2011 17:29:04 +1100
> Subject: [PATCH] rtlwifi: include vmalloc.h for needed routines
> 
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
>  drivers/net/wireless/rtlwifi/rtl8192cu/sw.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
> index 4e937e0..c69861e 100644
> --- a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
> +++ b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
> @@ -27,6 +27,8 @@
>   *
>   *****************************************************************************/
>  
> +#include <linux/vmalloc.h>
> +
>  #include "../wifi.h"
>  #include "../core.h"
>  #include "../usb.h"

I had gotten private mail yesterday about the missing vmalloc.h include.

It will take me a while to set up an allyes configuration to find the other
problems.

Larry

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-02-22  7:15 Stephen Rothwell
  2011-02-22 15:45 ` Larry Finger
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2011-02-22  7:15 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, George, Larry Finger

Hi all,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/rtlwifi/rtl8192cu/sw.c: In function 'rtl92cu_init_sw_vars':
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:60: error: implicit declaration of function 'vmalloc'
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:60: warning: assignment makes pointer from integer without a cast
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c: In function 'rtl92cu_deinit_sw_vars':
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c:74: error: implicit declaration of function 'vfree'

Caused by commit 442888c706e90634c4cc3441751b43115a7d8506 ("rtlwifi:
rtl8192cu: Add routines dm, fw, led and sw").  Missing an include of
linux/vmalloc.h.  See Rule 1 in Documentation/SubmitChecklist.

I added the following patch:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Tue, 22 Feb 2011 17:29:04 +1100
Subject: [PATCH] rtlwifi: include vmalloc.h for needed routines

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 drivers/net/wireless/rtlwifi/rtl8192cu/sw.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
index 4e937e0..c69861e 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/sw.c
@@ -27,6 +27,8 @@
  *
  *****************************************************************************/
 
+#include <linux/vmalloc.h>
+
 #include "../wifi.h"
 #include "../core.h"
 #include "../usb.h"
-- 
1.7.4.1

but then got:

drivers/net/wireless/rtlwifi/rtl8192cu/built-in.o: In function `rtl92c_phy_sw_chnl':
(.opd+0xf30): multiple definition of `rtl92c_phy_sw_chnl'
drivers/net/wireless/rtlwifi/rtl8192ce/built-in.o:(.opd+0xb70): first defined here
drivers/net/wireless/rtlwifi/rtl8192cu/built-in.o: In function `rtl92c_fill_h2c_cmd':
(.opd+0x288): multiple definition of `rtl92c_fill_h2c_cmd'
drivers/net/wireless/rtlwifi/rtl8192ce/built-in.o:(.opd+0x288): first defined here

and lots more.

So I have used the wireless tree from next-20110221 for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

^ permalink raw reply related	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2011-01-05  4:10 Stephen Rothwell
  0 siblings, 0 replies; 38+ messages in thread
From: Stephen Rothwell @ 2011-01-05  4:10 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Bruno Randolf

[-- Attachment #1: Type: text/plain, Size: 674 bytes --]

Hi all,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/ath/ath9k/built-in.o:(.bss+0x13dc): multiple definition of `modparam_nohwcrypt'
drivers/net/wireless/ath/ath5k/built-in.o:(.bss+0x844c): first defined here

Caused by commit cd2c5486526b744fb505e18c9d981b35feaf283a ("ath5k: Move
mac80211 functions into new file").  This is what you get for using
unqualified global names ...

I reverted that commit for today.  The references in ath9k should
probably be qualified as well.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2010-12-16  3:29 Stephen Rothwell
@ 2010-12-16  4:49 ` Larry Finger
  0 siblings, 0 replies; 38+ messages in thread
From: Larry Finger @ 2010-12-16  4:49 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: John W. Linville, linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1568 bytes --]

On 12/15/2010 09:29 PM, Stephen Rothwell wrote:
> Hi John,
>
> After merging the final tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
>
> drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c: In function 'rtl92c_init_sw_vars':
> drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:76: error: implicit declaration of function 'vmalloc'
> drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:76: warning: cast to pointer from integer of different size
> drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c: In function 'rtl92c_deinit_sw_vars':
> drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:91: error: implicit declaration of function 'vfree'
>
> Caused by commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d ("rtl8192ce:
> Add new driver").  Rule 1 from Documentation/SubmitChecklist.
>
> I have reverted that commit for today.

Sorry for the omission. This error arises because my only platforms get the 
header included implicitly.

This patch will fix the problem - I will formally submit it through John Linville.

Larry
---

Index: wireless-testing/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
+++ wireless-testing/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
@@ -27,6 +27,8 @@
   *
   *****************************************************************************/

+#include <linux/vmalloc.h>
+
  #include "../wifi.h"
  #include "../core.h"
  #include "../pci.h"





[-- Attachment #2: rtl8192ce_fix_powerpc_build --]
[-- Type: text/plain, Size: 500 bytes --]

Index: wireless-testing/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
+++ wireless-testing/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c
@@ -27,6 +27,8 @@
  *
  *****************************************************************************/
 
+#include <linux/vmalloc.h>
+
 #include "../wifi.h"
 #include "../core.h"
 #include "../pci.h"



^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-12-16  3:29 Stephen Rothwell
  2010-12-16  4:49 ` Larry Finger
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2010-12-16  3:29 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Larry Finger

[-- Attachment #1: Type: text/plain, Size: 908 bytes --]

Hi John,

After merging the final tree, today's linux-next build (powerpc allyesconfig)
failed like this:

drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c: In function 'rtl92c_init_sw_vars':
drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:76: error: implicit declaration of function 'vmalloc'
drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:76: warning: cast to pointer from integer of different size
drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c: In function 'rtl92c_deinit_sw_vars':
drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192c-sw.c:91: error: implicit declaration of function 'vfree'

Caused by commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d ("rtl8192ce:
Add new driver").  Rule 1 from Documentation/SubmitChecklist.

I have reverted that commit for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-12-07  3:12 Stephen Rothwell
  0 siblings, 0 replies; 38+ messages in thread
From: Stephen Rothwell @ 2010-12-07  3:12 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Johannes Berg, Javier Cardona

[-- Attachment #1: Type: text/plain, Size: 520 bytes --]

Hi John,

After merging the final tree, today's linux-next build (i386 defconfig)
failed like this:

net/mac80211/main.c: In function 'ieee80211_bss_info_change_notify':
net/mac80211/main.c:250: error: 'union <anonymous>' has no member named 'mesh'

Caused by commit 29cbe68c516a48a9a88b3226878570c6cbd83c02
("cfg80211/mac80211: add mesh join/leave commands").

I have reverted that commit for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2010-11-18  2:27   ` Stephen Rothwell
@ 2010-11-18 21:09     ` Gustavo F. Padovan
  0 siblings, 0 replies; 38+ messages in thread
From: Gustavo F. Padovan @ 2010-11-18 21:09 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: Randy Dunlap, John W. Linville, linux-next, linux-kernel

* Stephen Rothwell <sfr@canb.auug.org.au> [2010-11-18 13:27:24 +1100]:

> Hi all,
> 
> On Wed, 17 Nov 2010 08:03:01 -0800 Randy Dunlap <randy.dunlap@oracle.com> wrote:
> >
> > On 11/16/10 18:48, Stephen Rothwell wrote:
> > > 
> > > After merging the final tree, today's linux-next build (powerpc allyesconfig)
> > > failed like this:
> > > 
> > > drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_reset_tsf':
> > > (.opd+0xf00): multiple definition of `iwl_legacy_mac_reset_tsf'
> > > drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x90): first defined here
> 	.
> 	.
> > > I should have known when I reported the warning ...
> > > 
> > > Caused by commit dd0dd411f7178a20ea93a3cfa39123f078a07e25 ("iwlwifi: fix
> > > modular legacy build errors").
> > > 
> > > I have reverted that commit for today.
> > 
> > Ack.  John, please drop/revert that patch.
> > 
> > Sorry about the problem.
> 
> Looks like John removed it but the bluetooth tree (which is based on top
> of the wireless tree) brought it back in by rebasing on top of yesterday's
> wireless tree. :-(
> 
> I have reverted it again today.

Sorry about that, I wasn't aware of this problem. I'm going to redo my
tree today to fix this issue.

-- 
Gustavo F. Padovan
http://profusion.mobi

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2010-11-17 16:03 ` Randy Dunlap
@ 2010-11-18  2:27   ` Stephen Rothwell
  2010-11-18 21:09     ` Gustavo F. Padovan
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2010-11-18  2:27 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: John W. Linville, linux-next, linux-kernel, Gustavo F. Padovan

[-- Attachment #1: Type: text/plain, Size: 1120 bytes --]

Hi all,

On Wed, 17 Nov 2010 08:03:01 -0800 Randy Dunlap <randy.dunlap@oracle.com> wrote:
>
> On 11/16/10 18:48, Stephen Rothwell wrote:
> > 
> > After merging the final tree, today's linux-next build (powerpc allyesconfig)
> > failed like this:
> > 
> > drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_reset_tsf':
> > (.opd+0xf00): multiple definition of `iwl_legacy_mac_reset_tsf'
> > drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x90): first defined here
	.
	.
> > I should have known when I reported the warning ...
> > 
> > Caused by commit dd0dd411f7178a20ea93a3cfa39123f078a07e25 ("iwlwifi: fix
> > modular legacy build errors").
> > 
> > I have reverted that commit for today.
> 
> Ack.  John, please drop/revert that patch.
> 
> Sorry about the problem.

Looks like John removed it but the bluetooth tree (which is based on top
of the wireless tree) brought it back in by rebasing on top of yesterday's
wireless tree. :-(

I have reverted it again today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* Re: linux-next: build failure after merge of the final tree (wireless tree related)
  2010-11-17  2:48 Stephen Rothwell
@ 2010-11-17 16:03 ` Randy Dunlap
  2010-11-18  2:27   ` Stephen Rothwell
  0 siblings, 1 reply; 38+ messages in thread
From: Randy Dunlap @ 2010-11-17 16:03 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: John W. Linville, linux-next, linux-kernel

On 11/16/10 18:48, Stephen Rothwell wrote:
> Hi John,
> 
> After merging the final tree, today's linux-next build (powerpc allyesconfig)
> failed like this:
> 
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_reset_tsf':
> (.opd+0xf00): multiple definition of `iwl_legacy_mac_reset_tsf'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x90): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_config':
> (.text+0x50ae4): multiple definition of `.iwl_legacy_mac_config'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x2b34): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_bss_info_changed':
> (.text+0x4f778): multiple definition of `.iwl_legacy_mac_bss_info_changed'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x17c8): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_tx_cmd_protection':
> (.text+0x4dfb0): multiple definition of `.iwl_legacy_tx_cmd_protection'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x0): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_bss_info_changed':
> (.opd+0xee8): multiple definition of `iwl_legacy_mac_bss_info_changed'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x78): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_tx_cmd_protection':
> (.opd+0xe70): multiple definition of `iwl_legacy_tx_cmd_protection'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x0): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_isr_legacy':
> (.text+0x4e0e0): multiple definition of `.iwl_isr_legacy'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x130): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_reset_tsf':
> (.text+0x50620): multiple definition of `.iwl_legacy_mac_reset_tsf'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x2670): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_isr_legacy':
> (.opd+0xe88): multiple definition of `iwl_isr_legacy'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x18): first defined here
> drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_config':
> (.opd+0xf18): multiple definition of `iwl_legacy_mac_config'
> drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0xa8): first defined here
> 
> I should have known when I reported the warning ...
> 
> Caused by commit dd0dd411f7178a20ea93a3cfa39123f078a07e25 ("iwlwifi: fix
> modular legacy build errors").
> 
> I have reverted that commit for today.

Ack.  John, please drop/revert that patch.

Sorry about the problem.
-- 
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-11-17  2:48 Stephen Rothwell
  2010-11-17 16:03 ` Randy Dunlap
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2010-11-17  2:48 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Randy Dunlap

[-- Attachment #1: Type: text/plain, Size: 2623 bytes --]

Hi John,

After merging the final tree, today's linux-next build (powerpc allyesconfig)
failed like this:

drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_reset_tsf':
(.opd+0xf00): multiple definition of `iwl_legacy_mac_reset_tsf'
drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x90): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_config':
(.text+0x50ae4): multiple definition of `.iwl_legacy_mac_config'
drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x2b34): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_bss_info_changed':
(.text+0x4f778): multiple definition of `.iwl_legacy_mac_bss_info_changed'
drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x17c8): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_tx_cmd_protection':
(.text+0x4dfb0): multiple definition of `.iwl_legacy_tx_cmd_protection'
drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x0): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_bss_info_changed':
(.opd+0xee8): multiple definition of `iwl_legacy_mac_bss_info_changed'
drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x78): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_tx_cmd_protection':
(.opd+0xe70): multiple definition of `iwl_legacy_tx_cmd_protection'
drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x0): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_isr_legacy':
(.text+0x4e0e0): multiple definition of `.iwl_isr_legacy'
drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x130): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `.iwl_legacy_mac_reset_tsf':
(.text+0x50620): multiple definition of `.iwl_legacy_mac_reset_tsf'
drivers/net/wireless/iwlwifi/iwlagn.o:(.text+0x2670): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_isr_legacy':
(.opd+0xe88): multiple definition of `iwl_isr_legacy'
drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0x18): first defined here
drivers/net/wireless/iwlwifi/iwl3945.o: In function `iwl_legacy_mac_config':
(.opd+0xf18): multiple definition of `iwl_legacy_mac_config'
drivers/net/wireless/iwlwifi/iwlagn.o:(.opd+0xa8): first defined here

I should have known when I reported the warning ...

Caused by commit dd0dd411f7178a20ea93a3cfa39123f078a07e25 ("iwlwifi: fix
modular legacy build errors").

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-10-12  5:35 Stephen Rothwell
  0 siblings, 0 replies; 38+ messages in thread
From: Stephen Rothwell @ 2010-10-12  5:35 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-next, linux-kernel, Ben Greear

[-- Attachment #1: Type: text/plain, Size: 419 bytes --]

Hi John,

After merging the final tree, today's linux-next build failed like this:

ERROR: ".ath_opmode_to_string" [drivers/net/wireless/ath/ath5k/ath5k.ko] undefined!

CONFIG_ATH5K_DEBUG is not set ...

Caused by commit 92c68a66a8f73c51f062ae8cae958c86a21fea78 ("ath5k: Print
out opmode in debugfs").
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
  2010-03-24  4:59 Stephen Rothwell
@ 2010-03-24  8:13   ` Sujith
  0 siblings, 0 replies; 38+ messages in thread
From: Sujith @ 2010-03-24  8:13 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, linux-next, linux-kernel, Vasanth Thiagarajan,
	Senthilkumar Balasubramanian

Stephen Rothwell wrote:
> Hi John,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 

Thanks for reporting this.
A patch has been sent to fix this issue: https://patchwork.kernel.org/patch/87829/

Sujith

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-03-24  8:13   ` Sujith
  0 siblings, 0 replies; 38+ messages in thread
From: Sujith @ 2010-03-24  8:13 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: John W. Linville, linux-next, linux-kernel, Vasanth Thiagarajan,
	Senthilkumar Balasubramanian

Stephen Rothwell wrote:
> Hi John,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
> 

Thanks for reporting this.
A patch has been sent to fix this issue: https://patchwork.kernel.org/patch/87829/

Sujith

^ permalink raw reply	[flat|nested] 38+ messages in thread

* linux-next: build failure after merge of the final tree (wireless tree related)
@ 2010-03-24  4:59 Stephen Rothwell
  2010-03-24  8:13   ` Sujith
  0 siblings, 1 reply; 38+ messages in thread
From: Stephen Rothwell @ 2010-03-24  4:59 UTC (permalink / raw)
  To: John W. Linville
  Cc: linux-next, linux-kernel, Sujith, Vasanthakumar Thiagarajan,
	Senthil Balasubramanian

[-- Attachment #1: Type: text/plain, Size: 2721 bytes --]

Hi John,

After merging the final tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `.ath9k_debug_remove_root':
(.text+0xc1cc): multiple definition of `.ath9k_debug_remove_root'
drivers/net/wireless/ath/ath9k/ath9k.o:(.text+0x1b7ec): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `ath9k_debug_remove_root':
(.opd+0x9c0): multiple definition of `ath9k_debug_remove_root'
drivers/net/wireless/ath/ath9k/ath9k.o:(.opd+0x12d8): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `ath9k_init_debug':
(.opd+0xa08): multiple definition of `ath9k_init_debug'
drivers/net/wireless/ath/ath9k/ath9k.o:(.opd+0x1320): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `ath_txq_update':
(.opd+0x630): multiple definition of `ath_txq_update'
drivers/net/wireless/ath/ath9k/ath9k.o:(.opd+0xcc0): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `.ath9k_debug_create_root':
(.text+0xc310): multiple definition of `.ath9k_debug_create_root'
drivers/net/wireless/ath/ath9k/ath9k.o:(.text+0x1b990): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `.ath9k_exit_debug':
(.text+0xc24c): multiple definition of `.ath9k_exit_debug'
drivers/net/wireless/ath/ath9k/ath9k.o:(.text+0x1b86c): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `.ath9k_init_debug':
(.text+0xc3a8): multiple definition of `.ath9k_init_debug'
drivers/net/wireless/ath/ath9k/ath9k.o:(.text+0x1ba28): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `ath9k_exit_debug':
(.opd+0x9d8): multiple definition of `ath9k_exit_debug'
drivers/net/wireless/ath/ath9k/ath9k.o:(.opd+0x12f0): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `.ath_txq_update':
(.text+0x7cdc): multiple definition of `.ath_txq_update'
drivers/net/wireless/ath/ath9k/ath9k.o:(.text+0x13e4c): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o: In function `ath9k_debug_create_root':
(.opd+0x9f0): multiple definition of `ath9k_debug_create_root'
drivers/net/wireless/ath/ath9k/ath9k.o:(.opd+0x1308): first defined here
drivers/net/wireless/ath/ath9k/ath9k_htc.o:(.bss+0x3980): multiple definition of `modparam_nohwcrypt'
drivers/net/wireless/ath/ath9k/ath9k.o:(.bss+0x14e8): first defined here

Cause by commit fb9987d0f748c983bb795a86f47522313f701a08 ("Sujith <Sujith.Manoharan@atheros.com>") from the wireless tree.

I have reverted that commit for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2011-12-24  1:29 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-08-10  2:21 linux-next: build failure after merge of the final tree (wireless tree related) Stephen Rothwell
2011-08-10  6:11 ` Kalle Valo
2011-08-10  6:11   ` Kalle Valo
2011-08-10  7:11 ` [PATCH] ath6kl: fix function name conflicts with ath9k Kalle Valo
2011-08-10  7:11   ` Kalle Valo
2011-08-10  7:24   ` Kalle Valo
2011-08-10  7:24     ` Kalle Valo
  -- strict thread matches above, loose matches on Subject: below --
2011-12-22  5:58 linux-next: build failure after merge of the final tree (wireless tree related) Stephen Rothwell
2011-12-22  8:38 ` Kalle Valo
2011-12-22  8:38   ` Kalle Valo
2011-12-22 16:57 ` Michal Marek
2011-12-23 20:50   ` Michal Marek
2011-12-24  1:29     ` Kalle Valo
2011-12-24  1:29       ` Kalle Valo
2011-12-24  1:26   ` Kalle Valo
2011-12-24  1:26     ` Kalle Valo
2011-05-12  4:10 Stephen Rothwell
2011-05-12  4:37 ` Javier Cardona
2011-05-12  4:56   ` Stephen Rothwell
2011-05-12 17:22     ` Javier Cardona
2011-05-12 23:01       ` Stephen Rothwell
2011-02-25  6:16 Stephen Rothwell
2011-02-25 20:33 ` wwguy
2011-02-24  6:24 Stephen Rothwell
2011-02-22  7:15 Stephen Rothwell
2011-02-22 15:45 ` Larry Finger
2011-01-05  4:10 Stephen Rothwell
2010-12-16  3:29 Stephen Rothwell
2010-12-16  4:49 ` Larry Finger
2010-12-07  3:12 Stephen Rothwell
2010-11-17  2:48 Stephen Rothwell
2010-11-17 16:03 ` Randy Dunlap
2010-11-18  2:27   ` Stephen Rothwell
2010-11-18 21:09     ` Gustavo F. Padovan
2010-10-12  5:35 Stephen Rothwell
2010-03-24  4:59 Stephen Rothwell
2010-03-24  8:13 ` Sujith
2010-03-24  8:13   ` Sujith

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.