Search Linux Wireless

Re: [PATCH wireless-next v8 07/10] wifi: cfg80211: reset sinfo->filled for MLO station statistics

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

 



On 5/15/2025 5:06 PM, Johannes Berg wrote:
On Thu, 2025-05-15 at 11:19 +0530, Sarika Sharma wrote:
Currently, sinfo->filled is for set in sta_set_sinfo() after filling
the corresponding fields in station_info structure for station statistics.

For non-ML stations, the fields are correctly filled from sta->deflink
and corresponding sinfo->filled bit are set, but for MLO any one of
link's data is filled and corresponding sinfo->filled bit is set.

For MLO before embed NL message, fields of sinfo structure like
bytes, packets, signal are updated with accumulated, best, least of all
links data. But some of fields like rssi, pertid don't make much sense
at MLO level.

Hence, to prevent misinterpretation, reset sinfo->filled for fields

                                        ^^^^^ clear?

sure.


which don't make much sense at MLO level. This will prevent filling the
unnecessary values in NL message.

Not sure I'd say "unnecessary" but perhaps misleading? I'm also not sure
this shouldn't be WARN_ON, we're throwing away data that was provided.
In mac80211 it even allocates tidstats memory for nothing, in this case,
that's super weird?


Yes, that why I initially came up with the other design.
Some of fields, that are getting filled in mac80211 for sinfo are from sta->deflink, i.e one of the links for MLO.

Now either we have to split the sta_set_sinfo(), such a way that some of fields applicable at station level is only filled by mac80211 in station_info structure for both non-ML and MLO and others which are not applicable or filled from sta->deflink, need not be filled during MLO case or if filled it need to be free.

johannes





[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