public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Berg <benjamin@sipsolutions.net>
To: Ramasamy Kaliappan <ramasamy.kaliappan@oss.qualcomm.com>,
	 linux-wireless@vger.kernel.org,
	Jouni Malinen <jouni.malinen@oss.qualcomm.com>
Cc: Rameshkumar Sundaram <rameshkumar.sundaram@oss.qualcomm.com>
Subject: Re: [RFC PATCH v2 0/8] Adding NO_STA flag and reworking RX link resolution
Date: Mon, 27 Apr 2026 13:13:49 +0200	[thread overview]
Message-ID: <640192308052e60589455505d31732cf2e00b1aa.camel@sipsolutions.net> (raw)
In-Reply-To: <01295135-6bcf-4567-869b-75597649d11c@oss.qualcomm.com>

Hi,

On Mon, 2026-04-27 at 15:32 +0530, Ramasamy Kaliappan wrote:
> [SNIP]
> The hostapd changes were made and validated against the relevant test
> cases. During testing, we observed some complexities in specific 
> scenarios particularly when a Non‑AP STA first associates as L1 (M1)
> and then reappears as L1 (M2) during the authentication/association phase.
> In this case, on the RX path, when an authentication frame for L1 (M2 in 
> the ML IE) is received, the driver finds the existing STA L1 (M1) and
> therefore does not add the NO_STA attribute.

Yes, the address will be translated in that case.

> As a result, the complexity of handling authentication and association 
> frames increases within the user‑space hostapd application. While 
> processing the authentication frame, hostapd parses the ML IE
> but fails to create a new STA entry for L1 (M2) in the driver, 
> especially in scenarios involving different MLD addresses.
> 
> To simplify this handling, we would like to explore an alternative 
> approach that avoids address translation for management frames 
> (authentication, association, and reassociation),
> regardless of whether the STA already exists.

I am not sure why that would be easier. Also, my hunch is that it makes
sense to translate the address in particular with encrypted association
frames.

hostapd receives the link ID that the frame was received on. So when
the address was translated (no NO_STA flag), hostapd can use the MLD
Address + Link ID to do a lookup in its own station database and use
that to look up the SA address that was used to TX the frame. So you
should be able to emulate the suggested mac80211 behaviour inside
hostapd.

Note that when a STA that first used L1 (M1) reappears using L1 (M2),
then hostapd cannot create a STA entry in mac80211. So the existing M1
address should be used to TX the SA Query to the old station, while an
explicit TX to L1 with the NO_STA flag needs to be done for the
comeback frame.

I believe that hostapd will need a bit of refactoring, including
improved tracking to know whether a STA has been inserted into the
driver and whether to TX the AUTH frames using the link address and
NO_STA flag or using the MLD Address.

> However, this approach may introduce backward compatibility concerns 
> when either the driver or hostapd is not updated.
> To address this, we propose introducing a capability indication 
> mechanism between the driver and user space (driver ↔ hostapd).
> Based on the advertised capabilities, mac80211 can then skip 
> management‑frame address translation accordingly.
> 
> Benjamin and Jouni, Could you please help share your thoughts on this?

Right, I would like to avoid introducing a new capability mechanism
unless it is a real improvement for the hostapd implementation. It
could well be that I am missing something, but right now I do not see
that this is the case.

If you are still unsure, then I guess we should probably go back to the
list of scenarios we had and check for each one how it can be detected
and how it should be handled.

Benjamin

  reply	other threads:[~2026-04-27 11:13 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-23 12:38 [RFC PATCH v2 0/8] Adding NO_STA flag and reworking RX link resolution Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 1/8] wifi: iwlwifi: use link_sta internally to the driver Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 2/8] wifi: mac80211: change public RX API to use link stations Benjamin Berg
2026-02-24 17:41   ` Ramasamy Kaliappan
2026-02-25  9:19     ` Berg, Benjamin
2026-02-24 18:22   ` Jeff Johnson
2026-02-23 12:38 ` [RFC PATCH v2 3/8] wifi: mac80211: refactor RX link_id and station handling Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 4/8] wifi: mac80211: rework RX packet handling Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 5/8] wifi: cfg80211: add attribute for TX/RX denoting there is no station Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 6/8] wifi: mac80211: report to cfg80211 when no STA is known for a frame Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 7/8] wifi: mac80211: pass station to ieee80211_tx_skb_tid Benjamin Berg
2026-02-24 17:45   ` Ramasamy Kaliappan
2026-02-25  9:28     ` Benjamin Berg
2026-02-23 12:38 ` [RFC PATCH v2 8/8] wifi: mac80211: pass error station if non-STA transmit was requested Benjamin Berg
2026-02-24 17:47   ` Ramasamy Kaliappan
2026-02-25  9:15     ` Benjamin Berg
2026-02-24 17:35 ` [RFC PATCH v2 0/8] Adding NO_STA flag and reworking RX link resolution Ramasamy Kaliappan
2026-04-27 10:02 ` Ramasamy Kaliappan
2026-04-27 11:13   ` Benjamin Berg [this message]
2026-04-27 14:24   ` Johannes Berg

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=640192308052e60589455505d31732cf2e00b1aa.camel@sipsolutions.net \
    --to=benjamin@sipsolutions.net \
    --cc=jouni.malinen@oss.qualcomm.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=ramasamy.kaliappan@oss.qualcomm.com \
    --cc=rameshkumar.sundaram@oss.qualcomm.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