diff options
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 9a703f00b5fb..32c8ee43f720 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -1194,10 +1194,12 @@ ieee80211_rx_h_uapsd_and_pspoll(struct ieee80211_rx_data *rx) | |||
1194 | return RX_CONTINUE; | 1194 | return RX_CONTINUE; |
1195 | 1195 | ||
1196 | if (unlikely(ieee80211_is_pspoll(hdr->frame_control))) { | 1196 | if (unlikely(ieee80211_is_pspoll(hdr->frame_control))) { |
1197 | if (!test_sta_flags(rx->sta, WLAN_STA_PS_DRIVER)) | 1197 | if (!test_sta_flags(rx->sta, WLAN_STA_SP)) { |
1198 | ieee80211_sta_ps_deliver_poll_response(rx->sta); | 1198 | if (!test_sta_flags(rx->sta, WLAN_STA_PS_DRIVER)) |
1199 | else | 1199 | ieee80211_sta_ps_deliver_poll_response(rx->sta); |
1200 | set_sta_flags(rx->sta, WLAN_STA_PSPOLL); | 1200 | else |
1201 | set_sta_flags(rx->sta, WLAN_STA_PSPOLL); | ||
1202 | } | ||
1201 | 1203 | ||
1202 | /* Free PS Poll skb here instead of returning RX_DROP that would | 1204 | /* Free PS Poll skb here instead of returning RX_DROP that would |
1203 | * count as an dropped frame. */ | 1205 | * count as an dropped frame. */ |