diff options
| author | David S. Miller <davem@davemloft.net> | 2011-12-06 13:31:19 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2011-12-06 13:31:19 -0500 |
| commit | 9e998a7550b41b303c5aa5351e66ccd56f2e4c50 (patch) | |
| tree | b39b57fa878f91fcbce65d923c1db03197ae28fc /net/mac80211/iface.c | |
| parent | 73dbb5e1627a35c8ab81f3813c096e9e7aaabaaa (diff) | |
| parent | d39aeaf260e7d1ec6a677beed230a0406d0069a6 (diff) | |
Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next
Diffstat (limited to 'net/mac80211/iface.c')
| -rw-r--r-- | net/mac80211/iface.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index b34ca0cbdf6c..3d3bb5e9d8fa 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -672,7 +672,6 @@ static u16 ieee80211_monitor_select_queue(struct net_device *dev, struct ieee80211_local *local = sdata->local; struct ieee80211_hdr *hdr; struct ieee80211_radiotap_header *rtap = (void *)skb->data; - u8 *p; if (local->hw.queues < 4) return 0; @@ -683,19 +682,7 @@ static u16 ieee80211_monitor_select_queue(struct net_device *dev, hdr = (void *)((u8 *)skb->data + le16_to_cpu(rtap->it_len)); - if (!ieee80211_is_data(hdr->frame_control)) { - skb->priority = 7; - return ieee802_1d_to_ac[skb->priority]; - } - if (!ieee80211_is_data_qos(hdr->frame_control)) { - skb->priority = 0; - return ieee802_1d_to_ac[skb->priority]; - } - - p = ieee80211_get_qos_ctl(hdr); - skb->priority = *p & IEEE80211_QOS_CTL_TAG1D_MASK; - - return ieee80211_downgrade_queue(local, skb); + return ieee80211_select_queue_80211(local, skb, hdr); } static const struct net_device_ops ieee80211_monitorif_ops = { @@ -866,6 +853,8 @@ static void ieee80211_setup_sdata(struct ieee80211_sub_if_data *sdata, sdata->control_port_protocol = cpu_to_be16(ETH_P_PAE); sdata->control_port_no_encrypt = false; + sdata->noack_map = 0; + /* only monitor differs */ sdata->dev->type = ARPHRD_ETHER; |
