All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Balaji Pothunoori <bpothuno@codeaurora.org>
Cc: kbuild-all@01.org, johannes@sipsolutions.net,
	linux-wireless@vger.kernel.org,
	Balaji Pothunoori <bpothuno@codeaurora.org>
Subject: Re: [PATCH 1/2] cfg80211: last ack singal support in station dump
Date: Sun, 27 May 2018 17:48:17 +0800	[thread overview]
Message-ID: <201805271659.xmioz6RW%fengguang.wu@intel.com> (raw)
In-Reply-To: <1527240005-8508-2-git-send-email-bpothuno@codeaurora.org>

[-- Attachment #1: Type: text/plain, Size: 23418 bytes --]

Hi Balaji,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on mac80211-next/master]
[cannot apply to v4.17-rc6]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Balaji-Pothunoori/cfg80211-mac80211-last-ack-singal-support-in-station-dump/20180527-162750
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master
config: x86_64-randconfig-x000-201821 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

Note: the linux-review/Balaji-Pothunoori/cfg80211-mac80211-last-ack-singal-support-in-station-dump/20180527-162750 HEAD 7d4f99704af356d198be9638b571119647e26397 builds fine.
      It only hurts bisectibility.

All errors (new ones prefixed by >>):

   In file included from include/linux/kernel.h:11:0,
                    from include/linux/list.h:9,
                    from include/linux/module.h:9,
                    from net//mac80211/sta_info.c:13:
   net//mac80211/sta_info.c: In function 'sta_set_sinfo':
