On 2/28/2025 5:44 AM, Johannes Berg wrote:
On Thu, 2025-02-13 at 14:50 -0800, Aloka Dixit wrote:
From: Rameshkumar Sundaram <rameshkumar.sundaram@xxxxxxxxxxxxxxxx>
For MBSSID, each vif (struct ieee80211_vif) stores another vif
pointer for the transmitting profile of MBSSID set. This won't
suffice for MLO as there may be multiple links, each of which can
be part of different MBSSID sets. Hence the information needs to
be stored per-link. Additionally, the transmitted profile itself
may be part of an MLD hence storing vif will not suffice either.
Fix MLO by storing an instance of struct ieee80211_bss_conf
for each link.
Modify following operations to reflect the above structure updates:
- channel switch completion
- BSS color change completion
- Removing nontransmitted links in ieee80211_stop_mbssid()
- drivers retrieving the transmitted link for beacon templates.
Signed-off-by: Rameshkumar Sundaram <rameshkumar.sundaram@xxxxxxxxxxxxxxxx>
Co-developed-by: Muna Sinada <muna.sinada@xxxxxxxxxxxxxxxx>
Signed-off-by: Muna Sinada <muna.sinada@xxxxxxxxxxxxxxxx>
Co-developed-by: Aloka Dixit <aloka.dixit@xxxxxxxxxxxxxxxx>
Signed-off-by: Aloka Dixit <aloka.dixit@xxxxxxxxxxxxxxxx>
---
drivers/net/wireless/ath/ath11k/mac.c | 20 +++--
drivers/net/wireless/ath/ath12k/mac.c | 33 ++++++---
This probably shouldn't come with so many driver changes in the first
place, but in any case the changes don't apply on my tree.
johannes
I will refactor some of the driver changes in a separate patch in next
version.
This series isn't applying cleanly because it depends on another
refactoring series I had mentioned in the cover letter:
https://patchwork.kernel.org/project/linux-wireless/list/?series=932457&archive=both&state=*
I know it is a big no-no for mac80211 changes to depend on the driver
but sent both for the sake of completeness. It also explains why the
driver refactoring was required in the first place, because without that
series this current patch was even uglier trying to access tx conf at
2-3 places, RCU accesses everywhere.
Anyway, the pre-req is now in ath.git, let's revisit this one once it is
merged in wireless-next.
Aloka