[PATCH 1/3] hostapd: Fix VHT unsolicitated channel switching
ilan.peer at intel.com
Tue Mar 18 11:58:19 EDT 2014
> >> -----Original Message-----
> >> From: hostap-bounces at lists.shmoo.com [mailto:hostap-
> >> bounces at lists.shmoo.com] On Behalf Of Michal Kazior
> >> Sent: Tuesday, March 18, 2014 14:38
> >> To: j at w1.fi
> >> Cc: hostap at lists.shmoo.com
> >> Subject: [PATCH 1/3] hostapd: Fix VHT unsolicitated channel switching
> >> The ieee80211ac config wasn't updated upon channel switch notification.
> >> This led to inconsistent beacons in some cases.
> >> It's not possible to deduce VHT status for an unsolicitated channel
> >> switch now in all cases.
> > [...]
> >> + /* FIXME: It's impossible to tell how exactly an unsolicitated channel
> >> + * switch downgraded channel definition in all cases. */
> >> + if (width == CHAN_WIDTH_80 ||
> >> + width == CHAN_WIDTH_80P80 ||
> >> + width == CHAN_WIDTH_160)
> >> + hapd->iconf->ieee80211ac = 1;
> >> + if (!ht)
> >> + hapd->iconf->ieee80211ac = 0;
> >> +
> > As far as I understand the ieee80211ac variable states weather 80211ac is
> enabled or not, and thus I do not think that it should be changed based on
> the actual operating mode/channel width.
> You could apply this for ieee80211n, yet, it is possible for channel switch to
> change it.
I would consider this a wrong behavior. For example if 80211ac was enabled at first, and disabled due to this change, then a subsequent request to CS (for example due to DFS), would not allow to switch to VHT.
> > Regardless, how is it possible that the CS ended with being on VHT if hostap
> did not ask to use VHT in the first place?
> Technically a driver can call cfg80211_ch_switch_notify() with any chandef.
> It's not a necessity for an actual CSA to be requested first.
But what's the use case? Is this for actual CS or only for bandwidth change? Might be my misunderstanding, but I did not expect a CS to be triggered without the knowledge of wpa_supplicant/hostapd as this might break things if wpa_supplicant/hostapd also try to trigger CS without the knowledge. In addition such change should also involve changing some of the IEs etc.
More information about the HostAP