On Fri, 2021-08-27 at 15:12 +0800, Wen Gong wrote: > On 2021-08-27 14:55, Johannes Berg wrote: > > On Fri, 2021-08-27 at 14:53 +0800, Wen Gong wrote: > > > > > > > > Well, there's an existing place in this function that uses > > > > cfg80211_find_ext_ie(), and various uses of ieee80211_bss_get_ie(), so > > > > it feels like if we're going to do the full parsing, we should switch > > > > all the existing "look up an element" to also use the parsed data > > > > instead. > > > > > ok. > > > so it ha 2 way to change, right? > > > 1. > > > change ieee802_11_parse_elems() to ieee80211_bss_get_ie() > > > > No why? > > > > I think we should make a first patch (that doesn't add TPE yet) that > > changes the function to ieee80211_parse_elems() and removes all the > > ieee80211_bss_get_ie() / cfg80211_find_ext_ie() calls in favour of just > > parsing once, and then looking at the elements there. > > > > Then your TPE patch becomes trivial since the elems are already there? > this patch still needed, because the lower driver need the info. > and this patch is save the info to "struct ieee80211_bss_conf *bss_conf" > and > pass it to lower driver. Of course, but you don't have to deal with parsing etc. in that patch then. johannes