lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Tue, 18 Jan 2022 04:57:32 +0800
From:   kernel test robot <lkp@...el.com>
To:     Manikanta Pubbisetty <quic_mpubbise@...cinc.com>
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        GNU/Weeb Mailing List <gwml@...weeb.org>,
        linux-kernel@...r.kernel.org, Kalle Valo <quic_kvalo@...cinc.com>
Subject: [ammarfaizi2-block:kvalo/ath/pending 283/294]
 drivers/net/wireless/ath/ath11k/pci_cmn.c:185:10: warning: variable 'val' is
 used uninitialized whenever 'if' condition is false

tree:   https://github.com/ammarfaizi2/linux-block kvalo/ath/pending
head:   8415824bf3ea5c313f15b902497cd2834c01e78e
commit: f38b44f68cd13a37d90c62863250c16b951e202e [283/294] ath11k: Add register access logic for WCN6750
config: arm64-randconfig-r011-20220116 (https://download.01.org/0day-ci/archive/20220118/202201180419.pxOIAhwJ-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
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 arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://github.com/ammarfaizi2/linux-block/commit/f38b44f68cd13a37d90c62863250c16b951e202e
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block kvalo/ath/pending
        git checkout f38b44f68cd13a37d90c62863250c16b951e202e
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/net/wireless/ath/ath11k/

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

All warnings (new ones prefixed by >>):

>> drivers/net/wireless/ath/ath11k/pci_cmn.c:185:10: warning: variable 'val' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
                   } else if (ab->bus_params.ops.window_read32) {
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:56:28: note: expanded from macro 'if'
   #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
   #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/net/wireless/ath/ath11k/pci_cmn.c:195:9: note: uninitialized use occurs here
           return val;
                  ^~~
   drivers/net/wireless/ath/ath11k/pci_cmn.c:185:10: note: remove the 'if' if its condition is always true
                   } else if (ab->bus_params.ops.window_read32) {
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:56:23: note: expanded from macro 'if'
   #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
                         ^
   drivers/net/wireless/ath/ath11k/pci_cmn.c:168:9: note: initialize the variable 'val' to silence this warning
           u32 val, window_start;
                  ^
                   = 0
   1 warning generated.


vim +185 drivers/net/wireless/ath/ath11k/pci_cmn.c

   165	
   166	u32 ath11k_pci_read32(struct ath11k_base *ab, u32 offset)
   167	{
   168		u32 val, window_start;
   169	
   170		/* for offset beyond BAR + 4K - 32, may
   171		 * need to wakeup the device to access.
   172		 */
   173		if (test_bit(ATH11K_FLAG_DEVICE_INIT_DONE, &ab->dev_flags) &&
   174		    offset >= ATH11K_PCI_ACCESS_ALWAYS_OFF &&
   175		    ab->bus_params.ops.wakeup)
   176			ab->bus_params.ops.wakeup(ab);
   177	
   178		if (offset < ATH11K_PCI_WINDOW_START) {
   179			val = ioread32(ab->mem + offset);
   180		} else {
   181			if (ab->bus_params.static_window_map) {
   182				window_start = ath11k_pci_get_window_start(ab, offset);
   183				val = ioread32(ab->mem + window_start +
   184					       (offset & ATH11K_PCI_WINDOW_RANGE_MASK));
 > 185			} else if (ab->bus_params.ops.window_read32) {
   186				val = ab->bus_params.ops.window_read32(ab, offset);
   187			}
   188		}
   189	
   190		if (test_bit(ATH11K_FLAG_DEVICE_INIT_DONE, &ab->dev_flags) &&
   191		    offset >= ATH11K_PCI_ACCESS_ALWAYS_OFF &&
   192		    ab->bus_params.ops.release)
   193			ab->bus_params.ops.release(ab);
   194	
   195		return val;
   196	}
   197	

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

Powered by blists - more mailing lists