diff options
Diffstat (limited to 'net/mac80211/tx.c')
-rw-r--r-- | net/mac80211/tx.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c index e05667cd5e76..1be0ca2b5936 100644 --- a/net/mac80211/tx.c +++ b/net/mac80211/tx.c | |||
@@ -635,6 +635,9 @@ ieee80211_tx_h_rate_ctrl(struct ieee80211_tx_data *tx) | |||
635 | txrc.max_rate_idx = -1; | 635 | txrc.max_rate_idx = -1; |
636 | else | 636 | else |
637 | txrc.max_rate_idx = fls(txrc.rate_idx_mask) - 1; | 637 | txrc.max_rate_idx = fls(txrc.rate_idx_mask) - 1; |
638 | memcpy(txrc.rate_idx_mcs_mask, | ||
639 | tx->sdata->rc_rateidx_mcs_mask[tx->channel->band], | ||
640 | sizeof(txrc.rate_idx_mcs_mask)); | ||
638 | txrc.bss = (tx->sdata->vif.type == NL80211_IFTYPE_AP || | 641 | txrc.bss = (tx->sdata->vif.type == NL80211_IFTYPE_AP || |
639 | tx->sdata->vif.type == NL80211_IFTYPE_MESH_POINT || | 642 | tx->sdata->vif.type == NL80211_IFTYPE_MESH_POINT || |
640 | tx->sdata->vif.type == NL80211_IFTYPE_ADHOC); | 643 | tx->sdata->vif.type == NL80211_IFTYPE_ADHOC); |
@@ -2431,6 +2434,8 @@ struct sk_buff *ieee80211_beacon_get_tim(struct ieee80211_hw *hw, | |||
2431 | txrc.max_rate_idx = -1; | 2434 | txrc.max_rate_idx = -1; |
2432 | else | 2435 | else |
2433 | txrc.max_rate_idx = fls(txrc.rate_idx_mask) - 1; | 2436 | txrc.max_rate_idx = fls(txrc.rate_idx_mask) - 1; |
2437 | memcpy(txrc.rate_idx_mcs_mask, sdata->rc_rateidx_mcs_mask[band], | ||
2438 | sizeof(txrc.rate_idx_mcs_mask)); | ||
2434 | txrc.bss = true; | 2439 | txrc.bss = true; |
2435 | rate_control_get_rate(sdata, NULL, &txrc); | 2440 | rate_control_get_rate(sdata, NULL, &txrc); |
2436 | 2441 | ||