On 2019-11-08 22:37, Johannes Berg wrote:
On Fri, 2019-11-08 at 16:01 +0000, Sergey Matyukevich wrote:
> I think we still need NL80211_TID_CONFIG_ATTR_OVERRIDE in some way
> (maybe only as a flag attribute), since you could have
>
> * change all stations (some subset of TIDs) *including* already
> configured stations
> * or *excluding* already configured stations
Hmmm... Logic is straightforwad without this flag:
- settings are applied to bitmasked TIDs of a single peer if address
is specifed
- settings are applied to bitmasked TIDs of all the peers if no
address is specified
Sure, this is obvious, but what exactly does "all the peers" mean?
Say I do
set_tid_config(tids=0x1, peer=02:11:22:33:44:55, noack=yes)
set_tid_config(tids=0x1, peer=NULL, noack=no)
Does that reset peer 02:11:22:33:44:55, or not? This is not documented
right now, and one could argue both ways - the override for that
particular peer should stick, or should be removed. Which one is it?
Here, the second command won't reset the peer 02:11:22:33:44:55. Here we
are giving more
preference to the peer specific configuration. We have to reset the peer
02:11:22:33:44:55 using the set_tid_config(tids=0x1,
peer=02:11:22:33:44:55, DEFAULT). I will add these in the DOC section
and send it in next patchset.
It looks like you want to infer too much from a single flag. Why keep
this logic in
cfg80211/mac80211/driver ?
I just want to disambiguate what "all the peers" means. Not sure what
you mean by keeping the logic?
Thanks,
Tamizh.