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 <bpoth...@codeaurora.org>
:::::: CC: Johannes Berg <johannes.b...@intel.com>

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

Attachment: .config.gz
Description: application/gzip

Reply via email to