netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Maciej S. Szmigiero" <mail@maciej.szmigiero.name>
To: Ping-Ke Shih <pkshih@realtek.com>, Kalle Valo <kvalo@codeaurora.org>
Cc: Johannes Berg <johannes@sipsolutions.net>,
	linux-wireless@vger.kernel.org, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: rtlwifi/rtl8192cu AP mode broken with PS STA
Date: Mon, 29 Mar 2021 00:54:28 +0200	[thread overview]
Message-ID: <e2924d81-0e30-2dd0-292b-428fea199484@maciej.szmigiero.name> (raw)

Hi,

It looks like rtlwifi/rtl8192cu AP mode is broken when a STA is using PS,
since the driver does not update its beacon to account for TIM changes,
so a station that is sleeping will never learn that it has packets
buffered at the AP.

Looking at the code, the rtl8192cu driver implements neither the set_tim()
callback, nor does it explicitly update beacon data periodically, so it
has no way to learn that it had changed.

This results in the AP mode being virtually unusable with STAs that do
PS and don't allow for it to be disabled (IoT devices, mobile phones,
etc.).

I think the easiest fix here would be to implement set_tim() for example
the way rt2x00 driver does: queue a work or schedule a tasklet to update
the beacon data on the device.

Thanks,
Maciej

             reply	other threads:[~2021-03-28 23:15 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-28 22:54 Maciej S. Szmigiero [this message]
2021-04-04 18:06 ` rtlwifi/rtl8192cu AP mode broken with PS STA Maciej S. Szmigiero
2021-04-06 10:00   ` Kalle Valo
2021-04-06 12:06     ` Maciej S. Szmigiero
2021-04-06 16:25       ` Larry Finger
2021-04-06 18:29         ` Maciej S. Szmigiero
2021-04-07  2:48         ` Pkshih
2021-04-07  4:21           ` Larry Finger
2021-04-07 20:53             ` Maciej S. Szmigiero
2021-04-08  4:42               ` Pkshih
2021-04-08 19:04                 ` Maciej S. Szmigiero
2021-04-17 18:07                   ` Maciej S. Szmigiero
2021-04-19  0:32                     ` Pkshih
2021-04-19  1:23                       ` Larry Finger
2021-04-19  7:04                         ` Pkshih
2021-04-19 19:25                           ` Maciej S. Szmigiero

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e2924d81-0e30-2dd0-292b-428fea199484@maciej.szmigiero.name \
    --to=mail@maciej.szmigiero.name \
    --cc=johannes@sipsolutions.net \
    --cc=kvalo@codeaurora.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pkshih@realtek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).