Ok more technical look ... It doesn't look like NUM_STA_INFO_STATS gets used at all, or am I missing it? > +static int ieee80211_get_et_sset_count(struct wiphy *wiphy, > + struct net_device *dev, > + int sset) > +{ > + switch (sset) { > + case ETH_SS_STATS: > + return STA_STATS_LEN; Are there different "s* sets" that could be used to return different types of stats, or how does this work? > + mutex_lock(&sdata->local->sta_mtx); Why not use RCU? The mutex doesn't really protect anything useful here except for the list iteration. > + list_for_each_entry(sta, &sdata->local->sta_list, list) { That's not right -- these stats are per netdev so you should only aggregate for the netdev, no? > + BUG_ON(i != STA_STATS_LEN); That I really don't like much. johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html