>> net//mac80211/sta_info.c:2314:32: error: 'NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG' undeclared (first use in this function); did you mean 'NL80211_STA_INFO_ACK_SIGNAL_AVG'?
         !(sinfo->filled & BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG))) {
                                   ^
   include/linux/bitops.h:8:32: note: in definition of macro 'BIT_ULL'
    #define BIT_ULL(nr)  (1ULL << (nr))
                                   ^~
   net//mac80211/sta_info.c:2314:32: note: each undeclared identifier is reported only once for each function it appears in
         !(sinfo->filled & BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG))) {
                                   ^
   include/linux/bitops.h:8:32: note: in definition of macro 'BIT_ULL'
    #define BIT_ULL(nr)  (1ULL << (nr))
                                   ^~

vim +2314 net//mac80211/sta_info.c

c9c5962b5 Johannes Berg            2016-03-31  2081  
0fdf1493b Johannes Berg            2018-05-18  2082  void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
0fdf1493b Johannes Berg            2018-05-18  2083  		   bool tidstats)
b7ffbd7ef Johannes Berg            2014-06-04  2084  {
b7ffbd7ef Johannes Berg            2014-06-04  2085  	struct ieee80211_sub_if_data *sdata = sta->sdata;
b7ffbd7ef Johannes Berg            2014-06-04  2086  	struct ieee80211_local *local = sdata->local;
b7ffbd7ef Johannes Berg            2014-06-04  2087  	u32 thr = 0;
c9c5962b5 Johannes Berg            2016-03-31  2088  	int i, ac, cpu;
c9c5962b5 Johannes Berg            2016-03-31  2089  	struct ieee80211_sta_rx_stats *last_rxstats;
c9c5962b5 Johannes Berg            2016-03-31  2090  
c9c5962b5 Johannes Berg            2016-03-31  2091  	last_rxstats = sta_get_last_rx_stats(sta);
b7ffbd7ef Johannes Berg            2014-06-04  2092  
b7ffbd7ef Johannes Berg            2014-06-04  2093  	sinfo->generation = sdata->local->sta_generation;
b7ffbd7ef Johannes Berg            2014-06-04  2094  
225b81898 Johannes Berg            2015-01-21  2095  	/* do before driver, so beacon filtering drivers have a
225b81898 Johannes Berg            2015-01-21  2096  	 * chance to e.g. just add the number of filtered beacons
225b81898 Johannes Berg            2015-01-21  2097  	 * (or just modify the value entirely, of course)
225b81898 Johannes Berg            2015-01-21  2098  	 */
225b81898 Johannes Berg            2015-01-21  2099  	if (sdata->vif.type == NL80211_IFTYPE_STATION)
225b81898 Johannes Berg            2015-01-21  2100  		sinfo->rx_beacon = sdata->u.mgd.count_beacon_signal;
225b81898 Johannes Berg            2015-01-21  2101  
2b9a7e1ba Johannes Berg            2014-11-17  2102  	drv_sta_statistics(local, sdata, &sta->sta, sinfo);
2b9a7e1ba Johannes Berg            2014-11-17  2103  
319090bf6 Johannes Berg            2014-11-17  2104  	sinfo->filled |= BIT(NL80211_STA_INFO_INACTIVE_TIME) |
319090bf6 Johannes Berg            2014-11-17  2105  			 BIT(NL80211_STA_INFO_STA_FLAGS) |
319090bf6 Johannes Berg            2014-11-17  2106  			 BIT(NL80211_STA_INFO_BSS_PARAM) |
319090bf6 Johannes Berg            2014-11-17  2107  			 BIT(NL80211_STA_INFO_CONNECTED_TIME) |
976bd9efd Johannes Berg            2015-10-16  2108  			 BIT(NL80211_STA_INFO_RX_DROP_MISC);
976bd9efd Johannes Berg            2015-10-16  2109  
976bd9efd Johannes Berg            2015-10-16  2110  	if (sdata->vif.type == NL80211_IFTYPE_STATION) {
976bd9efd Johannes Berg            2015-10-16  2111  		sinfo->beacon_loss_count = sdata->u.mgd.beacon_loss_count;
976bd9efd Johannes Berg            2015-10-16  2112  		sinfo->filled |= BIT(NL80211_STA_INFO_BEACON_LOSS);
976bd9efd Johannes Berg            2015-10-16  2113  	}
b7ffbd7ef Johannes Berg            2014-06-04  2114  
84b00607a Arnd Bergmann            2015-09-30  2115  	sinfo->connected_time = ktime_get_seconds() - sta->last_connected;
e5a9f8d04 Johannes Berg            2015-10-16  2116  	sinfo->inactive_time =
b8da6b6a9 Johannes Berg            2016-03-31  2117  		jiffies_to_msecs(jiffies - ieee80211_sta_last_active(sta));
2b9a7e1ba Johannes Berg            2014-11-17  2118  
319090bf6 Johannes Berg            2014-11-17  2119  	if (!(sinfo->filled & (BIT(NL80211_STA_INFO_TX_BYTES64) |
319090bf6 Johannes Berg            2014-11-17  2120  			       BIT(NL80211_STA_INFO_TX_BYTES)))) {
b7ffbd7ef Johannes Berg            2014-06-04  2121  		sinfo->tx_bytes = 0;
2b9a7e1ba Johannes Berg            2014-11-17  2122  		for (ac = 0; ac < IEEE80211_NUM_ACS; ac++)
e5a9f8d04 Johannes Berg            2015-10-16  2123  			sinfo->tx_bytes += sta->tx_stats.bytes[ac];
319090bf6 Johannes Berg            2014-11-17  2124  		sinfo->filled |= BIT(NL80211_STA_INFO_TX_BYTES64);
b7ffbd7ef Johannes Berg            2014-06-04  2125  	}
2b9a7e1ba Johannes Berg            2014-11-17  2126  
319090bf6 Johannes Berg            2014-11-17  2127  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_PACKETS))) {
2b9a7e1ba Johannes Berg            2014-11-17  2128  		sinfo->tx_packets = 0;
2b9a7e1ba Johannes Berg            2014-11-17  2129  		for (ac = 0; ac < IEEE80211_NUM_ACS; ac++)
e5a9f8d04 Johannes Berg            2015-10-16  2130  			sinfo->tx_packets += sta->tx_stats.packets[ac];
319090bf6 Johannes Berg            2014-11-17  2131  		sinfo->filled |= BIT(NL80211_STA_INFO_TX_PACKETS);
2b9a7e1ba Johannes Berg            2014-11-17  2132  	}
2b9a7e1ba Johannes Berg            2014-11-17  2133  
319090bf6 Johannes Berg            2014-11-17  2134  	if (!(sinfo->filled & (BIT(NL80211_STA_INFO_RX_BYTES64) |
319090bf6 Johannes Berg            2014-11-17  2135  			       BIT(NL80211_STA_INFO_RX_BYTES)))) {
c9c5962b5 Johannes Berg            2016-03-31  2136  		sinfo->rx_bytes += sta_get_stats_bytes(&sta->rx_stats);
c9c5962b5 Johannes Berg            2016-03-31  2137  
c9c5962b5 Johannes Berg            2016-03-31  2138  		if (sta->pcpu_rx_stats) {
c9c5962b5 Johannes Berg            2016-03-31  2139  			for_each_possible_cpu(cpu) {
c9c5962b5 Johannes Berg            2016-03-31  2140  				struct ieee80211_sta_rx_stats *cpurxs;
c9c5962b5 Johannes Berg            2016-03-31  2141  
c9c5962b5 Johannes Berg            2016-03-31  2142  				cpurxs = per_cpu_ptr(sta->pcpu_rx_stats, cpu);
c9c5962b5 Johannes Berg            2016-03-31  2143  				sinfo->rx_bytes += sta_get_stats_bytes(cpurxs);
c9c5962b5 Johannes Berg            2016-03-31  2144  			}
c9c5962b5 Johannes Berg            2016-03-31  2145  		}
0f9c5a61d Johannes Berg            2016-03-31  2146  
319090bf6 Johannes Berg            2014-11-17  2147  		sinfo->filled |= BIT(NL80211_STA_INFO_RX_BYTES64);
2b9a7e1ba Johannes Berg            2014-11-17  2148  	}
2b9a7e1ba Johannes Berg            2014-11-17  2149  
319090bf6 Johannes Berg            2014-11-17  2150  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_RX_PACKETS))) {
e5a9f8d04 Johannes Berg            2015-10-16  2151  		sinfo->rx_packets = sta->rx_stats.packets;
c9c5962b5 Johannes Berg            2016-03-31  2152  		if (sta->pcpu_rx_stats) {
c9c5962b5 Johannes Berg            2016-03-31  2153  			for_each_possible_cpu(cpu) {
c9c5962b5 Johannes Berg            2016-03-31  2154  				struct ieee80211_sta_rx_stats *cpurxs;
c9c5962b5 Johannes Berg            2016-03-31  2155  
c9c5962b5 Johannes Berg            2016-03-31  2156  				cpurxs = per_cpu_ptr(sta->pcpu_rx_stats, cpu);
c9c5962b5 Johannes Berg            2016-03-31  2157  				sinfo->rx_packets += cpurxs->packets;
c9c5962b5 Johannes Berg            2016-03-31  2158  			}
c9c5962b5 Johannes Berg            2016-03-31  2159  		}
319090bf6 Johannes Berg            2014-11-17  2160  		sinfo->filled |= BIT(NL80211_STA_INFO_RX_PACKETS);
2b9a7e1ba Johannes Berg            2014-11-17  2161  	}
2b9a7e1ba Johannes Berg            2014-11-17  2162  
319090bf6 Johannes Berg            2014-11-17  2163  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_RETRIES))) {
e5a9f8d04 Johannes Berg            2015-10-16  2164  		sinfo->tx_retries = sta->status_stats.retry_count;
319090bf6 Johannes Berg            2014-11-17  2165  		sinfo->filled |= BIT(NL80211_STA_INFO_TX_RETRIES);
2b9a7e1ba Johannes Berg            2014-11-17  2166  	}
2b9a7e1ba Johannes Berg            2014-11-17  2167  
319090bf6 Johannes Berg            2014-11-17  2168  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_FAILED))) {
e5a9f8d04 Johannes Berg            2015-10-16  2169  		sinfo->tx_failed = sta->status_stats.retry_failed;
319090bf6 Johannes Berg            2014-11-17  2170  		sinfo->filled |= BIT(NL80211_STA_INFO_TX_FAILED);
2b9a7e1ba Johannes Berg            2014-11-17  2171  	}
2b9a7e1ba Johannes Berg            2014-11-17  2172  
e5a9f8d04 Johannes Berg            2015-10-16  2173  	sinfo->rx_dropped_misc = sta->rx_stats.dropped;
c9c5962b5 Johannes Berg            2016-03-31  2174  	if (sta->pcpu_rx_stats) {
c9c5962b5 Johannes Berg            2016-03-31  2175  		for_each_possible_cpu(cpu) {
c9c5962b5 Johannes Berg            2016-03-31  2176  			struct ieee80211_sta_rx_stats *cpurxs;
c9c5962b5 Johannes Berg            2016-03-31  2177  
c9c5962b5 Johannes Berg            2016-03-31  2178  			cpurxs = per_cpu_ptr(sta->pcpu_rx_stats, cpu);
e165bc02a Johannes Berg            2017-06-01  2179  			sinfo->rx_dropped_misc += cpurxs->dropped;
c9c5962b5 Johannes Berg            2016-03-31  2180  		}
c9c5962b5 Johannes Berg            2016-03-31  2181  	}
b7ffbd7ef Johannes Berg            2014-06-04  2182  
225b81898 Johannes Berg            2015-01-21  2183  	if (sdata->vif.type == NL80211_IFTYPE_STATION &&
225b81898 Johannes Berg            2015-01-21  2184  	    !(sdata->vif.driver_flags & IEEE80211_VIF_BEACON_FILTER)) {
225b81898 Johannes Berg            2015-01-21  2185  		sinfo->filled |= BIT(NL80211_STA_INFO_BEACON_RX) |
225b81898 Johannes Berg            2015-01-21  2186  				 BIT(NL80211_STA_INFO_BEACON_SIGNAL_AVG);
225b81898 Johannes Berg            2015-01-21  2187  		sinfo->rx_beacon_signal_avg = ieee80211_ave_rssi(&sdata->vif);
225b81898 Johannes Berg            2015-01-21  2188  	}
225b81898 Johannes Berg            2015-01-21  2189  
30686bf7f Johannes Berg            2015-06-02  2190  	if (ieee80211_hw_check(&sta->local->hw, SIGNAL_DBM) ||
30686bf7f Johannes Berg            2015-06-02  2191  	    ieee80211_hw_check(&sta->local->hw, SIGNAL_UNSPEC)) {
319090bf6 Johannes Berg            2014-11-17  2192  		if (!(sinfo->filled & BIT(NL80211_STA_INFO_SIGNAL))) {
c9c5962b5 Johannes Berg            2016-03-31  2193  			sinfo->signal = (s8)last_rxstats->last_signal;
319090bf6 Johannes Berg            2014-11-17  2194  			sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL);
2b9a7e1ba Johannes Berg            2014-11-17  2195  		}
2b9a7e1ba Johannes Berg            2014-11-17  2196  
c9c5962b5 Johannes Berg            2016-03-31  2197  		if (!sta->pcpu_rx_stats &&
c9c5962b5 Johannes Berg            2016-03-31  2198  		    !(sinfo->filled & BIT(NL80211_STA_INFO_SIGNAL_AVG))) {
40d9a38ad Johannes Berg            2015-07-13  2199  			sinfo->signal_avg =
0be6ed133 Johannes Berg            2016-03-31  2200  				-ewma_signal_read(&sta->rx_stats_avg.signal);
319090bf6 Johannes Berg            2014-11-17  2201  			sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL_AVG);
b7ffbd7ef Johannes Berg            2014-06-04  2202  		}
2b9a7e1ba Johannes Berg            2014-11-17  2203  	}
2b9a7e1ba Johannes Berg            2014-11-17  2204  
c9c5962b5 Johannes Berg            2016-03-31  2205  	/* for the average - if pcpu_rx_stats isn't set - rxstats must point to
c9c5962b5 Johannes Berg            2016-03-31  2206  	 * the sta->rx_stats struct, so the check here is fine with and without
c9c5962b5 Johannes Berg            2016-03-31  2207  	 * pcpu statistics
c9c5962b5 Johannes Berg            2016-03-31  2208  	 */
c9c5962b5 Johannes Berg            2016-03-31  2209  	if (last_rxstats->chains &&
319090bf6 Johannes Berg            2014-11-17  2210  	    !(sinfo->filled & (BIT(NL80211_STA_INFO_CHAIN_SIGNAL) |
319090bf6 Johannes Berg            2014-11-17  2211  			       BIT(NL80211_STA_INFO_CHAIN_SIGNAL_AVG)))) {
c9c5962b5 Johannes Berg            2016-03-31  2212  		sinfo->filled |= BIT(NL80211_STA_INFO_CHAIN_SIGNAL);
c9c5962b5 Johannes Berg            2016-03-31  2213  		if (!sta->pcpu_rx_stats)
c9c5962b5 Johannes Berg            2016-03-31  2214  			sinfo->filled |= BIT(NL80211_STA_INFO_CHAIN_SIGNAL_AVG);
c9c5962b5 Johannes Berg            2016-03-31  2215  
c9c5962b5 Johannes Berg            2016-03-31  2216  		sinfo->chains = last_rxstats->chains;
b7ffbd7ef Johannes Berg            2014-06-04  2217  
b7ffbd7ef Johannes Berg            2014-06-04  2218  		for (i = 0; i < ARRAY_SIZE(sinfo->chain_signal); i++) {
e5a9f8d04 Johannes Berg            2015-10-16  2219  			sinfo->chain_signal[i] =
c9c5962b5 Johannes Berg            2016-03-31  2220  				last_rxstats->chain_signal_last[i];
b7ffbd7ef Johannes Berg            2014-06-04  2221  			sinfo->chain_signal_avg[i] =
0be6ed133 Johannes Berg            2016-03-31  2222  				-ewma_signal_read(&sta->rx_stats_avg.chain_signal[i]);
b7ffbd7ef Johannes Berg            2014-06-04  2223  		}
b7ffbd7ef Johannes Berg            2014-06-04  2224  	}
b7ffbd7ef Johannes Berg            2014-06-04  2225  
319090bf6 Johannes Berg            2014-11-17  2226  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_BITRATE))) {
e5a9f8d04 Johannes Berg            2015-10-16  2227  		sta_set_rate_info_tx(sta, &sta->tx_stats.last_rate,
e5a9f8d04 Johannes Berg            2015-10-16  2228  				     &sinfo->txrate);
319090bf6 Johannes Berg            2014-11-17  2229  		sinfo->filled |= BIT(NL80211_STA_INFO_TX_BITRATE);
2b9a7e1ba Johannes Berg            2014-11-17  2230  	}
2b9a7e1ba Johannes Berg            2014-11-17  2231  
319090bf6 Johannes Berg            2014-11-17  2232  	if (!(sinfo->filled & BIT(NL80211_STA_INFO_RX_BITRATE))) {
a17d93ff3 Ben Greear               2016-12-14  2233  		if (sta_set_rate_info_rx(sta, &sinfo->rxrate) == 0)
319090bf6 Johannes Berg            2014-11-17  2234  			sinfo->filled |= BIT(NL80211_STA_INFO_RX_BITRATE);
2b9a7e1ba Johannes Berg            2014-11-17  2235  	}
b7ffbd7ef Johannes Berg            2014-06-04  2236  
0fdf1493b Johannes Berg            2018-05-18  2237  	if (tidstats && !cfg80211_sinfo_alloc_tid_stats(sinfo, GFP_KERNEL)) {
79c892b85 Johannes Berg            2014-11-21  2238  		for (i = 0; i < IEEE80211_NUM_TIDS + 1; i++) {
79c892b85 Johannes Berg            2014-11-21  2239  			struct cfg80211_tid_stats *tidstats = &sinfo->pertid[i];
79c892b85 Johannes Berg            2014-11-21  2240  
0f9c5a61d Johannes Berg            2016-03-31  2241  			sta_set_tidstats(sta, tidstats, i);
79c892b85 Johannes Berg            2014-11-21  2242  		}
8689c051a Arend van Spriel         2018-05-10  2243  	}
79c892b85 Johannes Berg            2014-11-21  2244  
b7ffbd7ef Johannes Berg            2014-06-04  2245  	if (ieee80211_vif_is_mesh(&sdata->vif)) {
b7ffbd7ef Johannes Berg            2014-06-04  2246  #ifdef CONFIG_MAC80211_MESH
319090bf6 Johannes Berg            2014-11-17  2247  		sinfo->filled |= BIT(NL80211_STA_INFO_LLID) |
319090bf6 Johannes Berg            2014-11-17  2248  				 BIT(NL80211_STA_INFO_PLID) |
319090bf6 Johannes Berg            2014-11-17  2249  				 BIT(NL80211_STA_INFO_PLINK_STATE) |
319090bf6 Johannes Berg            2014-11-17  2250  				 BIT(NL80211_STA_INFO_LOCAL_PM) |
319090bf6 Johannes Berg            2014-11-17  2251  				 BIT(NL80211_STA_INFO_PEER_PM) |
319090bf6 Johannes Berg            2014-11-17  2252  				 BIT(NL80211_STA_INFO_NONPEER_PM);
b7ffbd7ef Johannes Berg            2014-06-04  2253  
433f5bc1c Johannes Berg            2015-06-17  2254  		sinfo->llid = sta->mesh->llid;
433f5bc1c Johannes Berg            2015-06-17  2255  		sinfo->plid = sta->mesh->plid;
433f5bc1c Johannes Berg            2015-06-17  2256  		sinfo->plink_state = sta->mesh->plink_state;
b7ffbd7ef Johannes Berg            2014-06-04  2257  		if (test_sta_flag(sta, WLAN_STA_TOFFSET_KNOWN)) {
319090bf6 Johannes Berg            2014-11-17  2258  			sinfo->filled |= BIT(NL80211_STA_INFO_T_OFFSET);
433f5bc1c Johannes Berg            2015-06-17  2259  			sinfo->t_offset = sta->mesh->t_offset;
b7ffbd7ef Johannes Berg            2014-06-04  2260  		}
433f5bc1c Johannes Berg            2015-06-17  2261  		sinfo->local_pm = sta->mesh->local_pm;
433f5bc1c Johannes Berg            2015-06-17  2262  		sinfo->peer_pm = sta->mesh->peer_pm;
433f5bc1c Johannes Berg            2015-06-17  2263  		sinfo->nonpeer_pm = sta->mesh->nonpeer_pm;
b7ffbd7ef Johannes Berg            2014-06-04  2264  #endif
b7ffbd7ef Johannes Berg            2014-06-04  2265  	}
b7ffbd7ef Johannes Berg            2014-06-04  2266  
b7ffbd7ef Johannes Berg            2014-06-04  2267  	sinfo->bss_param.flags = 0;
b7ffbd7ef Johannes Berg            2014-06-04  2268  	if (sdata->vif.bss_conf.use_cts_prot)
b7ffbd7ef Johannes Berg            2014-06-04  2269  		sinfo->bss_param.flags |= BSS_PARAM_FLAGS_CTS_PROT;
b7ffbd7ef Johannes Berg            2014-06-04  2270  	if (sdata->vif.bss_conf.use_short_preamble)
b7ffbd7ef Johannes Berg            2014-06-04  2271  		sinfo->bss_param.flags |= BSS_PARAM_FLAGS_SHORT_PREAMBLE;
b7ffbd7ef Johannes Berg            2014-06-04  2272  	if (sdata->vif.bss_conf.use_short_slot)
b7ffbd7ef Johannes Berg            2014-06-04  2273  		sinfo->bss_param.flags |= BSS_PARAM_FLAGS_SHORT_SLOT_TIME;
785e21a89 Emmanuel Grumbach        2014-09-03  2274  	sinfo->bss_param.dtim_period = sdata->vif.bss_conf.dtim_period;
b7ffbd7ef Johannes Berg            2014-06-04  2275  	sinfo->bss_param.beacon_interval = sdata->vif.bss_conf.beacon_int;
b7ffbd7ef Johannes Berg            2014-06-04  2276  
b7ffbd7ef Johannes Berg            2014-06-04  2277  	sinfo->sta_flags.set = 0;
b7ffbd7ef Johannes Berg            2014-06-04  2278  	sinfo->sta_flags.mask = BIT(NL80211_STA_FLAG_AUTHORIZED) |
b7ffbd7ef Johannes Berg            2014-06-04  2279  				BIT(NL80211_STA_FLAG_SHORT_PREAMBLE) |
b7ffbd7ef Johannes Berg            2014-06-04  2280  				BIT(NL80211_STA_FLAG_WME) |
b7ffbd7ef Johannes Berg            2014-06-04  2281  				BIT(NL80211_STA_FLAG_MFP) |
b7ffbd7ef Johannes Berg            2014-06-04  2282  				BIT(NL80211_STA_FLAG_AUTHENTICATED) |
b7ffbd7ef Johannes Berg            2014-06-04  2283  				BIT(NL80211_STA_FLAG_ASSOCIATED) |
b7ffbd7ef Johannes Berg            2014-06-04  2284  				BIT(NL80211_STA_FLAG_TDLS_PEER);
b7ffbd7ef Johannes Berg            2014-06-04  2285  	if (test_sta_flag(sta, WLAN_STA_AUTHORIZED))
b7ffbd7ef Johannes Berg            2014-06-04  2286  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_AUTHORIZED);
b7ffbd7ef Johannes Berg            2014-06-04  2287  	if (test_sta_flag(sta, WLAN_STA_SHORT_PREAMBLE))
b7ffbd7ef Johannes Berg            2014-06-04  2288  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_SHORT_PREAMBLE);
a74a8c846 Johannes Berg            2014-07-22  2289  	if (sta->sta.wme)
b7ffbd7ef Johannes Berg            2014-06-04  2290  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_WME);
b7ffbd7ef Johannes Berg            2014-06-04  2291  	if (test_sta_flag(sta, WLAN_STA_MFP))
b7ffbd7ef Johannes Berg            2014-06-04  2292  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_MFP);
b7ffbd7ef Johannes Berg            2014-06-04  2293  	if (test_sta_flag(sta, WLAN_STA_AUTH))
b7ffbd7ef Johannes Berg            2014-06-04  2294  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_AUTHENTICATED);
b7ffbd7ef Johannes Berg            2014-06-04  2295  	if (test_sta_flag(sta, WLAN_STA_ASSOC))
b7ffbd7ef Johannes Berg            2014-06-04  2296  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_ASSOCIATED);
b7ffbd7ef Johannes Berg            2014-06-04  2297  	if (test_sta_flag(sta, WLAN_STA_TDLS_PEER))
b7ffbd7ef Johannes Berg            2014-06-04  2298  		sinfo->sta_flags.set |= BIT(NL80211_STA_FLAG_TDLS_PEER);
b7ffbd7ef Johannes Berg            2014-06-04  2299  
3b17fbf87 Maxim Altshul            2016-07-11  2300  	thr = sta_get_expected_throughput(sta);
3b17fbf87 Maxim Altshul            2016-07-11  2301  
3b17fbf87 Maxim Altshul            2016-07-11  2302  	if (thr != 0) {
3b17fbf87 Maxim Altshul            2016-07-11  2303  		sinfo->filled |= BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT);
3b17fbf87 Maxim Altshul            2016-07-11  2304  		sinfo->expected_throughput = thr;
3b17fbf87 Maxim Altshul            2016-07-11  2305  	}
a78b26fff Venkateswara Naralasetty 2018-02-13  2306  
a78b26fff Venkateswara Naralasetty 2018-02-13  2307  	if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL)) &&
a78b26fff Venkateswara Naralasetty 2018-02-13  2308  	    sta->status_stats.ack_signal_filled) {
a78b26fff Venkateswara Naralasetty 2018-02-13  2309  		sinfo->ack_signal = sta->status_stats.last_ack_signal;
a78b26fff Venkateswara Naralasetty 2018-02-13  2310  		sinfo->filled |= BIT_ULL(NL80211_STA_INFO_ACK_SIGNAL);
a78b26fff Venkateswara Naralasetty 2018-02-13  2311  	}
cc60dbbfe Balaji Pothunoori        2018-04-16  2312  
cc60dbbfe Balaji Pothunoori        2018-04-16  2313  	if (ieee80211_hw_check(&sta->local->hw, REPORTS_TX_ACK_STATUS) &&
cc60dbbfe Balaji Pothunoori        2018-04-16 @2314  	    !(sinfo->filled & BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG))) {
cc60dbbfe Balaji Pothunoori        2018-04-16  2315  		sinfo->avg_ack_signal =
cc60dbbfe Balaji Pothunoori        2018-04-16  2316  			-(s8)ewma_avg_signal_read(
cc60dbbfe Balaji Pothunoori        2018-04-16  2317  				&sta->status_stats.avg_ack_signal);
cc60dbbfe Balaji Pothunoori        2018-04-16  2318  		sinfo->filled |=
cc60dbbfe Balaji Pothunoori        2018-04-16  2319  			BIT_ULL(NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG);
cc60dbbfe Balaji Pothunoori        2018-04-16  2320  	}
3b17fbf87 Maxim Altshul            2016-07-11  2321  }
3b17fbf87 Maxim Altshul            2016-07-11  2322  

:::::: The code at line 2314 was first introduced by commit
:::::: cc60dbbfed8ff0bd4c530ee48e9e915333a35470 mac80211: average ack rssi support for data frames

:::::: TO: Balaji Pothunoori <bpothuno@codeaurora.org>
:::::: CC: Johannes Berg <johannes.berg@intel.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 28797 bytes --]

  reply	other threads:[~2018-05-27  9:48 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-25  9:20 [PATCH 0/2] cfg80211/mac80211: last ack singal support in station dump Balaji Pothunoori
2018-05-25  9:20 ` [PATCH 1/2] cfg80211: " Balaji Pothunoori
2018-05-27  9:48   ` kbuild test robot [this message]
2018-05-31  6:12     ` Balaji Pothunoori
2018-05-25  9:20 ` [PATCH 2/2] mac80211: " Balaji Pothunoori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201805271659.xmioz6RW%fengguang.wu@intel.com \
    --to=lkp@intel.com \
    --cc=bpothuno@codeaurora.org \
    --cc=johannes@sipsolutions.net \
    --cc=kbuild-all@01.org \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.