Skip to content

Commit

Permalink
mac80211: unconditionally set IEEE80211_TX_CTL_SEND_AFTER_DTIM
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Johannes Berg authored and John W. Linville committed Oct 30, 2009
1 parent c27f2fd commit 62b517c
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions net/mac80211/tx.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down

0 comments on commit 62b517c

Please sign in to comment.