Search Linux Wireless

Re: [PATCH v4] mac80211: disable BSS color collision detection in case of no free colors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2022-04-11 at 15:31 +0200, Johannes Berg wrote:
> On Fri, 2022-03-25 at 13:42 +0530, Rameshkumar Sundaram wrote:
> 
> 
> > +	he_bss_color->color =
> > +		nla_get_u8(tb[NL80211_HE_BSS_COLOR_ATTR_COLOR]);
> > +	he_bss_color->enabled =
> > +		!nla_get_flag(tb[NL80211_HE_BSS_COLOR_ATTR_DISABLED]);
> > +	he_bss_color->partial =
> > +		nla_get_flag(tb[NL80211_HE_BSS_COLOR_ATTR_PARTIAL]);
> > +
> > +	return 0;
> > +}
> > +
> >  static int nl80211_parse_beacon(struct cfg80211_registered_device *rdev,
> >  				struct nlattr *attrs[],
> >  				struct cfg80211_beacon_data *bcn)
> > @@ -5204,6 +5228,12 @@ static int nl80211_parse_beacon(struct cfg80211_registered_device *rdev,
> >  		bcn->ftm_responder = -1;
> >  	}
> >  
> > +	if (attrs[NL80211_ATTR_HE_BSS_COLOR]) {
> > +		err = nl80211_parse_he_bss_color(attrs[NL80211_ATTR_HE_BSS_COLOR],
> > +						 &bcn->he_bss_color);
> > +		if (err)
> > +			return err;
> > +	}
> 
> Could use a newline after this.
> 
> But not sure I get it - doesn't that always disable BSS coloring now if
> you do a beacon update that didn't include the attribute? Did hostapd
> always include it in the past?
> 

Seems like we should track whether it was actually included, and only if
the attribute was included then mac80211 knows - ie. have something like

 struct cfg80211_beacon_data {
  ...
+	struct cfg80211_he_bss_color he_bss_color;
+	bool he_bss_color_valid;

or so?



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux