diff options
Diffstat (limited to 'net/mac80211/rx.c')
-rw-r--r-- | net/mac80211/rx.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index af606f715016..0e8a371496b3 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -598,7 +598,7 @@ static int ap_sta_ps_end(struct net_device *dev, struct sta_info *sta) | |||
598 | sdata = IEEE80211_DEV_TO_SUB_IF(sta->dev); | 598 | sdata = IEEE80211_DEV_TO_SUB_IF(sta->dev); |
599 | if (sdata->bss) | 599 | if (sdata->bss) |
600 | atomic_dec(&sdata->bss->num_sta_ps); | 600 | atomic_dec(&sdata->bss->num_sta_ps); |
601 | sta->flags &= ~(WLAN_STA_PS | WLAN_STA_TIM | WLAN_STA_PSPOLL); | 601 | sta->flags &= ~(WLAN_STA_PS | WLAN_STA_PSPOLL); |
602 | if (!skb_queue_empty(&sta->ps_tx_buf)) { | 602 | if (!skb_queue_empty(&sta->ps_tx_buf)) { |
603 | if (sdata->bss) | 603 | if (sdata->bss) |
604 | bss_tim_clear(local, sdata->bss, sta->aid); | 604 | bss_tim_clear(local, sdata->bss, sta->aid); |
@@ -938,10 +938,9 @@ ieee80211_rx_h_ps_poll(struct ieee80211_txrx_data *rx) | |||
938 | 938 | ||
939 | /* Use MoreData flag to indicate whether there are more | 939 | /* Use MoreData flag to indicate whether there are more |
940 | * buffered frames for this STA */ | 940 | * buffered frames for this STA */ |
941 | if (no_pending_pkts) { | 941 | if (no_pending_pkts) |
942 | hdr->frame_control &= cpu_to_le16(~IEEE80211_FCTL_MOREDATA); | 942 | hdr->frame_control &= cpu_to_le16(~IEEE80211_FCTL_MOREDATA); |
943 | rx->sta->flags &= ~WLAN_STA_TIM; | 943 | else |
944 | } else | ||
945 | hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_MOREDATA); | 944 | hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_MOREDATA); |
946 | 945 | ||
947 | dev_queue_xmit(skb); | 946 | dev_queue_xmit(skb); |