Re: [PATCH wireless-next 4/4] wifi: brcmfmac: prevent disable controller in apmode stop
"Lin Ian (CSS ICW ENG WFS SW WFSW 1)" <[email protected]>
| Newsgroups | dev.linux.lists.brcm80211,org.kernel.vger.linux-wireless |
|---|---|
| Message-ID | <[email protected]> |
On 6/4/2025 6:25 PM, Arend van Spriel wrote: > Caution: This e-mail originated outside Infineon Technologies. Please > be cautious when sharing information or opening attachments especially > from unknown senders. Refer to our intranet > guide<https://intranet-content.infineon.com/explore/aboutinfineon/rules/informationsecurity/ug/SocialEngineering/Pages/SocialEngineeringElements_en.aspx> > to help you identify Phishing email. > > > > On 6/4/2025 11:16 AM, Ian Lin wrote: >> From: Ian Lin <[email protected]> >> >> Wpa_supplicant will firstly call scan before start apmode. >> In mbss case, controller will be disabled during stop apmode >> so next time it reports fail in starting apmpde. >> Fix by removing the disable operation. > > The function brcmf_cfg80211_stop_ap() is a bit tricky. The flag > ifp->vif->mbss is set to true only when there are multiple AP interface > and only for subsequent AP interface. For the first AP interface being > created the flag is false. > > Now looking at the function I suspect there is an assumption that each > AP interface will be stopped. So for a subsequent AP interfaces is will > do a BRCMF_C_DOWN and for the first interface it will do other stuff > below the if statement follwed by BRCMF_C_UP. > > Clearly you are solving another scenario here so could you elaborate on > that? > The patch is applied to solve problem in multiple AP scenario. But I found it may be better to include other patches together for the scenario. Let me collect the information and submit another new patch series. > Regards, > Arend > >> Signed-off-by: Ian Lin <[email protected]> >> --- >> drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 5 ----- >> 1 file changed, 5 deletions(-) >> >> diff --git >> a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c >> b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c >> index e23cd6fc0f56..b4078e74f135 100644 >> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c >> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c >> @@ -5392,11 +5392,6 @@ static int brcmf_cfg80211_stop_ap(struct wiphy >> *wiphy, struct net_device *ndev, >> profile->use_fwauth = >> BIT(BRCMF_PROFILE_FWAUTH_NONE); >> } >> >> - if (ifp->vif->mbss) { >> - err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_DOWN, 1); >> - return err; >> - } >> - >> /* First BSS doesn't get a full reset */ >> if (ifp->bsscfgidx == 0) >> brcmf_fil_iovar_int_set(ifp, "closednet", 0); > Regards, Ian