All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-next:master 11408/13468] net/mac80211/mlme.c:4737:7: warning: Value stored to 'bssid' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
@ 2022-05-21 17:21 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-05-21 17:21 UTC (permalink / raw)
  To: kbuild

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

CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: Johannes Berg <johannes.berg@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   18ecd30af1a8402c162cca1bd58771c0e5be7815
commit: 16d0364c722a246933ec4b39cbd5d17d7d4fe758 [11408/13468] mac80211: remove useless bssid copy
:::::: branch date: 28 hours ago
:::::: commit date: 5 days ago
config: riscv-randconfig-c006-20220519 (https://download.01.org/0day-ci/archive/20220522/202205220128.bwNmsjhd-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project e00cbbec06c08dc616a0d52a20f678b8fbd4e304)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=16d0364c722a246933ec4b39cbd5d17d7d4fe758
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout 16d0364c722a246933ec4b39cbd5d17d7d4fe758
        # save the config file
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv clang-analyzer 

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>


clang-analyzer warnings: (new ones prefixed by >>)
   net/mac80211/mlme.c:3572:2: note: Taking true branch
           if (elems->he_operation && !(ifmgd->flags & IEEE80211_STA_DISABLE_HE) &&
           ^
   net/mac80211/mlme.c:3581:7: note: Assuming field 'rsnx' is null
                   if (elems->rsnx && elems->rsnx_len &&
                       ^~~~~~~~~~~
   net/mac80211/mlme.c:3581:19: note: Left side of '&&' is false
                   if (elems->rsnx && elems->rsnx_len &&
                                   ^
   net/mac80211/mlme.c:3589:14: note: Calling 'ieee80211_recalc_twt_req'
                   changed |= ieee80211_recalc_twt_req(sdata, sta, elems);
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:3343:13: note: Calling 'ieee80211_twt_req_supported'
           bool twt = ieee80211_twt_req_supported(sta, elems);
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:3329:6: note: Assuming field 'ext_capab_len' is >= 10
           if (elems->ext_capab_len < 10)
               ^~~~~~~~~~~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:3329:2: note: Taking false branch
           if (elems->ext_capab_len < 10)
           ^
   net/mac80211/mlme.c:3332:8: note: Array access (via field 'ext_capab') results in a null pointer dereference
           if (!(elems->ext_capab[9] & WLAN_EXT_CAPA10_TWT_RESPONDER_SUPPORT))
                 ^      ~~~~~~~~~
   net/mac80211/mlme.c:4259:5: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                                   memcpy(&bss_conf->p2p_noa_attr, &noa, sizeof(noa));
                                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4259:5: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                                   memcpy(&bss_conf->p2p_noa_attr, &noa, sizeof(noa));
                                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4270:4: warning: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           memset(&bss_conf->p2p_noa_attr, 0, sizeof(bss_conf->p2p_noa_attr));
                           ^
   include/linux/fortify-string.h:272:25: note: expanded from macro 'memset'
   #define memset(p, c, s) __fortify_memset_chk(p, c, s,                   \
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:265:2: note: expanded from macro '__fortify_memset_chk'
           __underlying_memset(p, c, __fortify_size);                      \
           ^~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:47:29: note: expanded from macro '__underlying_memset'
   #define __underlying_memset     __builtin_memset
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4270:4: note: Call to function 'memset' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memset_s' in case of C11
                           memset(&bss_conf->p2p_noa_attr, 0, sizeof(bss_conf->p2p_noa_attr));
                           ^
   include/linux/fortify-string.h:272:25: note: expanded from macro 'memset'
   #define memset(p, c, s) __fortify_memset_chk(p, c, s,                   \
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:265:2: note: expanded from macro '__fortify_memset_chk'
           __underlying_memset(p, c, __fortify_size);                      \
           ^~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:47:29: note: expanded from macro '__underlying_memset'
   #define __underlying_memset     __builtin_memset
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4707:4: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                           memcpy(bssid, ifmgd->auth_data->bss->bssid, ETH_ALEN);
                           ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4707:4: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                           memcpy(bssid, ifmgd->auth_data->bss->bssid, ETH_ALEN);
                           ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
>> net/mac80211/mlme.c:4737:7: warning: Value stored to 'bssid' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
                   u8 *bssid = ifmgd->bssid;
                       ^~~~~   ~~~~~~~~~~~~
   net/mac80211/mlme.c:4737:7: note: Value stored to 'bssid' during its initialization is never read
                   u8 *bssid = ifmgd->bssid;
                       ^~~~~   ~~~~~~~~~~~~
   net/mac80211/mlme.c:4919:3: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memcpy(bssid, ifmgd->bssid, ETH_ALEN);
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:4919:3: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                   memcpy(bssid, ifmgd->bssid, ETH_ALEN);
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5400:5: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                                   memcpy(&bss_conf->tx_pwr_env[j], elems->tx_pwr_env[i],
                                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5400:5: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                                   memcpy(&bss_conf->tx_pwr_env[j], elems->tx_pwr_env[i],
                                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5642:3: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memcpy(ifmgd->bssid, cbss->bssid, ETH_ALEN);
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5642:3: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                   memcpy(ifmgd->bssid, cbss->bssid, ETH_ALEN);
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5772:3: warning: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11 [clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling]
                   memcpy(auth_data->data, req->auth_data + 4,
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'
   #define memcpy(p, q, s)  __fortify_memcpy_chk(p, q, s,                  \
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:362:2: note: expanded from macro '__fortify_memcpy_chk'
           __underlying_##op(p, q, __fortify_size);                        \
           ^~~~~~~~~~~~~~~~~
   note: expanded from here
   include/linux/fortify-string.h:45:29: note: expanded from macro '__underlying_memcpy'
   #define __underlying_memcpy     __builtin_memcpy
                                   ^~~~~~~~~~~~~~~~
   net/mac80211/mlme.c:5772:3: note: Call to function 'memcpy' is insecure as it does not provide security checks introduced in the C11 standard. Replace with analogous functions that support length arguments or provides boundary checks such as 'memcpy_s' in case of C11
                   memcpy(auth_data->data, req->auth_data + 4,
                   ^
   include/linux/fortify-string.h:369:26: note: expanded from macro 'memcpy'

vim +/bssid +4737 net/mac80211/mlme.c

1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4648  
1fa57d017366fb net/mac80211/mlme.c          Johannes Berg     2010-06-10  4649  void ieee80211_sta_work(struct ieee80211_sub_if_data *sdata)
f0706e828e96d0 net/mac80211/ieee80211_sta.c Jiri Benc         2007-05-05  4650  {
9c6bd79011b14a net/mac80211/mlme.c          Johannes Berg     2008-09-11  4651  	struct ieee80211_local *local = sdata->local;
1fa57d017366fb net/mac80211/mlme.c          Johannes Berg     2010-06-10  4652  	struct ieee80211_if_managed *ifmgd = &sdata->u.mgd;
9c6bd79011b14a net/mac80211/mlme.c          Johannes Berg     2008-09-11  4653  
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4654  	sdata_lock(sdata);
77fdaa12cea26c net/mac80211/mlme.c          Johannes Berg     2009-07-07  4655  
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4656  	if (ifmgd->status_received) {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4657  		__le16 fc = ifmgd->status_fc;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4658  		bool status_acked = ifmgd->status_acked;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4659  
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4660  		ifmgd->status_received = false;
46cad4b7a131a2 net/mac80211/mlme.c          Johannes Berg     2015-08-15  4661  		if (ifmgd->auth_data && ieee80211_is_auth(fc)) {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4662  			if (status_acked) {
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4663  				if (ifmgd->auth_data->algorithm ==
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4664  				    WLAN_AUTH_SAE)
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4665  					ifmgd->auth_data->timeout =
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4666  						jiffies +
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4667  						IEEE80211_AUTH_TIMEOUT_SAE;
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4668  				else
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4669  					ifmgd->auth_data->timeout =
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4670  						jiffies +
407879b690ba3a net/mac80211/mlme.c          Ilan Peer         2018-04-20  4671  						IEEE80211_AUTH_TIMEOUT_SHORT;
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4672  				run_again(sdata, ifmgd->auth_data->timeout);
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4673  			} else {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4674  				ifmgd->auth_data->timeout = jiffies - 1;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4675  			}
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4676  			ifmgd->auth_data->timeout_started = true;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4677  		} else if (ifmgd->assoc_data &&
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4678  			   (ieee80211_is_assoc_req(fc) ||
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4679  			    ieee80211_is_reassoc_req(fc))) {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4680  			if (status_acked) {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4681  				ifmgd->assoc_data->timeout =
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4682  					jiffies + IEEE80211_ASSOC_TIMEOUT_SHORT;
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4683  				run_again(sdata, ifmgd->assoc_data->timeout);
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4684  			} else {
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4685  				ifmgd->assoc_data->timeout = jiffies - 1;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4686  			}
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4687  			ifmgd->assoc_data->timeout_started = true;
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4688  		}
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4689  	}
1672c0e31917f4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4690  
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4691  	if (ifmgd->auth_data && ifmgd->auth_data->timeout_started &&
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4692  	    time_after(jiffies, ifmgd->auth_data->timeout)) {
94d9864cc86f57 net/mac80211/mlme.c          Johannes Berg     2022-02-24  4693  		if (ifmgd->auth_data->done || ifmgd->auth_data->waiting) {
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4694  			/*
94d9864cc86f57 net/mac80211/mlme.c          Johannes Berg     2022-02-24  4695  			 * ok ... we waited for assoc or continuation but
94d9864cc86f57 net/mac80211/mlme.c          Johannes Berg     2022-02-24  4696  			 * userspace didn't do it, so kill the auth data
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4697  			 */
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4698  			ieee80211_destroy_auth_data(sdata, false);
46cad4b7a131a2 net/mac80211/mlme.c          Johannes Berg     2015-08-15  4699  		} else if (ieee80211_auth(sdata)) {
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4700  			u8 bssid[ETH_ALEN];
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4701  			struct ieee80211_event event = {
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4702  				.type = MLME_EVENT,
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4703  				.u.mlme.data = AUTH_EVENT,
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4704  				.u.mlme.status = MLME_TIMEOUT,
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4705  			};
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4706  
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4707  			memcpy(bssid, ifmgd->auth_data->bss->bssid, ETH_ALEN);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4708  
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4709  			ieee80211_destroy_auth_data(sdata, false);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4710  
6ff57cf88807dd net/mac80211/mlme.c          Johannes Berg     2013-05-16  4711  			cfg80211_auth_timeout(sdata->dev, bssid);
a9409093d23c82 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4712  			drv_event_callback(sdata->local, sdata, &event);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4713  		}
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4714  	} else if (ifmgd->auth_data && ifmgd->auth_data->timeout_started)
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4715  		run_again(sdata, ifmgd->auth_data->timeout);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4716  
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4717  	if (ifmgd->assoc_data && ifmgd->assoc_data->timeout_started &&
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4718  	    time_after(jiffies, ifmgd->assoc_data->timeout)) {
989c6505cdda58 net/mac80211/mlme.c          Alexander Bondar  2013-05-16  4719  		if ((ifmgd->assoc_data->need_beacon && !ifmgd->have_beacon) ||
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4720  		    ieee80211_do_assoc(sdata)) {
959867fa55d0cb net/mac80211/mlme.c          Johannes Berg     2013-06-19  4721  			struct cfg80211_bss *bss = ifmgd->assoc_data->bss;
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4722  			struct ieee80211_event event = {
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4723  				.type = MLME_EVENT,
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4724  				.u.mlme.data = ASSOC_EVENT,
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4725  				.u.mlme.status = MLME_TIMEOUT,
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4726  			};
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4727  
e6f462df9acd2a net/mac80211/mlme.c          Johannes Berg     2016-12-08  4728  			ieee80211_destroy_assoc_data(sdata, false, false);
959867fa55d0cb net/mac80211/mlme.c          Johannes Berg     2013-06-19  4729  			cfg80211_assoc_timeout(sdata->dev, bss);
d0d1a12f9cc665 net/mac80211/mlme.c          Emmanuel Grumbach 2015-03-16  4730  			drv_event_callback(sdata->local, sdata, &event);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4731  		}
89afe614c0c737 net/mac80211/mlme.c          Johannes Berg     2013-02-13  4732  	} else if (ifmgd->assoc_data && ifmgd->assoc_data->timeout_started)
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4733  		run_again(sdata, ifmgd->assoc_data->timeout);
66e67e41890844 net/mac80211/mlme.c          Johannes Berg     2012-01-20  4734  
392b9ffb05b62f net/mac80211/mlme.c          Stanislaw Gruszka 2013-08-27  4735  	if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL &&
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4736  	    ifmgd->associated) {
16d0364c722a24 net/mac80211/mlme.c          Johannes Berg     2022-05-13 @4737  		u8 *bssid = ifmgd->bssid;
72a8a3edd63099 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4738  		int max_tries;
a43abf29396523 net/mac80211/mlme.c          Maxim Levitsky    2009-07-31  4739  
30686bf7f5b3c3 net/mac80211/mlme.c          Johannes Berg     2015-06-02  4740  		if (ieee80211_hw_check(&local->hw, REPORTS_TX_ACK_STATUS))
180205bdb22b79 net/mac80211/mlme.c          Ben Greear        2011-02-04  4741  			max_tries = max_nullfunc_tries;
72a8a3edd63099 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4742  		else
180205bdb22b79 net/mac80211/mlme.c          Ben Greear        2011-02-04  4743  			max_tries = max_probe_tries;
72a8a3edd63099 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4744  
4e5ff37692df35 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4745  		/* ACK received for nullfunc probing frame */
4e5ff37692df35 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4746  		if (!ifmgd->probe_send_count)
4e5ff37692df35 net/mac80211/mlme.c          Felix Fietkau     2010-11-23  4747  			ieee80211_reset_ap_probe(sdata);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4748  		else if (ifmgd->nullfunc_failed) {
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4749  			if (ifmgd->probe_send_count < max_tries) {
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4750  				mlme_dbg(sdata,
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4751  					 "No ack for nullfunc frame to AP %pM, try %d/%i\n",
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4752  					 bssid, ifmgd->probe_send_count,
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4753  					 max_tries);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4754  				ieee80211_mgd_probe_ap_send(sdata);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4755  			} else {
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4756  				mlme_dbg(sdata,
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4757  					 "No ack for nullfunc frame to AP %pM, disconnecting.\n",
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4758  					 bssid);
53da4c45cadee4 net/mac80211/mlme.c          Johannes Berg     2022-05-13  4759  				ieee80211_sta_connection_lost(sdata,
6b684db1db0df4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4760  					WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY,
6b684db1db0df4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4761  					false);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4762  			}
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4763  		} else if (time_is_after_jiffies(ifmgd->probe_timeout))
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4764  			run_again(sdata, ifmgd->probe_timeout);
30686bf7f5b3c3 net/mac80211/mlme.c          Johannes Berg     2015-06-02  4765  		else if (ieee80211_hw_check(&local->hw, REPORTS_TX_ACK_STATUS)) {
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4766  			mlme_dbg(sdata,
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4767  				 "Failed to send nullfunc to AP %pM after %dms, disconnecting\n",
180205bdb22b79 net/mac80211/mlme.c          Ben Greear        2011-02-04  4768  				 bssid, probe_wait_ms);
53da4c45cadee4 net/mac80211/mlme.c          Johannes Berg     2022-05-13  4769  			ieee80211_sta_connection_lost(sdata,
6b684db1db0df4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4770  				WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY, false);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4771  		} else if (ifmgd->probe_send_count < max_tries) {
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4772  			mlme_dbg(sdata,
bdcbd8e0e3ffda net/mac80211/mlme.c          Johannes Berg     2012-06-22  4773  				 "No probe response from AP %pM after %dms, try %d/%i\n",
180205bdb22b79 net/mac80211/mlme.c          Ben Greear        2011-02-04  4774  				 bssid, probe_wait_ms,
bfc31df33b1625 net/mac80211/mlme.c          Ben Greear        2011-01-14  4775  				 ifmgd->probe_send_count, max_tries);
a43abf29396523 net/mac80211/mlme.c          Maxim Levitsky    2009-07-31  4776  			ieee80211_mgd_probe_ap_send(sdata);
a43abf29396523 net/mac80211/mlme.c          Maxim Levitsky    2009-07-31  4777  		} else {
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4778  			/*
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4779  			 * We actually lost the connection ... or did we?
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4780  			 * Let's make sure!
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4781  			 */
89f774e6c41efd net/mac80211/mlme.c          Johannes Berg     2016-01-25  4782  			mlme_dbg(sdata,
89f774e6c41efd net/mac80211/mlme.c          Johannes Berg     2016-01-25  4783  				 "No probe response from AP %pM after %dms, disconnecting.\n",
180205bdb22b79 net/mac80211/mlme.c          Ben Greear        2011-02-04  4784  				 bssid, probe_wait_ms);
04ac3c0ee2c773 net/mac80211/mlme.c          Felix Fietkau     2010-12-02  4785  
53da4c45cadee4 net/mac80211/mlme.c          Johannes Berg     2022-05-13  4786  			ieee80211_sta_connection_lost(sdata,
6b684db1db0df4 net/mac80211/mlme.c          Johannes Berg     2013-01-29  4787  				WLAN_REASON_DISASSOC_DUE_TO_INACTIVITY, false);
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4788  		}
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4789  	}
b291ba11181d46 net/mac80211/mlme.c          Johannes Berg     2009-07-10  4790  
8d61ffa5e01c5f net/mac80211/mlme.c          Johannes Berg     2013-05-10  4791  	sdata_unlock(sdata);
f0706e828e96d0 net/mac80211/ieee80211_sta.c Jiri Benc         2007-05-05  4792  }
9c6bd79011b14a net/mac80211/mlme.c          Johannes Berg     2008-09-11  4793  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-05-21 17:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-21 17:21 [linux-next:master 11408/13468] net/mac80211/mlme.c:4737:7: warning: Value stored to 'bssid' during its initialization is never read [clang-analyzer-deadcode.DeadStores] kernel test robot

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.