On 1/30/24 15:51, Johannes Berg wrote:
On Tue, 2024-01-30 at 10:02 +0530, Aditya Kumar Singh wrote:
Currently ieee80211_csa_finish() function finalizes CSA by scheduling a
finalizing worker using the deflink. With MLO, there is a need to do it
on a given link basis.
Add changes to pass link ID of the link on which CSA needs to be finalized.
Why not just directly say
"Pass the link ID of ..."
To me at least it seems obvious that a commit makes changes :)
Anyway .. I'll stop nit-picking too much about your commit messages I
guess, and worst case just rephrase them later.
(I'm kind of working on this area of CSA too right now, though with a
focus on client.)
+ /* TODO: MBSSID with MLO changes */
if (vif->mbssid_tx_vif == vif) {
Could you say (even here) more precisely what'd be needed?
We are checking right now "vif->mbssid_tx_vif == vif" for mbssid check.
However, with MLO, one single vif can have multiple links and among
those 1 or more could be mbssid enabled. Hence, changes are needed to
store this mbssid related info on link basis instead of vif directly.
/* Trigger ieee80211_csa_finish() on the non-transmitting
* interfaces when channel switch is received on
Then later where we are iterating over all interfaces, there also we
need to handle it on link basis. Including all these would make this
patch a lot bigger. Hence planned to address the whole MBSSID+MLO
changes in a separate series overall.
@@ -3568,7 +3579,7 @@ void ieee80211_csa_finish(struct ieee80211_vif *vif)
&iter->deflink.csa_finalize_work);
that still seems to use deflink there, for sure.
Yeah since MBSSID currently would work without MLO, it is safe to use
deflink of the non tx vaps while we are iterating.