diff options
author | David S. Miller <davem@davemloft.net> | 2008-07-17 03:34:19 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-07-17 22:21:00 -0400 |
commit | e8a0464cc950972824e2e128028ae3db666ec1ed (patch) | |
tree | 5022b95396c0f3b313531bc39b19543c03551b9a /net/mac80211/main.c | |
parent | 070825b3840a743e21ebcc44f8279708a4fed977 (diff) |
netdev: Allocate multiple queues for TX.
alloc_netdev_mq() now allocates an array of netdev_queue
structures for TX, based upon the queue_count argument.
Furthermore, all accesses to the TX queues are now vectored
through the netdev_get_tx_queue() and netdev_for_each_tx_queue()
interfaces. This makes it easy to grep the tree for all
things that want to get to a TX queue of a net device.
Problem spots which are not really multiqueue aware yet, and
only work with one queue, can easily be spotted by grepping
for all netdev_get_tx_queue() calls that pass in a zero index.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index af0056e7e5b3..b486e634f4fe 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -621,7 +621,7 @@ int ieee80211_start_tx_ba_session(struct ieee80211_hw *hw, u8 *ra, u16 tid) | |||
621 | 621 | ||
622 | /* ensure that TX flow won't interrupt us | 622 | /* ensure that TX flow won't interrupt us |
623 | * until the end of the call to requeue function */ | 623 | * until the end of the call to requeue function */ |
624 | txq = &local->mdev->tx_queue; | 624 | txq = netdev_get_tx_queue(local->mdev, 0); |
625 | spin_lock_bh(&txq->lock); | 625 | spin_lock_bh(&txq->lock); |
626 | 626 | ||
627 | /* create a new queue for this aggregation */ | 627 | /* create a new queue for this aggregation */ |
@@ -862,7 +862,7 @@ void ieee80211_stop_tx_ba_cb(struct ieee80211_hw *hw, u8 *ra, u8 tid) | |||
862 | 862 | ||
863 | /* avoid ordering issues: we are the only one that can modify | 863 | /* avoid ordering issues: we are the only one that can modify |
864 | * the content of the qdiscs */ | 864 | * the content of the qdiscs */ |
865 | txq = &local->mdev->tx_queue; | 865 | txq = netdev_get_tx_queue(local->mdev, 0); |
866 | spin_lock_bh(&txq->lock); | 866 | spin_lock_bh(&txq->lock); |
867 | /* remove the queue for this aggregation */ | 867 | /* remove the queue for this aggregation */ |
868 | ieee80211_ht_agg_queue_remove(local, sta, tid, 1); | 868 | ieee80211_ht_agg_queue_remove(local, sta, tid, 1); |