diff options
-rw-r--r-- | drivers/net/wireless/ath/ath9k/rc.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/wireless/ath/ath9k/rc.c b/drivers/net/wireless/ath/ath9k/rc.c index 8f3cf10f65c4..e526dbce57d1 100644 --- a/drivers/net/wireless/ath/ath9k/rc.c +++ b/drivers/net/wireless/ath/ath9k/rc.c | |||
@@ -1568,12 +1568,13 @@ static void ath_get_rate(void *priv, struct ieee80211_sta *sta, void *priv_sta, | |||
1568 | struct ath_rate_priv *ath_rc_priv = priv_sta; | 1568 | struct ath_rate_priv *ath_rc_priv = priv_sta; |
1569 | __le16 fc = hdr->frame_control; | 1569 | __le16 fc = hdr->frame_control; |
1570 | 1570 | ||
1571 | /* lowest rate for management and multicast/broadcast frames */ | 1571 | /* lowest rate for management and NO_ACK frames */ |
1572 | if (!ieee80211_is_data(fc) || is_multicast_ether_addr(hdr->addr1) || | 1572 | if (!ieee80211_is_data(fc) || |
1573 | !sta) { | 1573 | tx_info->flags & IEEE80211_TX_CTL_NO_ACK || !sta) { |
1574 | tx_info->control.rates[0].idx = rate_lowest_index(sband, sta); | 1574 | tx_info->control.rates[0].idx = rate_lowest_index(sband, sta); |
1575 | tx_info->control.rates[0].count = | 1575 | tx_info->control.rates[0].count = |
1576 | is_multicast_ether_addr(hdr->addr1) ? 1 : ATH_MGT_TXMAXTRY; | 1576 | (tx_info->flags & IEEE80211_TX_CTL_NO_ACK) ? |
1577 | 1 : ATH_MGT_TXMAXTRY; | ||
1577 | return; | 1578 | return; |
1578 | } | 1579 | } |
1579 | 1580 | ||