diff options
Diffstat (limited to 'net/mac80211/wme.c')
| -rw-r--r-- | net/mac80211/wme.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/net/mac80211/wme.c b/net/mac80211/wme.c index c3d643a6536c..cea06e9f26f4 100644 --- a/net/mac80211/wme.c +++ b/net/mac80211/wme.c | |||
| @@ -52,11 +52,11 @@ static int wme_downgrade_ac(struct sk_buff *skb) | |||
| 52 | } | 52 | } |
| 53 | } | 53 | } |
| 54 | 54 | ||
| 55 | static u16 ieee80211_downgrade_queue(struct ieee80211_local *local, | 55 | static u16 ieee80211_downgrade_queue(struct ieee80211_sub_if_data *sdata, |
| 56 | struct sk_buff *skb) | 56 | struct sk_buff *skb) |
| 57 | { | 57 | { |
| 58 | /* in case we are a client verify acm is not set for this ac */ | 58 | /* in case we are a client verify acm is not set for this ac */ |
| 59 | while (unlikely(local->wmm_acm & BIT(skb->priority))) { | 59 | while (unlikely(sdata->wmm_acm & BIT(skb->priority))) { |
| 60 | if (wme_downgrade_ac(skb)) { | 60 | if (wme_downgrade_ac(skb)) { |
| 61 | /* | 61 | /* |
| 62 | * This should not really happen. The AP has marked all | 62 | * This should not really happen. The AP has marked all |
| @@ -73,10 +73,11 @@ static u16 ieee80211_downgrade_queue(struct ieee80211_local *local, | |||
| 73 | } | 73 | } |
| 74 | 74 | ||
| 75 | /* Indicate which queue to use for this fully formed 802.11 frame */ | 75 | /* Indicate which queue to use for this fully formed 802.11 frame */ |
| 76 | u16 ieee80211_select_queue_80211(struct ieee80211_local *local, | 76 | u16 ieee80211_select_queue_80211(struct ieee80211_sub_if_data *sdata, |
| 77 | struct sk_buff *skb, | 77 | struct sk_buff *skb, |
| 78 | struct ieee80211_hdr *hdr) | 78 | struct ieee80211_hdr *hdr) |
| 79 | { | 79 | { |
| 80 | struct ieee80211_local *local = sdata->local; | ||
| 80 | u8 *p; | 81 | u8 *p; |
| 81 | 82 | ||
| 82 | if (local->hw.queues < IEEE80211_NUM_ACS) | 83 | if (local->hw.queues < IEEE80211_NUM_ACS) |
| @@ -94,7 +95,7 @@ u16 ieee80211_select_queue_80211(struct ieee80211_local *local, | |||
| 94 | p = ieee80211_get_qos_ctl(hdr); | 95 | p = ieee80211_get_qos_ctl(hdr); |
| 95 | skb->priority = *p & IEEE80211_QOS_CTL_TAG1D_MASK; | 96 | skb->priority = *p & IEEE80211_QOS_CTL_TAG1D_MASK; |
| 96 | 97 | ||
| 97 | return ieee80211_downgrade_queue(local, skb); | 98 | return ieee80211_downgrade_queue(sdata, skb); |
| 98 | } | 99 | } |
| 99 | 100 | ||
| 100 | /* Indicate which queue to use. */ | 101 | /* Indicate which queue to use. */ |
| @@ -156,7 +157,7 @@ u16 ieee80211_select_queue(struct ieee80211_sub_if_data *sdata, | |||
| 156 | * data frame has */ | 157 | * data frame has */ |
| 157 | skb->priority = cfg80211_classify8021d(skb); | 158 | skb->priority = cfg80211_classify8021d(skb); |
| 158 | 159 | ||
| 159 | return ieee80211_downgrade_queue(local, skb); | 160 | return ieee80211_downgrade_queue(sdata, skb); |
| 160 | } | 161 | } |
| 161 | 162 | ||
| 162 | void ieee80211_set_qos_hdr(struct ieee80211_sub_if_data *sdata, | 163 | void ieee80211_set_qos_hdr(struct ieee80211_sub_if_data *sdata, |
