Message ID | 20170306220113.4666-1-johannes@sipsolutions.net (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Johannes Berg |
Headers | show |
On 6-3-2017 23:01, Johannes Berg wrote: > From: Johannes Berg <johannes.berg@intel.com> > > There isn't really much harm in not ignoring, since it doesn't > represent a valid rate, but since we already ignore the HT one > also ignore VHT. Also simplify the code a bit. > > Signed-off-by: Johannes Berg <johannes.berg@intel.com> > --- > net/mac80211/mlme.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c > index 1568a74757bc..6340127a71c6 100644 > --- a/net/mac80211/mlme.c > +++ b/net/mac80211/mlme.c > @@ -2823,15 +2823,15 @@ static void ieee80211_get_rates(struct ieee80211_supported_band *sband, > *have_higher_than_11mbit = true; > > /* > - * BSS_MEMBERSHIP_SELECTOR_HT_PHY is defined in 802.11n-2009 > - * 7.3.2.2 as a magic value instead of a rate. Hence, skip it. > + * Skip HT and VHT BSS membership selectors since they're not > + * rates. > * > * Note: Even through the membership selector and the basic typo: through -> though. Regards, Arend > * rate flag share the same bit, they are not exactly > * the same. > */ > - if (!!(supp_rates[i] & 0x80) && > - (supp_rates[i] & 0x7f) == BSS_MEMBERSHIP_SELECTOR_HT_PHY) > + if (supp_rates[i] == (0x80 | BSS_MEMBERSHIP_SELECTOR_HT_PHY) || > + supp_rates[i] == (0x80 | BSS_MEMBERSHIP_SELECTOR_VHT_PHY)) > continue; > > for (j = 0; j < sband->n_bitrates; j++) { >
> > > > /* > > - * BSS_MEMBERSHIP_SELECTOR_HT_PHY is defined in > > 802.11n-2009 > > - * 7.3.2.2 as a magic value instead of a rate. > > Hence, skip it. > > + * Skip HT and VHT BSS membership selectors since > > they're not > > + * rates. > > * > > * Note: Even through the membership selector and > > the basic > > typo: through -> though. That's just existing context ;-) Will fix here. johannes
On 7-3-2017 9:42, Johannes Berg wrote: > >>> >>> /* >>> - * BSS_MEMBERSHIP_SELECTOR_HT_PHY is defined in >>> 802.11n-2009 >>> - * 7.3.2.2 as a magic value instead of a rate. >>> Hence, skip it. >>> + * Skip HT and VHT BSS membership selectors since >>> they're not >>> + * rates. >>> * >>> * Note: Even through the membership selector and >>> the basic >> >> typo: through -> though. > > That's just existing context ;-) > > Will fix here. I noticed and indeed could create a patch for it, but this is easier (for me :-p ). Gr. AvS
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 1568a74757bc..6340127a71c6 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -2823,15 +2823,15 @@ static void ieee80211_get_rates(struct ieee80211_supported_band *sband, *have_higher_than_11mbit = true; /* - * BSS_MEMBERSHIP_SELECTOR_HT_PHY is defined in 802.11n-2009 - * 7.3.2.2 as a magic value instead of a rate. Hence, skip it. + * Skip HT and VHT BSS membership selectors since they're not + * rates. * * Note: Even through the membership selector and the basic * rate flag share the same bit, they are not exactly * the same. */ - if (!!(supp_rates[i] & 0x80) && - (supp_rates[i] & 0x7f) == BSS_MEMBERSHIP_SELECTOR_HT_PHY) + if (supp_rates[i] == (0x80 | BSS_MEMBERSHIP_SELECTOR_HT_PHY) || + supp_rates[i] == (0x80 | BSS_MEMBERSHIP_SELECTOR_VHT_PHY)) continue; for (j = 0; j < sband->n_bitrates; j++) {