All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)
@ 2021-04-04 20:33 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-04-04 20:33 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
CC: Luca Coelho <luciano.coelho@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2023a53bdf41b7646b1d384b6816af06309f73a5
commit: 3b25f1aff503bddd7911b62bbbcacc114cd04b8f iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode
date:   4 months ago
:::::: branch date: 22 hours ago
:::::: commit date: 4 months ago
config: microblaze-randconfig-m031-20210405 (attached as .config)
compiler: microblaze-linux-gcc (GCC) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)

Old smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:1487 iwl_mvm_up() warn: missing error code 'ret'

vim +699 drivers/net/wireless/intel/iwlwifi/mvm/fw.c

8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  649  
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09  650  int iwl_run_init_mvm_ucode(struct iwl_mvm *mvm)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  651  {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  652  	struct iwl_notification_wait calib_wait;
6eb031d2fe2d9a drivers/net/wireless/iwlwifi/mvm/fw.c       Sara Sharon       2015-07-13  653  	static const u16 init_complete[] = {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  654  		INIT_COMPLETE_NOTIF,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  655  		CALIB_RES_NOTIF_PHY_DB
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  656  	};
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  657  	int ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  658  
7d6222e27013a1 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-06-08  659  	if (iwl_mvm_has_unified_ucode(mvm))
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  660  		return iwl_run_unified_mvm_ucode(mvm, true);
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  661  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  662  	lockdep_assert_held(&mvm->mutex);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  663  
940225628652b3 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-22  664  	mvm->rfkill_safe_init_done = false;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  665  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  666  	iwl_init_notification_wait(&mvm->notif_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  667  				   &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  668  				   init_complete,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  669  				   ARRAY_SIZE(init_complete),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  670  				   iwl_wait_phy_db_entry,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  671  				   mvm->phy_db);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  672  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  673  	/* Will also start the device */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  674  	ret = iwl_mvm_load_ucode_wait_alive(mvm, IWL_UCODE_INIT);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  675  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  676  		IWL_ERR(mvm, "Failed to start INIT ucode: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  677  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  678  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  679  
7d34a7d7da97bc drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2019-07-12  680  	if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) {
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  681  		ret = iwl_mvm_send_bt_init_conf(mvm);
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  682  		if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  683  			goto remove_notif;
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  684  	}
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  685  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  686  	/* Read the NVM only@driver load time, no need to do this twice */
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09 @687  	if (!mvm->nvm_data) {
5bd1d2c1ea9d0f drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-08-15  688  		ret = iwl_nvm_init(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  689  		if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  690  			IWL_ERR(mvm, "Failed to read NVM: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  691  			goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  692  		}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  693  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  694  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  695  	/* In case we read the NVM from external file, load it to the NIC */
e02a9d606d4f03 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2014-05-07  696  	if (mvm->nvm_file_name)
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  697  		iwl_mvm_load_nvm_to_nic(mvm);
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  698  
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16 @699  	WARN_ONCE(mvm->nvm_data->nvm_version < mvm->trans->cfg->nvm_ver,
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  700  		  "Too old NVM version (0x%0x, required = 0x%0x)",
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  701  		  mvm->nvm_data->nvm_version, mvm->trans->cfg->nvm_ver);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  702  
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  703  	/*
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  704  	 * abort after reading the nvm in case RF Kill is on, we will complete
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  705  	 * the init seq later when RF kill will switch to off
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  706  	 */
1a3fe0b2b6778b drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2015-09-30  707  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  708  		IWL_DEBUG_RF_KILL(mvm,
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  709  				  "jump over all phy activities due to RF kill\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  710  		goto remove_notif;
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  711  	}
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  712  
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  713  	mvm->rfkill_safe_init_done = true;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  714  
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  715  	/* Send TX valid antennas before triggering calibrations */
a0544272441585 drivers/net/wireless/iwlwifi/mvm/fw.c       Moshe Harel       2014-12-08  716  	ret = iwl_send_tx_ant_cfg(mvm, iwl_mvm_get_valid_tx_ant(mvm));
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  717  	if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  718  		goto remove_notif;
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  719  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  720  	ret = iwl_send_phy_cfg_cmd(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  721  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  722  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  723  			ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  724  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  725  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  726  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  727  	/*
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  728  	 * Some things may run in the background now, but we
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  729  	 * just wait for the calibration complete notification.
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  730  	 */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  731  	ret = iwl_wait_notification(&mvm->notif_wait, &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  732  				    MVM_UCODE_CALIB_TIMEOUT);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  733  	if (!ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  734  		goto out;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  735  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  736  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  737  		IWL_DEBUG_RF_KILL(mvm, "RFKILL while calibrating.\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  738  		ret = 0;
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  739  	} else {
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  740  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  741  			ret);
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  742  	}
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  743  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  744  	goto out;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  745  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  746  remove_notif:
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  747  	iwl_remove_notification(&mvm->notif_wait, &calib_wait);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  748  out:
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  749  	mvm->rfkill_safe_init_done = false;
a4082843674000 drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2013-11-24  750  	if (iwlmvm_mod_params.init_dbg && !mvm->nvm_data) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  751  		/* we want to debug INIT and we have no NVM - fake */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  752  		mvm->nvm_data = kzalloc(sizeof(struct iwl_nvm_data) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  753  					sizeof(struct ieee80211_channel) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  754  					sizeof(struct ieee80211_rate),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  755  					GFP_KERNEL);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  756  		if (!mvm->nvm_data)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  757  			return -ENOMEM;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  758  		mvm->nvm_data->bands[0].channels = mvm->nvm_data->channels;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  759  		mvm->nvm_data->bands[0].n_channels = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  760  		mvm->nvm_data->bands[0].n_bitrates = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  761  		mvm->nvm_data->bands[0].bitrates =
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  762  			(void *)mvm->nvm_data->channels + 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  763  		mvm->nvm_data->bands[0].bitrates->hw_value = 10;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  764  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  765  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  766  	return ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  767  }
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  768  

:::::: The code at line 699 was first introduced by commit
:::::: 64866e5da1eabd0c52ff45029b245f5465920031 iwlwifi: move iwl_nvm_check_version() into dvm

:::::: TO: Luca Coelho <luciano.coelho@intel.com>
:::::: CC: Luca Coelho <luciano.coelho@intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)
@ 2021-11-19 20:29 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-11-19 20:29 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
CC: Luca Coelho <luciano.coelho@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4c388a8e740d3235a194f330c8ef327deef710f6
commit: 3b25f1aff503bddd7911b62bbbcacc114cd04b8f iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode
date:   12 months ago
:::::: branch date: 19 hours ago
:::::: commit date: 12 months ago
config: mips-randconfig-m031-20211104 (attached as .config)
compiler: mips-linux-gcc (GCC) 11.2.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)

Old smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:1487 iwl_mvm_up() warn: missing error code 'ret'

vim +699 drivers/net/wireless/intel/iwlwifi/mvm/fw.c

8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  649  
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09  650  int iwl_run_init_mvm_ucode(struct iwl_mvm *mvm)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  651  {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  652  	struct iwl_notification_wait calib_wait;
6eb031d2fe2d9a drivers/net/wireless/iwlwifi/mvm/fw.c       Sara Sharon       2015-07-13  653  	static const u16 init_complete[] = {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  654  		INIT_COMPLETE_NOTIF,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  655  		CALIB_RES_NOTIF_PHY_DB
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  656  	};
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  657  	int ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  658  
7d6222e27013a1 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-06-08  659  	if (iwl_mvm_has_unified_ucode(mvm))
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  660  		return iwl_run_unified_mvm_ucode(mvm, true);
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  661  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  662  	lockdep_assert_held(&mvm->mutex);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  663  
940225628652b3 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-22  664  	mvm->rfkill_safe_init_done = false;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  665  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  666  	iwl_init_notification_wait(&mvm->notif_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  667  				   &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  668  				   init_complete,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  669  				   ARRAY_SIZE(init_complete),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  670  				   iwl_wait_phy_db_entry,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  671  				   mvm->phy_db);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  672  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  673  	/* Will also start the device */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  674  	ret = iwl_mvm_load_ucode_wait_alive(mvm, IWL_UCODE_INIT);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  675  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  676  		IWL_ERR(mvm, "Failed to start INIT ucode: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  677  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  678  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  679  
7d34a7d7da97bc drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2019-07-12  680  	if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) {
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  681  		ret = iwl_mvm_send_bt_init_conf(mvm);
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  682  		if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  683  			goto remove_notif;
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  684  	}
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  685  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  686  	/* Read the NVM only@driver load time, no need to do this twice */
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09 @687  	if (!mvm->nvm_data) {
5bd1d2c1ea9d0f drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-08-15  688  		ret = iwl_nvm_init(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  689  		if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  690  			IWL_ERR(mvm, "Failed to read NVM: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  691  			goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  692  		}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  693  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  694  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  695  	/* In case we read the NVM from external file, load it to the NIC */
e02a9d606d4f03 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2014-05-07  696  	if (mvm->nvm_file_name)
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  697  		iwl_mvm_load_nvm_to_nic(mvm);
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  698  
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16 @699  	WARN_ONCE(mvm->nvm_data->nvm_version < mvm->trans->cfg->nvm_ver,
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  700  		  "Too old NVM version (0x%0x, required = 0x%0x)",
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  701  		  mvm->nvm_data->nvm_version, mvm->trans->cfg->nvm_ver);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  702  
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  703  	/*
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  704  	 * abort after reading the nvm in case RF Kill is on, we will complete
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  705  	 * the init seq later when RF kill will switch to off
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  706  	 */
1a3fe0b2b6778b drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2015-09-30  707  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  708  		IWL_DEBUG_RF_KILL(mvm,
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  709  				  "jump over all phy activities due to RF kill\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  710  		goto remove_notif;
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  711  	}
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  712  
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  713  	mvm->rfkill_safe_init_done = true;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  714  
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  715  	/* Send TX valid antennas before triggering calibrations */
a0544272441585 drivers/net/wireless/iwlwifi/mvm/fw.c       Moshe Harel       2014-12-08  716  	ret = iwl_send_tx_ant_cfg(mvm, iwl_mvm_get_valid_tx_ant(mvm));
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  717  	if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  718  		goto remove_notif;
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  719  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  720  	ret = iwl_send_phy_cfg_cmd(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  721  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  722  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  723  			ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  724  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  725  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  726  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  727  	/*
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  728  	 * Some things may run in the background now, but we
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  729  	 * just wait for the calibration complete notification.
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  730  	 */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  731  	ret = iwl_wait_notification(&mvm->notif_wait, &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  732  				    MVM_UCODE_CALIB_TIMEOUT);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  733  	if (!ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  734  		goto out;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  735  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  736  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  737  		IWL_DEBUG_RF_KILL(mvm, "RFKILL while calibrating.\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  738  		ret = 0;
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  739  	} else {
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  740  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  741  			ret);
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  742  	}
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  743  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  744  	goto out;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  745  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  746  remove_notif:
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  747  	iwl_remove_notification(&mvm->notif_wait, &calib_wait);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  748  out:
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  749  	mvm->rfkill_safe_init_done = false;
a4082843674000 drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2013-11-24  750  	if (iwlmvm_mod_params.init_dbg && !mvm->nvm_data) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  751  		/* we want to debug INIT and we have no NVM - fake */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  752  		mvm->nvm_data = kzalloc(sizeof(struct iwl_nvm_data) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  753  					sizeof(struct ieee80211_channel) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  754  					sizeof(struct ieee80211_rate),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  755  					GFP_KERNEL);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  756  		if (!mvm->nvm_data)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  757  			return -ENOMEM;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  758  		mvm->nvm_data->bands[0].channels = mvm->nvm_data->channels;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  759  		mvm->nvm_data->bands[0].n_channels = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  760  		mvm->nvm_data->bands[0].n_bitrates = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  761  		mvm->nvm_data->bands[0].bitrates =
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  762  			(void *)mvm->nvm_data->channels + 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  763  		mvm->nvm_data->bands[0].bitrates->hw_value = 10;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  764  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  765  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  766  	return ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  767  }
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  768  

:::::: The code at line 699 was first introduced by commit
:::::: 64866e5da1eabd0c52ff45029b245f5465920031 iwlwifi: move iwl_nvm_check_version() into dvm

:::::: TO: Luca Coelho <luciano.coelho@intel.com>
:::::: CC: Luca Coelho <luciano.coelho@intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)
@ 2021-08-28  1:52 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-08-28  1:52 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
CC: Luca Coelho <luciano.coelho@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   64b4fc45bea6f4faa843d2f97ff51665280efee1
commit: 3b25f1aff503bddd7911b62bbbcacc114cd04b8f iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode
date:   9 months ago
:::::: branch date: 3 hours ago
:::::: commit date: 9 months ago
config: arc-randconfig-m031-20210827 (attached as .config)
compiler: arceb-elf-gcc (GCC) 11.2.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)

Old smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:1487 iwl_mvm_up() warn: missing error code 'ret'

vim +699 drivers/net/wireless/intel/iwlwifi/mvm/fw.c

8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  649  
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09  650  int iwl_run_init_mvm_ucode(struct iwl_mvm *mvm)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  651  {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  652  	struct iwl_notification_wait calib_wait;
6eb031d2fe2d9a drivers/net/wireless/iwlwifi/mvm/fw.c       Sara Sharon       2015-07-13  653  	static const u16 init_complete[] = {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  654  		INIT_COMPLETE_NOTIF,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  655  		CALIB_RES_NOTIF_PHY_DB
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  656  	};
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  657  	int ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  658  
7d6222e27013a1 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-06-08  659  	if (iwl_mvm_has_unified_ucode(mvm))
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  660  		return iwl_run_unified_mvm_ucode(mvm, true);
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  661  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  662  	lockdep_assert_held(&mvm->mutex);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  663  
940225628652b3 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-22  664  	mvm->rfkill_safe_init_done = false;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  665  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  666  	iwl_init_notification_wait(&mvm->notif_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  667  				   &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  668  				   init_complete,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  669  				   ARRAY_SIZE(init_complete),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  670  				   iwl_wait_phy_db_entry,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  671  				   mvm->phy_db);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  672  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  673  	/* Will also start the device */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  674  	ret = iwl_mvm_load_ucode_wait_alive(mvm, IWL_UCODE_INIT);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  675  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  676  		IWL_ERR(mvm, "Failed to start INIT ucode: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  677  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  678  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  679  
7d34a7d7da97bc drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2019-07-12  680  	if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) {
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  681  		ret = iwl_mvm_send_bt_init_conf(mvm);
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  682  		if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  683  			goto remove_notif;
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  684  	}
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  685  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  686  	/* Read the NVM only@driver load time, no need to do this twice */
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09 @687  	if (!mvm->nvm_data) {
5bd1d2c1ea9d0f drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-08-15  688  		ret = iwl_nvm_init(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  689  		if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  690  			IWL_ERR(mvm, "Failed to read NVM: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  691  			goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  692  		}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  693  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  694  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  695  	/* In case we read the NVM from external file, load it to the NIC */
e02a9d606d4f03 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2014-05-07  696  	if (mvm->nvm_file_name)
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  697  		iwl_mvm_load_nvm_to_nic(mvm);
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  698  
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16 @699  	WARN_ONCE(mvm->nvm_data->nvm_version < mvm->trans->cfg->nvm_ver,
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  700  		  "Too old NVM version (0x%0x, required = 0x%0x)",
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  701  		  mvm->nvm_data->nvm_version, mvm->trans->cfg->nvm_ver);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  702  
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  703  	/*
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  704  	 * abort after reading the nvm in case RF Kill is on, we will complete
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  705  	 * the init seq later when RF kill will switch to off
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  706  	 */
1a3fe0b2b6778b drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2015-09-30  707  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  708  		IWL_DEBUG_RF_KILL(mvm,
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  709  				  "jump over all phy activities due to RF kill\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  710  		goto remove_notif;
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  711  	}
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  712  
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  713  	mvm->rfkill_safe_init_done = true;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  714  
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  715  	/* Send TX valid antennas before triggering calibrations */
a0544272441585 drivers/net/wireless/iwlwifi/mvm/fw.c       Moshe Harel       2014-12-08  716  	ret = iwl_send_tx_ant_cfg(mvm, iwl_mvm_get_valid_tx_ant(mvm));
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  717  	if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  718  		goto remove_notif;
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  719  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  720  	ret = iwl_send_phy_cfg_cmd(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  721  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  722  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  723  			ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  724  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  725  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  726  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  727  	/*
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  728  	 * Some things may run in the background now, but we
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  729  	 * just wait for the calibration complete notification.
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  730  	 */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  731  	ret = iwl_wait_notification(&mvm->notif_wait, &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  732  				    MVM_UCODE_CALIB_TIMEOUT);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  733  	if (!ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  734  		goto out;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  735  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  736  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  737  		IWL_DEBUG_RF_KILL(mvm, "RFKILL while calibrating.\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  738  		ret = 0;
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  739  	} else {
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  740  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  741  			ret);
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  742  	}
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  743  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  744  	goto out;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  745  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  746  remove_notif:
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  747  	iwl_remove_notification(&mvm->notif_wait, &calib_wait);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  748  out:
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  749  	mvm->rfkill_safe_init_done = false;
a4082843674000 drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2013-11-24  750  	if (iwlmvm_mod_params.init_dbg && !mvm->nvm_data) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  751  		/* we want to debug INIT and we have no NVM - fake */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  752  		mvm->nvm_data = kzalloc(sizeof(struct iwl_nvm_data) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  753  					sizeof(struct ieee80211_channel) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  754  					sizeof(struct ieee80211_rate),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  755  					GFP_KERNEL);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  756  		if (!mvm->nvm_data)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  757  			return -ENOMEM;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  758  		mvm->nvm_data->bands[0].channels = mvm->nvm_data->channels;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  759  		mvm->nvm_data->bands[0].n_channels = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  760  		mvm->nvm_data->bands[0].n_bitrates = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  761  		mvm->nvm_data->bands[0].bitrates =
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  762  			(void *)mvm->nvm_data->channels + 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  763  		mvm->nvm_data->bands[0].bitrates->hw_value = 10;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  764  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  765  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  766  	return ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  767  }
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  768  

:::::: The code at line 699 was first introduced by commit
:::::: 64866e5da1eabd0c52ff45029b245f5465920031 iwlwifi: move iwl_nvm_check_version() into dvm

:::::: TO: Luca Coelho <luciano.coelho@intel.com>
:::::: CC: Luca Coelho <luciano.coelho@intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)
@ 2021-07-20  3:40 kernel test robot
  0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-07-20  3:40 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
CC: Luca Coelho <luciano.coelho@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2734d6c1b1a089fb593ef6a23d4b70903526fe0c
commit: 3b25f1aff503bddd7911b62bbbcacc114cd04b8f iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode
date:   7 months ago
:::::: branch date: 30 hours ago
:::::: commit date: 7 months ago
config: x86_64-randconfig-m001-20210720 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687)

Old smatch warnings:
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:1063 iwl_mvm_ppag_send_cmd() error: buffer overflow 'gain' 11 <= 21
drivers/net/wireless/intel/iwlwifi/mvm/fw.c:1487 iwl_mvm_up() warn: missing error code 'ret'

vim +699 drivers/net/wireless/intel/iwlwifi/mvm/fw.c

8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  649  
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09  650  int iwl_run_init_mvm_ucode(struct iwl_mvm *mvm)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  651  {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  652  	struct iwl_notification_wait calib_wait;
6eb031d2fe2d9a drivers/net/wireless/iwlwifi/mvm/fw.c       Sara Sharon       2015-07-13  653  	static const u16 init_complete[] = {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  654  		INIT_COMPLETE_NOTIF,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  655  		CALIB_RES_NOTIF_PHY_DB
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  656  	};
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  657  	int ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  658  
7d6222e27013a1 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-06-08  659  	if (iwl_mvm_has_unified_ucode(mvm))
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  660  		return iwl_run_unified_mvm_ucode(mvm, true);
8c5f47b15c5c15 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Johannes Berg     2017-02-20  661  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  662  	lockdep_assert_held(&mvm->mutex);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  663  
940225628652b3 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-22  664  	mvm->rfkill_safe_init_done = false;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  665  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  666  	iwl_init_notification_wait(&mvm->notif_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  667  				   &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  668  				   init_complete,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  669  				   ARRAY_SIZE(init_complete),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  670  				   iwl_wait_phy_db_entry,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  671  				   mvm->phy_db);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  672  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  673  	/* Will also start the device */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  674  	ret = iwl_mvm_load_ucode_wait_alive(mvm, IWL_UCODE_INIT);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  675  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  676  		IWL_ERR(mvm, "Failed to start INIT ucode: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  677  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  678  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  679  
7d34a7d7da97bc drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2019-07-12  680  	if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) {
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  681  		ret = iwl_mvm_send_bt_init_conf(mvm);
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  682  		if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  683  			goto remove_notif;
b3de3ef48aa3fe drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2017-05-29  684  	}
931d416049cdb6 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2013-01-17  685  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  686  	/* Read the NVM only@driver load time, no need to do this twice */
3b25f1aff503bd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2020-12-09 @687  	if (!mvm->nvm_data) {
5bd1d2c1ea9d0f drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-08-15  688  		ret = iwl_nvm_init(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  689  		if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  690  			IWL_ERR(mvm, "Failed to read NVM: %d\n", ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  691  			goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  692  		}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  693  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  694  
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  695  	/* In case we read the NVM from external file, load it to the NIC */
e02a9d606d4f03 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2014-05-07  696  	if (mvm->nvm_file_name)
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  697  		iwl_mvm_load_nvm_to_nic(mvm);
81a67e32c444f0 drivers/net/wireless/iwlwifi/mvm/fw.c       Eytan Lifshitz    2013-09-11  698  
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16 @699  	WARN_ONCE(mvm->nvm_data->nvm_version < mvm->trans->cfg->nvm_ver,
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  700  		  "Too old NVM version (0x%0x, required = 0x%0x)",
64866e5da1eabd drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2018-08-16  701  		  mvm->nvm_data->nvm_version, mvm->trans->cfg->nvm_ver);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  702  
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  703  	/*
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  704  	 * abort after reading the nvm in case RF Kill is on, we will complete
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  705  	 * the init seq later when RF kill will switch to off
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  706  	 */
1a3fe0b2b6778b drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2015-09-30  707  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  708  		IWL_DEBUG_RF_KILL(mvm,
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  709  				  "jump over all phy activities due to RF kill\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  710  		goto remove_notif;
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  711  	}
4f59334bb4a626 drivers/net/wireless/iwlwifi/mvm/fw.c       Eran Harary       2013-05-13  712  
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  713  	mvm->rfkill_safe_init_done = true;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  714  
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  715  	/* Send TX valid antennas before triggering calibrations */
a0544272441585 drivers/net/wireless/iwlwifi/mvm/fw.c       Moshe Harel       2014-12-08  716  	ret = iwl_send_tx_ant_cfg(mvm, iwl_mvm_get_valid_tx_ant(mvm));
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  717  	if (ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  718  		goto remove_notif;
e07cbb536acb24 drivers/net/wireless/iwlwifi/mvm/fw.c       Dor Shaish        2013-02-27  719  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  720  	ret = iwl_send_phy_cfg_cmd(mvm);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  721  	if (ret) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  722  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  723  			ret);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  724  		goto remove_notif;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  725  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  726  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  727  	/*
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  728  	 * Some things may run in the background now, but we
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  729  	 * just wait for the calibration complete notification.
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  730  	 */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  731  	ret = iwl_wait_notification(&mvm->notif_wait, &calib_wait,
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  732  				    MVM_UCODE_CALIB_TIMEOUT);
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  733  	if (!ret)
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  734  		goto out;
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  735  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  736  	if (iwl_mvm_is_radio_hw_killed(mvm)) {
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  737  		IWL_DEBUG_RF_KILL(mvm, "RFKILL while calibrating.\n");
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  738  		ret = 0;
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  739  	} else {
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  740  		IWL_ERR(mvm, "Failed to run INIT calibrations: %d\n",
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  741  			ret);
31b8b343e019e0 drivers/net/wireless/iwlwifi/mvm/fw.c       Emmanuel Grumbach 2014-11-02  742  	}
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  743  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  744  	goto out;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  745  
00e0c6c8fe8833 drivers/net/wireless/intel/iwlwifi/mvm/fw.c Luca Coelho       2017-07-24  746  remove_notif:
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  747  	iwl_remove_notification(&mvm->notif_wait, &calib_wait);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  748  out:
b3500b472c880b drivers/net/wireless/intel/iwlwifi/mvm/fw.c Emmanuel Grumbach 2019-05-29  749  	mvm->rfkill_safe_init_done = false;
a4082843674000 drivers/net/wireless/iwlwifi/mvm/fw.c       Arik Nemtsov      2013-11-24  750  	if (iwlmvm_mod_params.init_dbg && !mvm->nvm_data) {
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  751  		/* we want to debug INIT and we have no NVM - fake */
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  752  		mvm->nvm_data = kzalloc(sizeof(struct iwl_nvm_data) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  753  					sizeof(struct ieee80211_channel) +
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  754  					sizeof(struct ieee80211_rate),
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  755  					GFP_KERNEL);
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  756  		if (!mvm->nvm_data)
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  757  			return -ENOMEM;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  758  		mvm->nvm_data->bands[0].channels = mvm->nvm_data->channels;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  759  		mvm->nvm_data->bands[0].n_channels = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  760  		mvm->nvm_data->bands[0].n_bitrates = 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  761  		mvm->nvm_data->bands[0].bitrates =
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  762  			(void *)mvm->nvm_data->channels + 1;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  763  		mvm->nvm_data->bands[0].bitrates->hw_value = 10;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  764  	}
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  765  
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  766  	return ret;
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  767  }
8ca151b568b67a drivers/net/wireless/iwlwifi/mvm/fw.c       Johannes Berg     2013-01-24  768  

:::::: The code at line 699 was first introduced by commit
:::::: 64866e5da1eabd0c52ff45029b245f5465920031 iwlwifi: move iwl_nvm_check_version() into dvm

:::::: TO: Luca Coelho <luciano.coelho@intel.com>
:::::: CC: Luca Coelho <luciano.coelho@intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-11-19 20:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-04 20:33 drivers/net/wireless/intel/iwlwifi/mvm/fw.c:699 iwl_run_init_mvm_ucode() error: we previously assumed 'mvm->nvm_data' could be null (see line 687) kernel test robot
2021-07-20  3:40 kernel test robot
2021-08-28  1:52 kernel test robot
2021-11-19 20:29 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.