CC: kbuild-...@lists.01.org
CC: linux-ker...@vger.kernel.org
TO: Luca Coelho <luciano.coe...@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   917bbdb107f8767cb78f24e7d6725a2f93b9effe
commit: 9dad325f9d57508b154f0bebbc341a8528e5729c iwlwifi: support loading the 
reduced power table from UEFI
date:   8 months ago
:::::: branch date: 4 hours ago
:::::: commit date: 8 months ago
config: ia64-randconfig-m031-20220220 
(https://download.01.org/0day-ci/archive/20220223/202202230642.ysscraam-...@intel.com/config)
compiler: ia64-linux-gcc (GCC) 11.2.0

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

smatch warnings:
drivers/net/wireless/intel/iwlwifi/fw/pnvm.c:332 iwl_pnvm_load() error: 
uninitialized symbol 'len'.

vim +/len +332 drivers/net/wireless/intel/iwlwifi/fw/pnvm.c

cdda18fbbefafc6 Luca Coelho   2021-02-10  255  
cdda18fbbefafc6 Luca Coelho   2021-02-10  256  int iwl_pnvm_load(struct 
iwl_trans *trans,
cdda18fbbefafc6 Luca Coelho   2021-02-10  257             struct 
iwl_notif_wait_data *notif_wait)
cdda18fbbefafc6 Luca Coelho   2021-02-10  258  {
cdda18fbbefafc6 Luca Coelho   2021-02-10  259   u8 *data;
cdda18fbbefafc6 Luca Coelho   2021-02-10  260   size_t len;
84c3c9952afbf7d Luca Coelho   2021-06-21  261   struct pnvm_sku_package 
*package;
cdda18fbbefafc6 Luca Coelho   2021-02-10  262   struct iwl_notification_wait 
pnvm_wait;
cdda18fbbefafc6 Luca Coelho   2021-02-10  263   static const u16 ntf_cmds[] = { 
WIDE_ID(REGULATORY_AND_NVM_GROUP,
cdda18fbbefafc6 Luca Coelho   2021-02-10  264                                   
        PNVM_INIT_COMPLETE_NTFY) };
cdda18fbbefafc6 Luca Coelho   2021-02-10  265   int ret;
cdda18fbbefafc6 Luca Coelho   2021-02-10  266  
cdda18fbbefafc6 Luca Coelho   2021-02-10  267   /* if the SKU_ID is empty, 
there's nothing to do */
cdda18fbbefafc6 Luca Coelho   2021-02-10  268   if (!trans->sku_id[0] && 
!trans->sku_id[1] && !trans->sku_id[2])
cdda18fbbefafc6 Luca Coelho   2021-02-10  269           return 0;
cdda18fbbefafc6 Luca Coelho   2021-02-10  270  
cdda18fbbefafc6 Luca Coelho   2021-02-10  271   /*
cdda18fbbefafc6 Luca Coelho   2021-02-10  272    * If we already loaded (or 
tried to load) it before, we just
cdda18fbbefafc6 Luca Coelho   2021-02-10  273    * need to set it again.
cdda18fbbefafc6 Luca Coelho   2021-02-10  274    */
cdda18fbbefafc6 Luca Coelho   2021-02-10  275   if (trans->pnvm_loaded) {
cdda18fbbefafc6 Luca Coelho   2021-02-10  276           ret = 
iwl_trans_set_pnvm(trans, NULL, 0);
cdda18fbbefafc6 Luca Coelho   2021-02-10  277           if (ret)
cdda18fbbefafc6 Luca Coelho   2021-02-10  278                   return ret;
cdda18fbbefafc6 Luca Coelho   2021-02-10  279           goto skip_parse;
cdda18fbbefafc6 Luca Coelho   2021-02-10  280   }
cdda18fbbefafc6 Luca Coelho   2021-02-10  281  
a1a6a4cf49eceb3 Luca Coelho   2021-02-11  282   /* First attempt to get the 
PNVM from BIOS */
84c3c9952afbf7d Luca Coelho   2021-06-21  283   package = 
iwl_uefi_get_pnvm(trans, &len);
84c3c9952afbf7d Luca Coelho   2021-06-21  284   if (!IS_ERR_OR_NULL(package)) {
84c3c9952afbf7d Luca Coelho   2021-06-21  285           data = 
kmemdup(package->data, len, GFP_KERNEL);
84c3c9952afbf7d Luca Coelho   2021-06-21  286  
84c3c9952afbf7d Luca Coelho   2021-06-21  287           /* free package 
regardless of whether kmemdup succeeded */
84c3c9952afbf7d Luca Coelho   2021-06-21  288           kfree(package);
84c3c9952afbf7d Luca Coelho   2021-06-21  289  
84c3c9952afbf7d Luca Coelho   2021-06-21  290           if (data) {
84c3c9952afbf7d Luca Coelho   2021-06-21  291                   /* we need only 
the data size */
84c3c9952afbf7d Luca Coelho   2021-06-21  292                   len -= 
sizeof(*package);
a1a6a4cf49eceb3 Luca Coelho   2021-02-11  293                   goto parse;
84c3c9952afbf7d Luca Coelho   2021-06-21  294           }
84c3c9952afbf7d Luca Coelho   2021-06-21  295   }
a1a6a4cf49eceb3 Luca Coelho   2021-02-11  296  
a1a6a4cf49eceb3 Luca Coelho   2021-02-11  297   /* If it's not available, try 
from the filesystem */
cdda18fbbefafc6 Luca Coelho   2021-02-10  298   ret = 
iwl_pnvm_get_from_fs(trans, &data, &len);
cdda18fbbefafc6 Luca Coelho   2021-02-10  299   if (ret) {
82a08d0cd7b503b Johannes Berg 2021-01-15  300           /*
82a08d0cd7b503b Johannes Berg 2021-01-15  301            * Pretend we've loaded 
it - at least we've tried and
82a08d0cd7b503b Johannes Berg 2021-01-15  302            * couldn't load it at 
all, so there's no point in
82a08d0cd7b503b Johannes Berg 2021-01-15  303            * trying again over 
and over.
82a08d0cd7b503b Johannes Berg 2021-01-15  304            */
82a08d0cd7b503b Johannes Berg 2021-01-15  305           trans->pnvm_loaded = 
true;
6972592850c00e5 Luca Coelho   2020-10-08  306  
cdda18fbbefafc6 Luca Coelho   2021-02-10  307           goto skip_parse;
1c58bed4b7f7551 Johannes Berg 2021-01-15  308   }
b3e4c0f34c1752c Luca Coelho   2020-10-08  309  
a1a6a4cf49eceb3 Luca Coelho   2021-02-11  310  parse:
cdda18fbbefafc6 Luca Coelho   2021-02-10  311   iwl_pnvm_parse(trans, data, 
len);
cdda18fbbefafc6 Luca Coelho   2021-02-10  312  
cdda18fbbefafc6 Luca Coelho   2021-02-10  313   kfree(data);
cdda18fbbefafc6 Luca Coelho   2021-02-10  314  
cdda18fbbefafc6 Luca Coelho   2021-02-10  315  skip_parse:
9dad325f9d57508 Luca Coelho   2021-06-21  316   data = NULL;
9dad325f9d57508 Luca Coelho   2021-06-21  317   /* now try to get the reduce 
power table, if not loaded yet */
9dad325f9d57508 Luca Coelho   2021-06-21  318   if 
(!trans->reduce_power_loaded) {
9dad325f9d57508 Luca Coelho   2021-06-21  319           data = 
iwl_uefi_get_reduced_power(trans, &len);
9dad325f9d57508 Luca Coelho   2021-06-21  320           if 
(IS_ERR_OR_NULL(data)) {
9dad325f9d57508 Luca Coelho   2021-06-21  321                   /*
9dad325f9d57508 Luca Coelho   2021-06-21  322                    * Pretend 
we've loaded it - at least we've tried and
9dad325f9d57508 Luca Coelho   2021-06-21  323                    * couldn't 
load it at all, so there's no point in
9dad325f9d57508 Luca Coelho   2021-06-21  324                    * trying again 
over and over.
9dad325f9d57508 Luca Coelho   2021-06-21  325                    */
9dad325f9d57508 Luca Coelho   2021-06-21  326                   
trans->reduce_power_loaded = true;
9dad325f9d57508 Luca Coelho   2021-06-21  327  
9dad325f9d57508 Luca Coelho   2021-06-21  328                   goto 
skip_reduce_power;
9dad325f9d57508 Luca Coelho   2021-06-21  329           }
9dad325f9d57508 Luca Coelho   2021-06-21  330   }
9dad325f9d57508 Luca Coelho   2021-06-21  331  
9dad325f9d57508 Luca Coelho   2021-06-21 @332   ret = 
iwl_trans_set_reduce_power(trans, data, len);

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org

Reply via email to