Skip to content

wifi: mac80211: Power-save state and TIM handling fixes

Lee Jones linux-wireless lkml stable 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest2 patches 2 repliesIn review
  2. v11 patch 7 repliesSuperseded

Changes in v2 from the cover letter

- Make non-bufferable MMPDU PM-bit handling symmetric in both directions and expand the commit description.
- Add client-side wake nullfunc transmission in ieee80211_rx_mgmt_beacon() when the TIM bit is set while awake.

[0] https://lore.kernel.org/r/[email protected]

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2wifi: mac80211: ignore PM bit in non-bufferable MMPDUsnet/mac80211/rx.c+16 -60 replies
2/2wifi: mac80211: send wake nullfunc when TIM bit is set while awakenet/mac80211/mlme.c+2 -12 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH v2 0/2] wifi: mac80211: Power-save state and TIM handling fixes

Following up on the v1 discussion [0], this two-patch series:

1. Makes AP-side Power Management (PM) bit handling in ieee80211_rx_h_sta_process() symmetric across both wake-to-doze and doze-to-wake transitions, ignoring the reserved PM bit in non-bufferable management frames while still waking sleeping stations on Authentication and (Re)Association Request frames per commit 9fef65443388 ("mac80211: always update the PM state of a peer on MGMT / DATA frames").

2. Ensures an awake client station sends a wake nullfunc frame in ieee80211_rx_mgmt_beacon() when the Beacon TIM element indicates buffered unicast traffic for its AID, even when dynamic power-save is disabled (dynamic_ps_timeout == 0) and IEEE80211_CONF_PS is not set.

v1 => v2:
- Make non-bufferable MMPDU PM-bit handling symmetric in both directions and expand the commit description.
- Add client-side wake nullfunc transmission in ieee80211_rx_mgmt_beacon() when the TIM bit is set while awake.

[0] https://lore.kernel.org/r/[email protected]

Cc Emmanuel Grumbach <[email protected]>
Cc Jiri Benc <[email protected]>
Cc Johannes Berg <[email protected]>
Cc "John W. Linville" <[email protected]>
Cc Jouni Malinen <[email protected]>
Cc Luca Coelho <[email protected]>
Cc Michael Wu <[email protected]>
Cc Rajkumar Manoharan <[email protected]>

Lee Jones (2):
wifi: mac80211: ignore PM bit in non-bufferable MMPDUs
wifi: mac80211: send wake nullfunc when TIM bit is set while awake

 net/mac80211/mlme.c |  3 ++-
 net/mac80211/rx.c   | 22 ++++++++++++++++------
 2 files changed, 18 insertions(+), 7 deletions(-)
Signature · 1 line
2.56.0.313.g2479322e68-goog