mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 00:34:20 +08:00
mac80211: uAPSD - fix IEEE80211_FCTL_MOREDATA bit setting
Set IEEE80211_FCTL_MOREDATA bit also in case we have buffered frames (more than one) only for one AC. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@tieto.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
db652e4b36
commit
24b9c373ab
@ -1354,12 +1354,12 @@ ieee80211_sta_ps_deliver_response(struct sta_info *sta,
|
||||
* Use MoreData flag to indicate whether there are
|
||||
* more buffered frames for this STA
|
||||
*/
|
||||
if (!more_data)
|
||||
hdr->frame_control &=
|
||||
cpu_to_le16(~IEEE80211_FCTL_MOREDATA);
|
||||
else
|
||||
if (more_data || !skb_queue_empty(&frames))
|
||||
hdr->frame_control |=
|
||||
cpu_to_le16(IEEE80211_FCTL_MOREDATA);
|
||||
else
|
||||
hdr->frame_control &=
|
||||
cpu_to_le16(~IEEE80211_FCTL_MOREDATA);
|
||||
|
||||
if (ieee80211_is_data_qos(hdr->frame_control) ||
|
||||
ieee80211_is_qos_nullfunc(hdr->frame_control))
|
||||
|
Loading…
Reference in New Issue
Block a user