diff options
-rw-r--r-- | net/mac80211/mesh_hwmp.c | 1 | ||||
-rw-r--r-- | net/mac80211/mesh_pathtbl.c | 3 | ||||
-rw-r--r-- | net/mac80211/rx.c | 5 | ||||
-rw-r--r-- | net/mac80211/wme.c | 2 |
4 files changed, 4 insertions, 7 deletions
diff --git a/net/mac80211/mesh_hwmp.c b/net/mac80211/mesh_hwmp.c index b22b223ccde1..a7afb2d32def 100644 --- a/net/mac80211/mesh_hwmp.c +++ b/net/mac80211/mesh_hwmp.c | |||
@@ -1043,6 +1043,7 @@ int mesh_nexthop_lookup(struct sk_buff *skb, | |||
1043 | skb_to_free = skb_dequeue(&mpath->frame_queue); | 1043 | skb_to_free = skb_dequeue(&mpath->frame_queue); |
1044 | 1044 | ||
1045 | info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING; | 1045 | info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING; |
1046 | ieee80211_set_qos_hdr(sdata, skb); | ||
1046 | skb_queue_tail(&mpath->frame_queue, skb); | 1047 | skb_queue_tail(&mpath->frame_queue, skb); |
1047 | if (skb_to_free) | 1048 | if (skb_to_free) |
1048 | mesh_path_discard_frame(skb_to_free, sdata); | 1049 | mesh_path_discard_frame(skb_to_free, sdata); |
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 7f54c5042235..4fc23d1b9c3a 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c | |||
@@ -213,7 +213,6 @@ void mesh_path_assign_nexthop(struct mesh_path *mpath, struct sta_info *sta) | |||
213 | struct ieee80211_hdr *hdr; | 213 | struct ieee80211_hdr *hdr; |
214 | struct sk_buff_head tmpq; | 214 | struct sk_buff_head tmpq; |
215 | unsigned long flags; | 215 | unsigned long flags; |
216 | struct ieee80211_sub_if_data *sdata = mpath->sdata; | ||
217 | 216 | ||
218 | rcu_assign_pointer(mpath->next_hop, sta); | 217 | rcu_assign_pointer(mpath->next_hop, sta); |
219 | 218 | ||
@@ -224,8 +223,6 @@ void mesh_path_assign_nexthop(struct mesh_path *mpath, struct sta_info *sta) | |||
224 | while ((skb = __skb_dequeue(&mpath->frame_queue)) != NULL) { | 223 | while ((skb = __skb_dequeue(&mpath->frame_queue)) != NULL) { |
225 | hdr = (struct ieee80211_hdr *) skb->data; | 224 | hdr = (struct ieee80211_hdr *) skb->data; |
226 | memcpy(hdr->addr1, sta->sta.addr, ETH_ALEN); | 225 | memcpy(hdr->addr1, sta->sta.addr, ETH_ALEN); |
227 | skb_set_queue_mapping(skb, ieee80211_select_queue(sdata, skb)); | ||
228 | ieee80211_set_qos_hdr(sdata, skb); | ||
229 | __skb_queue_tail(&tmpq, skb); | 226 | __skb_queue_tail(&tmpq, skb); |
230 | } | 227 | } |
231 | 228 | ||
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 04c1b05ba339..c8a7076f9bb8 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -1941,6 +1941,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80211_rx_data *rx) | |||
1941 | compare_ether_addr(sdata->vif.addr, hdr->addr3) == 0) | 1941 | compare_ether_addr(sdata->vif.addr, hdr->addr3) == 0) |
1942 | return RX_CONTINUE; | 1942 | return RX_CONTINUE; |
1943 | 1943 | ||
1944 | skb_set_queue_mapping(skb, ieee80211_select_queue(sdata, skb)); | ||
1944 | mesh_hdr->ttl--; | 1945 | mesh_hdr->ttl--; |
1945 | 1946 | ||
1946 | if (status->rx_flags & IEEE80211_RX_RA_MATCH) { | 1947 | if (status->rx_flags & IEEE80211_RX_RA_MATCH) { |
@@ -1965,12 +1966,10 @@ ieee80211_rx_h_mesh_fwding(struct ieee80211_rx_data *rx) | |||
1965 | memset(info, 0, sizeof(*info)); | 1966 | memset(info, 0, sizeof(*info)); |
1966 | info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING; | 1967 | info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING; |
1967 | info->control.vif = &rx->sdata->vif; | 1968 | info->control.vif = &rx->sdata->vif; |
1969 | info->control.jiffies = jiffies; | ||
1968 | if (is_multicast_ether_addr(fwd_hdr->addr1)) { | 1970 | if (is_multicast_ether_addr(fwd_hdr->addr1)) { |
1969 | IEEE80211_IFSTA_MESH_CTR_INC(&sdata->u.mesh, | 1971 | IEEE80211_IFSTA_MESH_CTR_INC(&sdata->u.mesh, |
1970 | fwded_mcast); | 1972 | fwded_mcast); |
1971 | skb_set_queue_mapping(fwd_skb, | ||
1972 | ieee80211_select_queue(sdata, fwd_skb)); | ||
1973 | ieee80211_set_qos_hdr(sdata, fwd_skb); | ||
1974 | } else { | 1973 | } else { |
1975 | int err; | 1974 | int err; |
1976 | /* | 1975 | /* |
diff --git a/net/mac80211/wme.c b/net/mac80211/wme.c index d4f789a4e4f1..43327115b490 100644 --- a/net/mac80211/wme.c +++ b/net/mac80211/wme.c | |||
@@ -83,7 +83,7 @@ u16 ieee80211_select_queue(struct ieee80211_sub_if_data *sdata, | |||
83 | break; | 83 | break; |
84 | #ifdef CONFIG_MAC80211_MESH | 84 | #ifdef CONFIG_MAC80211_MESH |
85 | case NL80211_IFTYPE_MESH_POINT: | 85 | case NL80211_IFTYPE_MESH_POINT: |
86 | ra = skb->data; | 86 | qos = true; |
87 | break; | 87 | break; |
88 | #endif | 88 | #endif |
89 | case NL80211_IFTYPE_STATION: | 89 | case NL80211_IFTYPE_STATION: |