tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   8119c4332d253660e0a6b8748fe0749961cfbc97
commit: 868fd970e187d39c586565c875837e530c6f7e1b staging: wfx: improve 
robustness of wfx_get_hw_rate()
date:   7 days ago
config: powerpc64-randconfig-r001-20201016 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 
5fbab4025eb57b12f2842ab188ff07a110708e1d)
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 powerpc64 cross compiling tool for clang build
        # apt-get install binutils-powerpc64-linux-gnu
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=868fd970e187d39c586565c875837e530c6f7e1b
        git remote add linus 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 868fd970e187d39c586565c875837e530c6f7e1b
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross 
ARCH=powerpc64 

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

All warnings (new ones prefixed by >>):

>> drivers/staging/wfx/data_tx.c:34:19: warning: variable 'band' is 
>> uninitialized when used here [-Wuninitialized]
           if (rate->idx >= band->n_bitrates) {
                            ^~~~
   include/linux/compiler.h:56:47: note: expanded from macro 'if'
   #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
                                                 ^~~~
   include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
   #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : 
__trace_if_value(cond))
                                                      ^~~~
   drivers/staging/wfx/data_tx.c:23:39: note: initialize the variable 'band' to 
silence this warning
           struct ieee80211_supported_band *band;
                                                ^
                                                 = NULL
   1 warning generated.

vim +/band +34 drivers/staging/wfx/data_tx.c

    19  
    20  static int wfx_get_hw_rate(struct wfx_dev *wdev,
    21                             const struct ieee80211_tx_rate *rate)
    22  {
    23          struct ieee80211_supported_band *band;
    24  
    25          if (rate->idx < 0)
    26                  return -1;
    27          if (rate->flags & IEEE80211_TX_RC_MCS) {
    28                  if (rate->idx > 7) {
    29                          WARN(1, "wrong rate->idx value: %d", rate->idx);
    30                          return -1;
    31                  }
    32                  return rate->idx + 14;
    33          }
  > 34          if (rate->idx >= band->n_bitrates) {
    35                  WARN(1, "wrong rate->idx value: %d", rate->idx);
    36                  return -1;
    37          }
    38          // WFx only support 2GHz, else band information should be 
retrieved
    39          // from ieee80211_tx_info
    40          band = wdev->hw->wiphy->bands[NL80211_BAND_2GHZ];
    41          return band->bitrates[rate->idx].hw_value;
    42  }
    43  

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

Attachment: .config.gz
Description: application/gzip

Reply via email to