linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] compat-wireless-old redefinition of 'ieee80211_install_qdisc'
@ 2009-01-25 21:18 Jack Bates
  2009-01-29 17:13 ` Luis R. Rodriguez
  0 siblings, 1 reply; 2+ messages in thread
From: Jack Bates @ 2009-01-25 21:18 UTC (permalink / raw)
  To: linux-wireless

http://cgi.sfu.ca/~jdbates/tmp/linux/200901250/patch

I installed Debian Lenny on my new Eee PC 1000HA this weekend, and to
get the Atheros AR242x working, I compiled the compat-wireless-old
package.

I installed the Debian linux-headers-2.6.26-1-686 package, version
2.6.26-13 but got errors such as this compiling compat-wireless-old:

[...]/wme.c:594: error: redefinition of 'ieee80211_install_qdisc'
[...]/wme.h:39: error: previous definition of 'ieee80211_install_qdisc'
was here

After applying the linked patch to wme.c, I successfully compiled
compat-wireless-old, and am sending this message from my Eee PC with
wireless : )

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

* Re: [PATCH] compat-wireless-old redefinition of 'ieee80211_install_qdisc'
  2009-01-25 21:18 [PATCH] compat-wireless-old redefinition of 'ieee80211_install_qdisc' Jack Bates
@ 2009-01-29 17:13 ` Luis R. Rodriguez
  0 siblings, 0 replies; 2+ messages in thread
From: Luis R. Rodriguez @ 2009-01-29 17:13 UTC (permalink / raw)
  To: Jack Bates; +Cc: linux-wireless@vger.kernel.org

On Sun, Jan 25, 2009 at 01:18:15PM -0800, Jack Bates wrote:
> http://cgi.sfu.ca/~jdbates/tmp/linux/200901250/patch
> 
> I installed Debian Lenny on my new Eee PC 1000HA this weekend, and to
> get the Atheros AR242x working, I compiled the compat-wireless-old
> package.
> 
> I installed the Debian linux-headers-2.6.26-1-686 package, version
> 2.6.26-13 but got errors such as this compiling compat-wireless-old:
> 
> [...]/wme.c:594: error: redefinition of 'ieee80211_install_qdisc'
> [...]/wme.h:39: error: previous definition of 'ieee80211_install_qdisc'
> was here
> 
> After applying the linked patch to wme.c, I successfully compiled
> compat-wireless-old, and am sending this message from my Eee PC with
> wireless : )
> --

Thanks for the report and the patch. I'm pasting it inline here to comment on it:

--- a/compat-wireless-2.6-old/net/mac80211/wme.c	2009-01-24 15:15:21.000000000 -0800
+++ b/compat-wireless-2.6-old/net/mac80211/wme.c	2009-01-24 15:30:11.000000000 -0800
@@ -590,6 +590,7 @@
 };
 
 
+#ifdef CONFIG_MAC80211_QOS
 void ieee80211_install_qdisc(struct net_device *dev)
 {
 	struct Qdisc *qdisc;
@@ -706,3 +707,4 @@
 			wme_qdiscop_enqueue(skb, root_qd);
 	}
 }
+#endif /* CONFIG_MAC80211_QOS */

----

This is incorrect as wme.c should not be compiled unless you have
CONFIG_MAC80211_QOS and CONFIG_MAC80211_QOS will only be defined:

 * if you have 2.6.22
 * you are on 2.6.23..2.6.26 AND
	- You have CONFIG_NETDEVICES_MULTIQUEUE
	- You have CONFIG_NET_SCHED

This logic is in config.mk. Then our mac80211 Makefile has:

mac80211-$(CONFIG_MAC80211_QOS) += wme.o

In your case you have 2.6.26 and you seem to be having compilation issues
with wme.o. Note that the 2.6.26 kernel has its own mac80211 and its Makeifle has:

mac80211-$(CONFIG_NET_SCHED) += wme.o

CONFIG_MAC80211_QOS is no longer an option on 2.6.26, I'm curious
where it got enabled then as config.mk shouldn't have enabled it unless
you had both:

CONFIG_NETDEVICES_MULTIQUEUE
CONFIG_NET_SCHED

I just updated compat-wireless old to bail out if you have CONFIG_MAC80211_QOS
from your own kernel if you are on 2.6.23..2.6.26 as it should not be enabled.

  Luis

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

end of thread, other threads:[~2009-01-29 17:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-25 21:18 [PATCH] compat-wireless-old redefinition of 'ieee80211_install_qdisc' Jack Bates
2009-01-29 17:13 ` Luis R. Rodriguez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).