diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/agg-rx.c | 3 | ||||
-rw-r--r-- | net/mac80211/main.c | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c index f138b195d657..002db5e86eb6 100644 --- a/net/mac80211/agg-rx.c +++ b/net/mac80211/agg-rx.c | |||
@@ -239,6 +239,9 @@ void ieee80211_process_addba_request(struct ieee80211_local *local, | |||
239 | buf_size = buf_size << sband->ht_cap.ampdu_factor; | 239 | buf_size = buf_size << sband->ht_cap.ampdu_factor; |
240 | } | 240 | } |
241 | 241 | ||
242 | /* make sure the size doesn't exceed the maximum supported by the hw */ | ||
243 | if (buf_size > local->hw.max_rx_aggregation_subframes) | ||
244 | buf_size = local->hw.max_rx_aggregation_subframes; | ||
242 | 245 | ||
243 | /* examine state machine */ | 246 | /* examine state machine */ |
244 | mutex_lock(&sta->ampdu_mlme.mtx); | 247 | mutex_lock(&sta->ampdu_mlme.mtx); |
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index 485d36bc9a46..1c507c6972e6 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -552,6 +552,7 @@ struct ieee80211_hw *ieee80211_alloc_hw(size_t priv_data_len, | |||
552 | local->hw.queues = 1; | 552 | local->hw.queues = 1; |
553 | local->hw.max_rates = 1; | 553 | local->hw.max_rates = 1; |
554 | local->hw.max_report_rates = 0; | 554 | local->hw.max_report_rates = 0; |
555 | local->hw.max_rx_aggregation_subframes = IEEE80211_MAX_AMPDU_BUF; | ||
555 | local->hw.conf.long_frame_max_tx_count = wiphy->retry_long; | 556 | local->hw.conf.long_frame_max_tx_count = wiphy->retry_long; |
556 | local->hw.conf.short_frame_max_tx_count = wiphy->retry_short; | 557 | local->hw.conf.short_frame_max_tx_count = wiphy->retry_short; |
557 | local->user_power_level = -1; | 558 | local->user_power_level = -1; |