aboutsummaryrefslogtreecommitdiffstats
path: root/net/ieee80211/ieee80211_tx.c
diff options
context:
space:
mode:
authorJames Ketrenos <jketreno@linux.intel.com>2005-09-21 12:56:33 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-09-21 23:03:54 -0400
commit9e8571affd1c54b9638b4ff9844e47aae07310f6 (patch)
treef6e568913c2d8aa1bf6bfedb3d90a78f2ade747b /net/ieee80211/ieee80211_tx.c
parent2c0aa2a5c2dfa1293ae3a07517d0b7de149358a1 (diff)
[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>
Diffstat (limited to 'net/ieee80211/ieee80211_tx.c')
-rw-r--r--net/ieee80211/ieee80211_tx.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/ieee80211/ieee80211_tx.c b/net/ieee80211/ieee80211_tx.c
index e9efdd42ba37..aba72f9880a1 100644
--- a/net/ieee80211/ieee80211_tx.c
+++ b/net/ieee80211/ieee80211_tx.c
@@ -465,7 +465,7 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
465 dev_kfree_skb_any(skb); 465 dev_kfree_skb_any(skb);
466 466
467 if (txb) { 467 if (txb) {
468 int ret = (*ieee->hard_start_xmit) (txb, dev); 468 int ret = (*ieee->hard_start_xmit) (txb, dev, priority);
469 if (ret == 0) { 469 if (ret == 0) {
470 stats->tx_packets++; 470 stats->tx_packets++;
471 stats->tx_bytes += txb->payload_size; 471 stats->tx_bytes += txb->payload_size;
@@ -500,6 +500,7 @@ int ieee80211_tx_frame(struct ieee80211_device *ieee,
500 unsigned long flags; 500 unsigned long flags;
501 struct net_device_stats *stats = &ieee->stats; 501 struct net_device_stats *stats = &ieee->stats;
502 struct sk_buff *skb_frag; 502 struct sk_buff *skb_frag;
503 int priority = -1;
503 504
504 spin_lock_irqsave(&ieee->lock, flags); 505 spin_lock_irqsave(&ieee->lock, flags);
505 506
@@ -540,7 +541,7 @@ int ieee80211_tx_frame(struct ieee80211_device *ieee,
540 spin_unlock_irqrestore(&ieee->lock, flags); 541 spin_unlock_irqrestore(&ieee->lock, flags);
541 542
542 if (txb) { 543 if (txb) {
543 if ((*ieee->hard_start_xmit) (txb, ieee->dev) == 0) { 544 if ((*ieee->hard_start_xmit) (txb, ieee->dev, priority) == 0) {
544 stats->tx_packets++; 545 stats->tx_packets++;
545 stats->tx_bytes += txb->payload_size; 546 stats->tx_bytes += txb->payload_size;
546 return 0; 547 return 0;