On 10/29/18 1:11 PM, Johannes Berg wrote: > Hi, > > Sorry for the late reply. No worries! Thanks for taking the time to review the driver. > > On Fri, 2018-10-19 at 21:47 +0000, Adham.Abozaeid@xxxxxxxxxxxxx wrote: >> Johannes, shadow buffer has 2 more usage that I missed in my first email: >> 1- It keeps a copy of scan results to be able to auto-select from if >> the cfg80211 didn't supply a specific bssid in cfg's connect request >> (struct cfg80211_connect_params). >> In this case the driver will select a network that matches the ssid, >> while having the highest rssi. > You should be able to find this from cfg80211's BSS list as well. > > If we lack some API in this area, which is possible, then we can add it. Frankly, I wasn't aware that the cfg80211's BSS list is accessible from the driver! I'll do some research on that and let you know if these APIs didn't serve our purpose completely. >> 2- It keeps network parameters that the device will need to connect >> to a network, since the device doesn't keep the scan results >> internally. >> These parameters are stored in struct join_bss_param, and passed to >> the device when a connect request is received. >> Some of these parameters can be extracted from cfg's >> cfg80211_connect_params (like cap_info.. etc), but others (like bssid, >> beacon period.. etc) are still required. > Again though, you should be able to extract these from struct > cfg80211_bss, I'd argue? > > johannes >