mac80211: unconditionally set IEEE80211_TX_CTL_SEND_AFTER_DTIM
When mac80211 is asked to buffer multicast frames in AP mode, it will not set the flag indicating that the frames should be sent after the DTIM beacon for those frames buffered in software. Fix this little inconsistency by always setting that flag in the buffering code path. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
c27f2fded5
commit
62b517cb3e
|
@ -317,12 +317,11 @@ ieee80211_tx_h_multicast_ps_buf(struct ieee80211_tx_data *tx)
|
|||
if (!atomic_read(&tx->sdata->bss->num_sta_ps))
|
||||
return TX_CONTINUE;
|
||||
|
||||
/* buffered in hardware */
|
||||
if (!(tx->local->hw.flags & IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING)) {
|
||||
info->flags |= IEEE80211_TX_CTL_SEND_AFTER_DTIM;
|
||||
info->flags |= IEEE80211_TX_CTL_SEND_AFTER_DTIM;
|
||||
|
||||
/* device releases frame after DTIM beacon */
|
||||
if (!(tx->local->hw.flags & IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING))
|
||||
return TX_CONTINUE;
|
||||
}
|
||||
|
||||
/* buffered in mac80211 */
|
||||
if (tx->local->total_ps_buffered >= TOTAL_MAX_TX_BUFFER)
|
||||
|
|
Loading…
Reference in a new issue