[PATCH] ieee80211: Add QoS (WME) support to the ieee80211 subsystem

tree a3ad796273e98036eb0e9fc063225070fa24508a
parent 1b9c0aeb377abf8e4a43a86cff42382f74ca0259
author Mohamed Abbas <mabbas@linux.intel.com> 1124447069 -0500
committer James Ketrenos <jketreno@linux.intel.com> 1127313435 -0500

Add QoS (WME) support to the ieee80211 subsystem.

NOTE: This requires drivers that use the ieee80211 hard_start_xmit
(ipw2100 and ipw2200) to add the priority parameter to their callback.

Signed-off-by: James Ketrenos <jketreno@linux.intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
diff --git a/net/ieee80211/ieee80211_tx.c b/net/ieee80211/ieee80211_tx.c
index e9efdd4..aba72f9 100644
--- a/net/ieee80211/ieee80211_tx.c
+++ b/net/ieee80211/ieee80211_tx.c
@@ -465,7 +465,7 @@
 	dev_kfree_skb_any(skb);
 
 	if (txb) {
-		int ret = (*ieee->hard_start_xmit) (txb, dev);
+		int ret = (*ieee->hard_start_xmit) (txb, dev, priority);
 		if (ret == 0) {
 			stats->tx_packets++;
 			stats->tx_bytes += txb->payload_size;
@@ -500,6 +500,7 @@
 	unsigned long flags;
 	struct net_device_stats *stats = &ieee->stats;
 	struct sk_buff *skb_frag;
+	int priority = -1;
 
 	spin_lock_irqsave(&ieee->lock, flags);
 
@@ -540,7 +541,7 @@
 	spin_unlock_irqrestore(&ieee->lock, flags);
 
 	if (txb) {
-		if ((*ieee->hard_start_xmit) (txb, ieee->dev) == 0) {
+		if ((*ieee->hard_start_xmit) (txb, ieee->dev, priority) == 0) {
 			stats->tx_packets++;
 			stats->tx_bytes += txb->payload_size;
 			return 0;